4
我正在爲magento 1.7定製塊。我有我的配置XML中聲明的塊。這個模塊還有一個定義好的控制器,它工作正常。我需要一個具有邏輯背後邏輯的新塊,所以我想我會使用我已經創建的模塊。我已經在下面包含了塊聲明。Magento自定義塊中斷站點。爲什麼?
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<Company_Catalog>
<version>0.1.0</version>
</Company_Catalog>
</modules>
<global>
<blocks>
<catalog>
<class>Company_Catalog_Block</class>
</catalog>
</blocks>
</global>
</config>
我使用此語法使用的塊的local.xml中在我的主題:
<block type="catalog/featured" name="featuredproducts" before="-" template="catalog/featured.phtml"/>
出現的塊像我希望它,但問題是,其餘的大部分的網站被破壞,exception.log中充滿了magento在我的模塊中尋找其他塊。示例:
2012-11-27T19:34:47+00:00 ERR (3):
exception 'Mage_Core_Exception' with message 'Invalid block type:Company_Catalog_Block_Product_List' in /home/project/site_content/app/Mage.php:594
2012-11-27T19:34:47+00:00 ERR (3):
exception 'Mage_Core_Exception' with message 'Invalid block type: Company_Catalog_Block_Product_List_Toolbar' in /home/project/site_content/app/Mage.php:594
我不想重寫任何現有的塊,只需在我已經聲明的模塊中添加一個新的塊即可。
我明顯地告訴Magento在我的模塊中查看比我想要的更多。這是我第一次嘗試使用Magento中的自定義塊,所以我不確定我做錯了什麼。
我知道Mage命名空間中也使用了「Catalog」,但我正在使用自己的命名空間。據我所知,不應該有衝突。
感謝
感謝您的回覆。所以我認爲,對於塊,我最好使用一個根本不出現在覈心中的模塊。正確? – ddhahn
@ddhahn如果你想創建自定義塊,那麼是的,使用核心不使用的「組名」(即「目錄」)。我的標準做法是使用完整的軟件包/模塊名稱(即 ... company_catalog>)。它有點冗長,但避免了任何可能的命名空間衝突。 –