Réponses:
Nous devons appeler la méthode par défaut disponible.
Il suffit d'utiliser \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
, dans votre argument constructeur et définir la propriété de classe:$this->scopeConfig = $scopeConfig;
Maintenant, pour obtenir la valeur de configuration, utilisez simplement
$this->scopeConfig->getValue('dev/debug/template_hints', \Magento\Store\Model\ScopeInterface::SCOPE_STORE);
Créez une fonction pour obtenir les valeurs de configuration dans l'aide de votre module personnalisé.
public function getConfig($config_path)
{
return $this->scopeConfig->getValue(
$config_path,
\Magento\Store\Model\ScopeInterface::SCOPE_STORE
);
}
et appelez où vous voulez, par exemple dans test.phtml
$moduleStatus = $this->helper('Customvendorname\Custommodulename\Helper\Data')->getConfig('sectionid/groupid/fieldid');
En bloc et appelant comme ceci:
$this->_objectManager->create('Customvendorname\Custommodulename\Helper\Data')->getConfig('sectionid/groupid/fieldid');
$this->_objectManager->create(...)
devrait être évitée.
J'ai utilisé la méthode suivante pour récupérer les variables
if (empty($this->_data['welcome'])) {
$this->_data['welcome'] = $this->_scopeConfig->getValue(
'design/header/welcome',
\Magento\Store\Model\ScopeInterface::SCOPE_STORE
);
}
return $this->_data['welcome'];