Magento はモジュールのページを表示していますが、ヘッダー、フッター、サイドバーのみです。マイページのコンテンツが表示されません。何度もチェックして再チェックした後、ファイルに問題は見られませんが、レイアウト ファイルが呼び出されていないようです。
コントロールから直接エコーすると、期待される結果が返されます
ブロックから直接エコーしても結果は返されません
layout.xml を壊しても例外は返されません。
config.xml を壊すと、system.log に 404 とエラーが返される
var_dump(Mage::getSingleton('core/layout')->getUpdate()->getHandles());
以下を示します
array
0 => string 'default' (length=7)
1 => string 'STORE_default' (length=13)
2 => string 'THEME_frontend_default_default' (length=30)
3 => string 'prefs_index_signup' (length=18)
4 => string 'customer_logged_in' (length=18)
このモジュールは以前は機能していましたが、何が変更されたのかわかりません。また、現在のコードを git のレポにあるコードと比較しましたが、違いはないようです。明らかに何かが変更されています。他に何を確認できますか?
アプリ/デザイン/フロントエンド/ベース/デフォルト/レイアウト/ps_prefs/prefs.xml
<layout>
<prefs_index_signup>
<reference name="content">
<block type="prefs/signup" name="prefs_new" template="ps/prefs/new.phtml" />
</reference>
</prefs_index_signup>
</layout>
アプリ/コード/ローカル/Ps/Prefs/Block/Signup.php
class Ps_Prefs_Block_Signup
extends Mage_Core_Block_Template
{
public $key;
public $locale;
public function _construct()
{
$this->setKey();
$this->getLocale();
}
アプリ/コード/ローカル/Ps/Prefs/etc/config.xml
<config>
<global>
<models>
<prefs>
<class>Ps_Prefs_Model</class>
<resourceModel>prefs_resource</resourceModel>
</prefs>
<prefs_resource>
....resources.....
</prefs_resource>
</models>
<blocks>
<prefs>
<class>Ps_Prefs_Block</class>
</prefs>
</blocks>
</global>
<frontend>
<layout>
<updates>
<prefs>
<file>ps_prefs/prefs.xml</file>
</prefs>
</updates>
</layout>
<routers>
<prefs>
<use>standard</use>
<args>
<module>Ps_Prefs</module>
<frontName>prefs</frontName>
</args>
</prefs>
</routers>
</frontend>
</config>
アプリ/コード/ローカル/Ps/Prefs/コントローラー/IndexController
class Ps_Prefs_IndexController
extends Mage_Core_Controller_Front_Action
{
public function signupAction()
{
$this->loadLayout()->renderLayout();
}