Podczas prac nad sklepem na PrestaShop napotkanłem na problem opisów meta title dla bloku kategorii po lewej stronie.  Domyślnie presta pokazuje tam początkowe 215 znaków pełnego opisu kategorii z usuniętymi znakami HTML. Udało mi się zastąpić takie działanie skryptu na takie, które zaczytuje z bazy opis meta title przeznaczony dla tegj kategorii.

Cała modyfikacja opiera się na edycji 2 plików modułu “blockcategories” (blockcategories.php i category-tree-branch.tpl). Ten drugi plik może występować w paru lokalizacjach:

  • modules/blockcategories
  • themes/default-bootstrap
  • themes/default-bootstrap/modules/blockcategories

Należy upewnić się czy edytujemy ten właściwy. Do rzeczy! W pliku /modules/blockcategories/blockcategories.php, po linii ~126 w funkcji getTree() kod

if (isset($resultIds[$id_category]))
		{
			$link = $this->context->link->getCategoryLink($id_category, $resultIds[$id_category]['link_rewrite']);
			$name = $resultIds[$id_category]['name'];
			$desc = $resultIds[$id_category]['description'];
		}
else
		$link = $name = $desc = '';

		$return = array(
			'id' => $id_category,
			'link' => $link,
			'name' => $name,
			'desc'=> $desc,
			'children' => $children 
		);
		return $return;

zamieniamy na:

if (isset($resultIds[$id_category]))
		{
			$link = $this->context->link->getCategoryLink($id_category, $resultIds[$id_category]['link_rewrite']);
			$name = $resultIds[$id_category]['name'];
			$desc = $resultIds[$id_category]['description'];
			$meta = ("" == $resultIds[$id_category]['meta_title']) ? $resultIds[$id_category]['name'] : $resultIds[$id_category]['meta_title'];
		}
else
	$link = $name = $desc = $meta = '';

	$return = array(
		'id' => $id_category,
		'link' => $link,
		'name' => $name,
		'desc'=> $desc,
		'children' => $children, 
		'meta' => $meta  
	);
	return $return;

w tym samym pliku po linii ~187 w funkcji hookLeftColumn() zamieniamy linijkę

SELECT c.id_parent, c.id_category, cl.name, cl.description, cl.link_rewrite

na

SELECT c.id_parent, c.id_category, cl.name, cl.description, cl.link_rewrite, cl.meta_title

a w pliku category-tree-branch.tpl kod:

zamieniamy na

Powodzenia!