我有一个提交条目的safecracker表单.表单由title,url_title和description组成.我想创建一个扩展挂钩,如果它们存在于title条目中,则会过滤掉某些单词.
我已经有一个功能,负责清洁function clean(){....}.我知道我们需要使用扩展挂钩,以便我们可以在保存条目时清除标题.
我需要使用什么扩展钩子.你能给我一个扩展钩子的完整例子吗?我非常擅长PHP,但仍然是钩子以及它们应该如何实现的新手.我已经阅读了EE文档,但仍然发现一些关于如何使用钩子的混淆
首先访问http://pkg.io/并获取基本扩展文件.
如果输入了不清洁的单词,您可能希望使用'safecracker_submit_entry_start'挂钩来抛出错误.扩展的最重要部分是注册要使用的方法和钩子,否则代码都不会运行.
您的代码应如下所示:
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);
}
Run Code Online (Sandbox Code Playgroud)
一旦调用该方法,您就可以开始清洁了.确保在定义safecracker对象时将其传递给clean方法.例如:
public function clean($sc){
print_r($sc);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1416 次 |
| 最近记录: |