我想在前端“始终”运行公共功能。
所以我进入了community / Myname / Forcelogin / etc / config.xml:
<config>
<modules>
<Myname_Forcelogin><version>0.1.0</version></Myname_Forcelogin>
</modules>
<global>
<models>
<check_login>
<class>Myname_Forcelogin_Model</class>
</check_login>
</models>
</global>
</config>
在社区/ Myname / Forcelogin / Model / Forcelogin.php中:
class Myname_Forcelogin_Model_Forcelogin
{
public function check_login()
{
die('Hello there');
}
}
那么我应该添加/更改什么才能让“check_login()”始终在前端运行?
答案 0 :(得分:1)
我不完全确定您的问题是什么,但如果我理解正确,您希望 每个 页面 实例化 你的模型并运行此方法?您可能希望研究一个为您运行此方法的事件侦听器,请参阅this question以了解要使用的事件。
修改强>
将您的config.xml
更改为
<config>
<modules>
<Myname_Forcelogin><version>0.1.0</version></Myname_Forcelogin>
</modules>
<global>
<models>
<check_login>
<class>Myname_Forcelogin_Model</class>
</check_login>
</models>
<events>
<controller_action_layout_load_before>
<observers>
<checklogin><!-- this tags name does not matter, so long as it is all lower case and unique -->
<type>singleton</type>
<class><!-- the class alias of the listening model --></class>
<method><!-- the method to be called on that model --></method>
</checklogin>
</observers>
</controller_action_layout_load_before>
</events>
</global>
</config>
了解更多详情,请点击this链接