Как добавить динамическую метку В Magento 2?
Я хочу добавить динамическую метку в панель мониторинга клиентов (имя метки устанавливается динамически)
<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="2columns-left" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
<update handle="customer_account"/>
<body>
<referenceBlock name="customer_account_navigation">
<block class="Magento\Framework\View\Element\Html\Link\Current" name="customer-account-navigation-custom-product" ifconfig="mconnect_csproduct/cs_customer/display_on_dashboard">
<arguments>
<argument name="path" xsi:type="string">vender/customer/products/</argument>
<argument name="label" xsi:type="string" translate="true">dynamic label add</argument>
</arguments>
</block>
</referenceBlock>
</body>
</page>
6
Author: Prince Patel, 2017-08-08
1 answers
Вы можете использовать помощник для получения динамической метки. Добавьте помощника в <argument/>
и chnage xsi:type="string"
, чтобы xsi:type="helper"
<argument name="label" xsi:type="helper" helper="Vendor\Module\Helper\Data::getLabel"></argument>
В своем помощнике вы можете получить динамическую метку, подобную этой
<?php
namespace Vendor\Module\Helper;
class Data extends \Magento\Framework\App\Helper\AbstractHelper
{
public function getLabel()
{
//Your logic here
$label = "Dynamic Label based on your logic";
return $label;
}
}
Я использую этот же способ для динамического изменения логотипа. Обратитесь к этому ответу для получения дополнительной информации: https://magento.stackexchange.com/a/176309/35758
Если вы хотите изменить весь HTML-код ссылки навигации, обратитесь к этому ответу: https://magento.stackexchange.com/a/190842/35758
7
Author: Prince Patel, 2018-08-12 06:24:43