Не удается переопределить list.phtml в Magento 2.1.6


Я пытаюсь переопределить Magento_Catalog list.phtml в magento 2.1.6, и это не работает. У меня работает тема, а другие шаблоны и переопределения макетов работают правильно.

Мой пользовательский список.phtml находится здесь:

app\design\frontend\vendor\theme\Magento_Catalog\templates\product\list.phtml

Если я удалю "категория.продукт.список" в моем"catalog_category_view.xml "в

app\design\frontend\vendor\theme\Magento_Catalog\layout

С этой функцией:

<referenceBlock name="category.products.list" remove="true" />

Сетка продуктов исчезает.

Я также пытался отключить модули, но это не работает.

Я выполняю тесты, изменяющие список.phtml строка 68 класс ссылки:

    <a class="product-item-link test"

И в моей сетке это изменение не отображается.

Author: Eduardo Pedrosa, 2017-05-31

3 answers

Поскольку при выполнении ссылки на удаление она работает, я предполагаю, что вы используете текущую активную тему.

Убедитесь, что вы находитесь в режиме разработчика, а затем я бы попытался очистить pub/static и var/view_preprocessed и повторно развернуть статический контент. Если это не сработает, попробуйте расширить макет. В app\design\frontend\vendor\theme\Magento_Catalog\layout\catalog_category_view.xml

......
<referenceContainer name="content">
        <block class="Magento\Catalog\Block\Category\View" name="category.products" template="Magento_Catalog::category/products.phtml">
            <block class="Vendor\Module\Block\Product\ListProduct" name="category.products.list" as="product_list" template="Magento_Catalog::product/list.phtml">
...... rest of file depending on what you are extending

Мне пришлось продлить ListProduct.php по разным причинам, поэтому я не знаю, работает ли это по умолчанию, но это работает для меня.

 1
Author: Alexandru Melinescu, 2017-05-31 21:51:54

Чтобы переопределить шаблон, вам нужно всего лишь переместить его в свою тему, написанный вами XML удаляет шаблон, чтобы он больше не отображался.

Удалите строку с remove="true" и очистите кэш, и Magento должен использовать ваш шаблон.

 0
Author: Ben Crook, 2017-05-31 16:42:54

Если вы удалите блок, вы не сможете использовать тот же блок для пользовательского файла списка.

<referenceBlock name="category.products.list" remove="true" />

Таким образом, вы должны использовать этот макет с вашим пользовательским именем блока и пользовательским списком.phtml

    <referenceContainer name="content">
        <block class="Magento\Catalog\Block\Category\View" name="category.products" template="Magento_Catalog::category/products.phtml">
            <block class="Magento\Catalog\Block\Product\ListProduct" name="category.products.list.custom" as="product_list" template="Magento_Catalog::product/custom-catalog-list.phtml">
                <container name="category.product.list.additional" as="additional" />
                <block class="Magento\Framework\View\Element\RendererList" name="category.product.type.details.renderers" as="details.renderers">
                    <block class="Magento\Framework\View\Element\Template" name="category.product.type.details.renderers.default" as="default"/>
                </block>
                <block class="Magento\Catalog\Block\Product\ProductList\Item\Container" name="category.product.addto" as="addto">
                    <block class="Magento\Catalog\Block\Product\ProductList\Item\AddTo\Compare"
                           name="category.product.addto.compare" as="compare"
                           template="Magento_Catalog::product/list/addto/compare.phtml"/>
                </block>
                <block class="Magento\Catalog\Block\Product\ProductList\Toolbar" name="product_list_toolbar" template="Magento_Catalog::product/list/toolbar.phtml">
                    <block class="Magento\Theme\Block\Html\Pager" name="product_list_toolbar_pager"/>
                </block>
                <action method="setToolbarBlockName">
                    <argument name="name" xsi:type="string">product_list_toolbar</argument>
                </action>
            </block>
        </block>
    </referenceContainer>
 0
Author: Ubed Arab, 2018-05-29 21:05:11