Domanda

Dal momento che questa sera stiamo vedendo questo errore.

Per prima cosa vedere questo nel registro degli errori

2013-08-11T18:46:59+00:00 ERR (3): Warning: include(): Filename cannot be empty  in app/code/core/Mage/Core/Block/Template.php on line 241
2013-08-11T18:46:59+00:00 ERR (3): Warning: include(): Filename cannot be empty  in app/code/core/Mage/Core/Block/Template.php on line 241
2013-08-11T18:46:59+00:00 ERR (3): Warning: include(): Failed opening '' for inclusion (include_path='lib/minify:app/code/local:app/code/community:app/code/core:lib:.')  in app/code/core/Mage/Core/Block/Template.php on line 241

e con piena eccezione stampa vediamo quanto segue.

Ho provato a disattivare le notifiche, ma non so da dove cominciare (e come questo si verifica improvvisamente)

Warning: include(): Filename cannot be empty  in app/code/core/Mage/Core/Block/Template.php on line 241

#0 app/code/core/Mage/Core/Block/Template.php(241): mageCoreErrorHandler(2, 'include(): Filename cannot be empty', 'app/code/core/Mage/Core/Block/Template.php', 241, Array)
#1 app/code/core/Mage/Core/Block/Template.php(241): Mage_Core_Block_Template->fetchView()
#2 app/code/core/Mage/Core/Block/Template.php(272): Mage_Core_Block_Template->fetchView('adminhtml/base/default/template/system/cache/notifications.phtml')
#3 app/code/core/Mage/Core/Block/Template.php(286): Mage_Core_Block_Template->renderView()
#4 app/code/core/Mage/Adminhtml/Block/Template.php(81): Mage_Core_Block_Template->_toHtml()
#5 app/code/core/Mage/Adminhtml/Block/Cache/Notifications.php(62): Mage_Adminhtml_Block_Template->_toHtml()
#6 app/code/core/Mage/Core/Block/Abstract.php(863): Mage_Adminhtml_Block_Cache_Notifications->_toHtml()
#7 app/code/core/Mage/Core/Block/Text/List.php(43): Mage_Core_Block_Abstract->toHtml()
#8 app/code/core/Mage/Core/Block/Abstract.php(863): Mage_Core_Block_Text_List->_toHtml()
#9 app/code/core/Mage/Core/Block/Abstract.php(582): Mage_Core_Block_Abstract->toHtml()
#10 app/code/core/Mage/Core/Block/Abstract.php(526): Mage_Core_Block_Abstract->_getChildHtml('notifications', true)
#11 app/design/adminhtml/default/default/template/page.phtml(55): Mage_Core_Block_Abstract->getChildHtml('notifications')
#12 app/code/core/Mage/Core/Block/Template.php(241): include('app/design/adminhtml/default/default/template/page.phtml')
#13 app/code/core/Mage/Core/Block/Template.php(272): Mage_Core_Block_Template->fetchView('adminhtml/default/default/template/page.phtml')
#14 app/code/core/Mage/Core/Block/Template.php(286): Mage_Core_Block_Template->renderView()
#15 app/code/core/Mage/Adminhtml/Block/Template.php(81): Mage_Core_Block_Template->_toHtml()
#16 app/code/core/Mage/Core/Block/Abstract.php(863): Mage_Adminhtml_Block_Template->_toHtml()
#17 app/code/core/Mage/Core/Model/Layout.php(555): Mage_Core_Block_Abstract->toHtml()
#18 app/code/core/Mage/Core/Controller/Varien/Action.php(390): Mage_Core_Model_Layout->getOutput()
#19 app/code/core/Mage/Adminhtml/controllers/DashboardController.php(43): Mage_Core_Controller_Varien_Action->renderLayout()
#20 app/code/core/Mage/Core/Controller/Varien/Action.php(419): Mage_Adminhtml_DashboardController->indexAction()
#21 app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(250): Mage_Core_Controller_Varien_Action->dispatch('index')
#22 app/code/core/Mage/Core/Controller/Varien/Front.php(176): Mage_Core_Controller_Varien_Router_Standard->match(Mage_Core_Controller_Request_Http)
#23 app/code/core/Mage/Core/Model/App.php(354): Mage_Core_Controller_Varien_Front->dispatch()
#24 app/Mage.php(683): Mage_Core_Model_App->run(Array)
#25 index.php(88): Mage->run('default', 'store')
È stato utile?

Soluzione

Purtroppo, ci non è abbastanza informazioni nella sua domanda di eseguire il debug in modo accurato questo, e sulla base delle specifiche del tuo stack di chiamate, sembra che questo sistema ha ricevuto un paio di personalizzazioni che possono interferire con il comportamento negozio standard. Ecco alcune osservazioni che possono aiutare a rintracciare il problema

  1. Magento sta cercando di include un blocco modello con un insieme stringa vuota come di modello. È per questo che si sta vedendo l'avvertimento. Cercare qualsiasi nuovo (o vecchio) setTemplate, o template="" nel codice, o di qualsiasi luogo un blocco di template è un'istanza senza impostare un modello

  2. di Magento cercando di rendere il system/cache/notifications.phtml template - tuttavia, il fatto le spalle caduto al pacchetto di progettazione base fare questo mezzo Magento potrebbe non trovare questo file in qualsiasi pacchetto adminhtml / a tema . Si tratta di un file stock fornito con il sistema, e potrebbero essere stati rimossi

  3. dici che stai vedendo "ovunque", ma gli errori indicano che è un amministratore unico problema. Questo potrebbe significare che si sta cercando di eseguire codice di amministrazione dal front-end viceversa (di nuovo, difficile da eseguire il debug remoto questo genere di cose)

Altri suggerimenti

Come posso eseguire il debug "modello vuoto": nome del file non può essere vuoto in template.php

Abbiamo risolto questo con l'aggiunta di

    if (strpos($includeFilePath, realpath($this->_viewDir)) === 0 || $this->_getAllowSymlinks()) {
        if (empty($includeFilePath)) {
            Mage::Log("Cannot set emptt filename" . $fileName . " on a " . get_class($this) );
            Mage::log(Mage::printDebugBacktrace(), null, 'backtrace.log'); //or you can even log the backtrace
            include $includeFilePath;
        } else {
            include $includeFilePath;
        }
    } else {
        Mage::log('Not valid template file:'.$fileName, Zend_Log::CRIT, null, null, true);
    }

dove 'Mage :: printDebugBacktrace ()' è stato afferrato da qui

http: //www.blog.magepsycho. com / utilizzando-debug_backtrace-funzione-per-Magento-debug /

In questo modo abbiamo avuto qualche informazione in più per andare da ...

Tutte le risposte sopra sono esatte. Volevo solo aggiungere un caso specifico che penso un sacco di gente può inciampare uppon.

Nel caso in cui si sta utilizzando Modman per gestire i moduli (o qualsiasi altro gestore modulo link simbolici), assicurarsi che il file Modman contiene i percorsi adeguati e dopo che avete fatto:

modman deploy namespace_module.

Personalmente ho trovato me stesso di perdere almeno 15 minuti per il debug di una cosa ovvia quando si sviluppa un certo modulo e l'utilizzo di un comando generate-Modman per risparmiare tempo - dopo che il dimenticare di chiamare di nuovo in modo che sarebbe aggiungere file e distribuire appena creati link simbolici a posto giusto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top