Prestashop 1.7 Названия хлебных крошек

#prestashop-1.7 #breadcrumbs

#prestashop-1.7 #хлебные крошки

Вопрос:

Я пытаюсь отредактировать хлебные крошки в пользовательской теме Prestashop, которую я создаю на основе классической темы версии 1.7.6.8. На веб-сайте, над которым я работаю, Prestashop находится в папке по адресу mydomain.com/shop , поэтому я хотел бы, чтобы панировочные сухари читали:

Главная страница / Магазин / Товары

Где главная ссылка на mydomain.com и Магазин отправляется в mydomain.com/shop .

Я добавил ссылку для Home в mydomain.com хорошо. Теперь я хочу изменить хлебные крошки Prestashop по умолчанию, потому что в настоящее время они читаются:

Главная / Главная / Товары

Второй дом переходит по правой ссылке (mydomain.com/shop ) но я не знаю, как изменить его, чтобы читать «Магазин» вместо «Дом«. Я нашел способ отредактировать контроллеры, чтобы удалить вторую домашнюю ссылку, это позволило бы мне просто добавить новую ссылку с магазином рядом с новой домашней ссылкой, которую я уже добавил, однако это не кажется очень элегантным решением и потребует изменения сценария на множествестраницы. Наверняка должен быть лучший способ?

Спасибо за любые отзывы.

Редактировать: вот код из controllers/productController.php

     public function getBreadcrumbLinks()
{
    /*$breadcrumb = parent::getBreadcrumbLinks();*/

    $categoryDefault = new Category($this->product->id_category_default, $this->context->language->id);

    foreach ($categoryDefault->getAllParents() as $category) {
        if ($category->id_parent != 0 amp;amp; !$category->is_root_category) {
            $breadcrumb['links'][] = $this->getCategoryPath($category);
        }
    }

    if (!$categoryDefault->is_root_category) {
        $breadcrumb['links'][] = $this->getCategoryPath($categoryDefault);
    }

    /*$breadcrumb['links'][] = array(
        'title' => $this->product->name,
        'url' => $this->context->link->getProductLink($this->product, null, null, null, null, null, (int) $this->getIdProductAttributeByRequest()),
    );*/

    return $breadcrumb;
}
  

Вы можете увидеть два раздела, которые я удалил, первый удаляет ссылку «Home» по умолчанию, второй удаляет ссылку с названием продукта, которое мне не нужно. Очевидно, что код идет куда-то, чтобы найти ссылку и сопоставить ее с именем, я просто не знаю, где.

Ответ №1:

Я нашел ответ: вы можете изменить тег с «Home» на «Shop», изменив файлы в shoproot /var / cache / prod / translations / catalogue .[ваш язык].php

Есть несколько мест, где в файле появляется «Home», для изменения макета это примерно строка 6370 в версии en-gb.

РЕДАКТИРОВАТЬ: Вот лучший вариант, с панели управления Prestashop вы можете перейти к международным, переводам, изменить переводы. В раскрывающихся списках выберите перевод темы, тему, над которой вы работаете, язык, нажмите изменить, найдите «главная», а затем укажите перевод как «магазин». Это избавит вас от необходимости вносить изменения в кэшированный файл, если вам нужно очистить кэш с панели управления.