我的目标是在我们商店的任何页面上输入时将 url 引用和关键字保存在数据库中。我检查了这个问题及其答案,试图对我的问题有所了解。
我遵循的方法是:
有一个将坚持默认布局的块,以便将其加载到每个页面上(经过测试,正在工作)。该块将使用以下代码读取引用者:
$request['url'] = $this->getRequest()->getServer('HTTP_REFERER');
然后调用函数将 $request 传递给控制器: 这一步我还是不知道怎么做,使用重定向?或者也许通过调用 dispatchEvent 并在具有
postAction
函数的控制器上?//on the phtml file <div> <?php $request['url'] = getRequest()->getServer(‘HTTP_REFERER’); Mage::dispatchEvent("allpagescontroller", $request); ?> </div>
控制器将实例化我的模型并调用设置器来更新/插入需要的值
//on the controller function postAction ($params) { $referer = $this->getRequest()->getPost(); }
在模型上,我将拥有所有适当的代码来执行 CRUD 操作
它是否正确?我正在尝试按照这些步骤来遵循 Magento MVC 方法。现在我已经有了 phtml 文件上的所有代码。我正在获取引用,将其拆分并实例化模型以保存所有内容。但我知道这是不正确的。
现在在 config.xml 上我有:
<?xml version="1.0"?> <config> <modules> <Dts_Allpages> <version>0.1.0</version> </Dts_Allpages> </modules> <global> <models> <allpages> <class>Dts_Allpages_Model</class> <resourceModel>allpages_mysql4</resourceModel> </allpages> <allpages_mysql4> <class>Dts_Allpages_Model_mysql4</class> <entities> <keywords> <table>keywords</table> </keywords> <referencedpages> <table>referencedpages</table> </referencedpages> </entities> </allpages_mysql4> </models> <blocks> <allpages> <class>Dts_Allpages_Block</class> </allpages> </blocks> <helpers> <allpages> <class>Dts_Allpages_Helper</class> </allpages> </helpers> <resources> <allpages_write> <connection> <use>core_write</use> </connection> </allpages_write> <allpages_read> <connection> <use>core_read</use> </connection> </allpages_read> </resources> </global>> <frontend> <routers> <allpages> <use>standard</use> <args> <module>Dts_Allpages</module> <frontName>allpages</frontName> </args> </allpages> </routers> <layout> <updates> <allpages> <file>allpages.xml</file> </allpages> </updates> </layout> </frontend> </config>