首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Expressionengine挂钩

Expressionengine挂钩
EN

Stack Overflow用户
提问于 2012-03-20 06:46:45
回答 1查看 1.5K关注 0票数 4

我有一个安全盗窃器表单,可以提交一个条目。表单由标题、url_title和description组成。我想创建一个扩展钩子,如果某些单词存在于条目的title中,它会将它们过滤掉。

我已经有了一个负责清理function clean(){....}的函数。我知道我们需要使用扩展钩子,这样我们就可以在保存条目时清除标题。

为此,我需要使用什么扩展钩子。你能给我一个完整的扩展钩子的例子吗?我对PHP很在行,但对钩子和它们应该如何实现来说还是个新手。我已经阅读了EE文档,但仍然对如何使用钩子感到困惑

EN

回答 1

Stack Overflow用户

发布于 2012-03-20 09:37:25

首先访问http://pkg.io/并获取您的基本扩展文件。

如果输入了不干净的单词,您可能希望使用'safecracker_submit_entry_start‘钩子抛出一个错误。扩展最重要的部分是注册你想要使用的方法和钩子,否则所有的代码都不会运行。

您的代码应该如下所示:

代码语言:javascript
复制
public function activate_extension()
{
    // Setup custom settings in this array.
    $this->settings = array();

    $data = array(
        'class'     => __CLASS__,
        'method'    => 'clean', // point to the method that should run
        'hook'      => 'safecracker_submit_entry_end', // point to the hook you want to use to trigger the above method.
        'settings'  => serialize($this->settings),
        'version'   => $this->version,
        'enabled'   => 'y'
    );

    $this->EE->db->insert('extensions', $data);         

}

一旦调用了该方法,您就可以开始清理了。在定义safecracker对象时,请确保将它传递给clean方法。例如:

代码语言:javascript
复制
public function clean($sc){
    print_r($sc);
}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9779055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档