Для этого необходимо создать расширение. Пожалуйста, проверьте мой код
- Создать папку в приложении / code / Magenest
- Создать подпапку в приложении / code / Magenest / Sample
- Теперь создайте файл registration.php со следующим кодом
</p>
<pre><code><?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Magenest_Sample',
__DIR__
);
Создайте папку
etc в приложении / code / Magenest / Sample / Создайте файл module.xml в папке etc с помощью следующего кода
</p>
<pre><code><?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Magenest_Sample" setup_version="2.0.0">
</module></config>
Создать папку в
веб-интерфейсе в приложении / code / Magenest / Sample / etc / Создать файл di.xml в приложении / code / Magenest / Sample / etc / со следующимикод
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<preference for="Magento\Catalog\Model\Product" type="Magenest\Sample\Model\Product"/>
</config>
</code>
Теперь создайте папку
Model в приложении / Magenest / Sample / Создайте Product.php в папке Model со следующим кодом
<?php
namespace Magenest\Sample\Model;
class Product extends \Magento\Catalog\Model\Product
{
public function getName()
{
$objectManager = \Magento\Framework\App\ObjectManager::getInstance();
$product = $objectManager->create('Magento\Catalog\Model\Product')->load($this->_getData('entity_id'));
$myattribute = $product->getResource()->getAttribute('putyourcustomattribute')->getFrontend()->getValue($product);
$changeNamebyPreference = $this->_getData('name') . ' '. $myattribute;
return $changeNamebyPreference;
}
}
</code>