Magento 1.x
(пример magento 2 представлен ниже)
sectionName , groupName и fieldName присутствуют в файле etc / system.xml модуля.
Синтаксис PHP:
Mage::getStoreConfig('sectionName/groupName/fieldName');
В редакторе администратора, например, на странице CMS или в статическом блоке; описание / краткое описание каталожной категории, каталожной продукции и т. д.
{{config path="sectionName/groupName/fieldName"}}
Чтобы подход «Внутри редактора» работал, значение поля должно быть пропущено через фильтр для анализа {{...}} содержимого. Magento сделает это из коробки и описания продукта, а также для страниц CMS и статических блоков. Однако, если вы выводите содержимое в свой собственный сценарий представления и хотите, чтобы эти переменные были проанализированы, вы можете сделать это следующим образом:
<?php
$example = Mage::getModel('identifier/name')->load(1);
$filter = Mage::getModel('cms/template_filter');
echo $filter->filter($example->getData('field'));
?>
Замена идентификатора / name соответствующими значениями для загружаемой модели, а field на имя атрибута, который вы хотите вывести, который может содержать {{...}} вхождений, которые необходимо проанализировать.
Magento 2.x
Из любого класса Block, который распространяется \ Magento \ Framework \ View \ Element \ AbstractBlock
$this->_scopeConfig->getValue('sectionName/groupName/fieldName');
Любой другой класс PHP:
Если класс (и ни один из его родителей) не внедряет \Magento\Framework\App\Config\ScopeConfigInterface
через конструктор, вам придется добавить его в свой класс.
// ... Remaining class definition above...
/**
* @var \Magento\Framework\App\Config\ScopeConfigInterface
*/
protected $_scopeConfig;
/**
* Constructor
*/
public function __construct(
\Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
// ...any other injected classes the class depends on...
) {
$this->_scopeConfig = $scopeConfig;
// Remaining constructor logic...
}
// ...remaining class definition below...
Как только вы внедрили его в свой класс, теперь вы можете получить значения конфигурации хранилища с тем же примером синтаксиса, который приведен выше для классов блоков.
Обратите внимание, что после изменения списка параметров любого класса __construct () вам может потребоваться очистить сгенерированные классы, а также каталог внедрения зависимостей: var/generation
& var/di