Prestashop:从 sub-category 页面获取 parent 类别信息

Prestashop: Get parent category informations from the sub-category page

我在 prestashop 上建立了一个基于经典主题的 child 主题的网站。 根据我的需要,我有一个主要类别的页面,其中有一个英雄部分,我在其中显示主要类别名称、类别的封面图片、sub-categories 和描述。 (见附图)

hero section

现在,当我转到 sub-category 页面时,我需要像这样保留这一部分。保留标题、图片、sub-categories 等。只是内容必须更改。

现在我的代码显示这个英雄部分,位于 layout-left-column.tpl(在所有主要内容之前和 header 之后):

{block name="hero_content"}
    {if Tools::getValue('id_category') == 11 || 19 || 20 || 21 || 22 || 23}
        <div class="category_hero" style="background-image: url('{$urls.img_url}categories/volailles_image_cover.jpg')">
            {if $listing.pagination.items_shown_from == 1}
                <div class="category_hero_title">
                    <h1 class="h1">{$category.name}</h1>
                </div>
                <div class="category_hero_subcategories">
                    {include file='catalog/_partials/subcategories.tpl'}
                </div>
                <div class="category_hero_description">
                    {$category.description nofilter}
                </div>
            {/if}
        </div>
    {/if}
{/block}

但正如我预期的那样,当我转到 sub-category 时,此部分会随着此 sub-category 的信息而变化。

我怎样才能让这个部分包含 parent 类别信息?

Ps:我尝试调用函数 Category::getParentsCategories(),但没有成功。我正在使用 Prestashop 1.7.8.3

谢谢你的时间。

[更新]问题已解决

我终于解决了这个主题的问题: Prestashop subcategory parent

并进行改编:

在我创建函数的自定义模块 class 中:

public function hookDisplayHeaderCategory($params) {
        if (isset($params['current_category']) && !empty($params['current_category'])) {
            $id_lang = $this->context->language->id;
            $parent_category = new Category((int) $params['current_category']);
            $sub_categories = Category::getChildren((int) $params['current_category'], $id_lang);
            if (Validate::isLoadedObject($parent_category)) {
                $this->context->smarty->assign(array(
                    "parent_category" => $parent_category,
                    "parent_category_name"   =>  $parent_category->name,
                    "parent_category_description"   => $parent_category->description,
                    "sub_categories"    =>  $sub_categories,
                ));
            }
        }

        return $this->display(__FILE__, 'category_hero.tpl');
    }

在此模块中创建一个包含英雄部分的视图:

<div class="category_hero" style="background-image: url('{$urls.img_url}categories/volailles_image_cover.jpg')">
        <div class="category_hero_title">
            <h1 class="h1">{$parent_category_name[1]}</h1>
        </div>
        <div class="category_hero_subcategories">
            {include file='catalog/_partials/subcategories.tpl' subcategories=$sub_categories}
        </div>
        <div class="category_hero_description">
            {$parent_category_description[1] nofilter}
        </div>
</div>

如果能帮助到相同情况的人。