Prestashop 1.7面包屑标题

问题描述

我正在尝试根据1.7.6.8版本中的Classic主题编辑自定义的Prestashop主题中的面包屑。我正在工作的网站上的Prestashop位于mydomain.com/shop的文件夹中,所以我希望面包屑阅读:

首页/商店/产品

首页链接到mydomain.com, Shop 链接到mydomain.com/shop。

我已经将Home的链接添加到mydomain.com了。现在,我想更改认的Prestashop面包屑,因为它当前显示为:

首页/主页/产品

第二个首页转到正确的链接(mydomain.com/shop),但我不知道如何将其更改为读取 Shop 而不是 Home 。我找到了一种编辑控制器的方法,以便删除第二个家庭链接,这将使我可以在已经添加的新家庭链接旁边添加一个带有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 && !$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,(int) $this->getIdProductAttributeByRequest()),);*/

    return $breadcrumb;
}

您可以看到我已删除的两个部分,第一部分删除认的“主页”链接,第二部分删除了具有我不需要的产品名称链接。显然,代码会去某个地方查找链接并将其与名称匹配,我只是不知道在哪里。

解决方法

我找到了答案,您可以通过更改shoproot / var / cache / prod / translations / catalogue中的文件,将标签从“首页”更改为“商店”。[您的语言] .php

在很多地方,文件中都显示“主页”,以更改面包屑,该面包屑在en-gb版本的6370行附近。

编辑:这是一个更好的选择,从Prestashop控制面板中,您可以转到国际语言,翻译,修改翻译。从下拉列表中选择主题翻译,您正在处理的主题,语言,单击“修改”,搜索“ home”,然后将翻译设置为“ shop”。如果您必须从控制面板中清除缓存,则不必再对缓存文件进行更改。