小码农 猫的一生在打哈欠中度过

Sitemap 插件跟 AutoSlug 插件冲突 解决

前几天装了Sitemap插件,想着能自动更新站点地图,挺好用的,这几天发现,发布的 文章都是用数字做文件名,感觉很惊讶,于是找了下,发现Sitemap跟AutoSlug这两个插件冲突了。

AutoSlug是ShingChi写的,由于年久失修,我给维护了下,还是可以用,该插件可以实现发布文章的时候,将文章名自动翻译成英文或者拼音,我不喜欢都是数字的。

Sitemap插件是caixw写的,同样,我也稍微修改了下,更加符合我本地服务器的配置。

现在来说下修改的过程

由于typecho的插件机制(我不知道我理解的对不对,反正现在是这样)两种监视write的插件无法同时使用?

sitemap在文章编辑后触发,AutoSlug也是,所以只需要更改其中的一项就可以了。

由于我AutoSlug的特殊性,所以不打算改这个插件。那就改Sitemap好了。

打开plugins文件夹,定位到Sitemap下,找到Plugin.php

找到activate方法,修改如下内容:

Typecho_Plugin::factory('Widget_Contents_Post_Edit')->write=array('Sitemap_Plugin','generater');

改为:

Typecho_Plugin::factory('Widget_Contents_Post_Edit')->finishPublish=array('Sitemap_Plugin','generater');

保存后,重启插件。

原理就是将Sitemap插件的钩子由撰写改为发布完成

赏
支付宝赞赏码
支付宝
微信赞赏码
微信
分享 微博 QQ 空间 豆瓣 Twitter

此篇已闭评。

卷首