在文章进入数据库之前处理下文章

插件开发及发布

版主: woniou

回复
keinn
帖子: 63
注册时间: 2010年 3月 28日 03:11
联系:

在文章进入数据库之前处理下文章

帖子 keinn »

问下,如果我需要在新文章进入数据库之前对文章进行些处理,比如说,替换某些词,有插件实现方法吗? 有些文章需要替换 ,有些不需要。一直在找te的文章入库代码,水平有限,没找到。
我一定需要在入库时处理,不能在前台输出时处理,请大家帮忙解答。
SoAmz
帖子: 42
注册时间: 2010年 5月 11日 08:04
联系:

Re: 在文章进入数据库之前处理下文章

帖子 SoAmz »

你是想关键词替换吧?同等。
期望功能:关键词替换,定义关键词替换个数
xnotepad
帖子: 15
注册时间: 2009年 9月 3日 18:59
联系:

Re: 在文章进入数据库之前处理下文章

帖子 xnotepad »

代码: 全选

Typecho_Plugin::factory('Widget_Contents_Post_Edit')->write = callback;

callback换成你要的函数就可以了。它传递两个参数,第一个为content数组,第二个为Widget_Contents_Post_Edit类实例。最后记得返回处理后的content数组
keinn
帖子: 63
注册时间: 2010年 3月 28日 03:11
联系:

Re: 在文章进入数据库之前处理下文章

帖子 keinn »

Typecho_Plugin::factory('Widget_Contents_Post_Edit')->write = callback;
这个在哪里找??

问的比较若。
不要笑。
头像
zyzzc
帖子: 648
注册时间: 2009年 9月 25日 20:11
联系:

Re: 在文章进入数据库之前处理下文章

帖子 zyzzc »

这句写在激活插件函数那里即可,如

代码: 全选

     * 激活插件方法,如果激活失败,直接抛出异常
     *
     * @access public
     * @return void
     * @throws Typecho_Plugin_Exception
     */
    public static function activate()
    {   
        Typecho_Plugin::factory('Widget_Contents_Post_Edit')->write = callback;
    }

即将callback函数挂接到Widget/Contents/Post/Edit.php文件中写的write中处理文章编辑内容
keinn
帖子: 63
注册时间: 2010年 3月 28日 03:11
联系:

Re: 在文章进入数据库之前处理下文章

帖子 keinn »

有点明白了,这两天感觉对TE 又理解了许多。谢谢指教。
回复