Risposte:
Dobbiamo chiamare il metodo predefinito disponibile.
Basta usare \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig
, nell'argomento del costruttore e impostare la proprietà class:$this->scopeConfig = $scopeConfig;
Ora per ottenere il valore di configurazione basta usare
$this->scopeConfig->getValue('dev/debug/template_hints', \Magento\Store\Model\ScopeInterface::SCOPE_STORE);
Ho la risposta da questo link e faccio riferimento a questo
Crea una funzione per ottenere valori di configurazione nell'helper del tuo modulo personalizzato.
public function getConfig($config_path)
{
return $this->scopeConfig->getValue(
$config_path,
\Magento\Store\Model\ScopeInterface::SCOPE_STORE
);
}
e chiama ovunque tu voglia, ad esempio in test.phtml
$moduleStatus = $this->helper('Customvendorname\Custommodulename\Helper\Data')->getConfig('sectionid/groupid/fieldid');
In block e helper chiama così:
$this->_objectManager->create('Customvendorname\Custommodulename\Helper\Data')->getConfig('sectionid/groupid/fieldid');
$this->_objectManager->create(...)
dovrebbe essere evitato.
Ho usato il seguente metodo per recuperare le variabili
if (empty($this->_data['welcome'])) {
$this->_data['welcome'] = $this->_scopeConfig->getValue(
'design/header/welcome',
\Magento\Store\Model\ScopeInterface::SCOPE_STORE
);
}
return $this->_data['welcome'];