1
對於所有的意圖和目的,這應該是工作..但事實並非如此。簡單的Magento 1.9.1模塊幫手不工作(失敗打開流)
結構:
應用程序的/ etc /模塊/ Company_Modulename.xml
<?xml version="1.0"?> <config> <modules> <Company_Modulename> <active>true</active> <codePool>community</codePool> <version>1.0.0</version> </Company_Modulename> </modules> </config>
應用程序/代碼/社區/公司/ MODULENAME的/ etc/config.xml中
<?xml version="1.0"?> <config> <modules> <Company_Modulename> <version>1.0.0</version> </Company_Modulename> </modules> <global> <helpers> <modulename> <class>Company_Modulename_Helper</class> </modulename> </helpers> </global> </config>
- 應用程序/代碼/社區/公司/ MODULENAME /助手/ Data.php
<?php class Company_Modulename_Helper_Data extends Mage_Core_Helper_Abstract { public function sayHello() { die('hello'); } }
- 應用程序/設計/前端/自定義/缺省的/ template/page/2columns-right.phtml
... <?php Mage::helper('modulename')->sayHello(); ?> ...
這應該與詞 '你好' 來die'ing。相反,我得到:
警告:包括(法師/ MODULENAME /助手/ Data.php):未能打開 流:在 的/ var/www/html等/測試沒有這樣的文件或目錄/ lib/Varien/Autoload.php 94行
我已經將所有模塊文件的權限設置爲777以防萬一。 任何想法?
編輯:我已經嘗試將Data.php重命名爲Helper.php(也是修改後的類名),並試圖用Mage :: helper('modulename/helper') - > ...來調用它,它拋出相同的錯誤,將它正在尋找的文件名改爲Helper.php,但保持使用相同的路徑。
編譯關閉時,高速緩存被禁用(每次測試前清除它無論如何)
只要自動加載器找不到名稱空間(警告:包含(Mage/Modulename/Helper/Data.php):),通常是因爲拼寫錯誤或文件/目錄在包含路徑中不可用。檢查你的config.xml和文件系統路徑。 –
Heh。路徑和配置是正確的。但是當我檢查時,我注意到www-data用戶無權訪問這些文件。必須將其授予整個名稱空間文件夾(公司)。不過謝謝你的提示。 –