最近在浏览网站数据site:的时候发现百度收录的pbootcms做的网站描述统一都变成了主页的描述,打开列表和详情页,发现关键词也都是主页的关键词,赶紧看了一下其他的网站也是这个问题。这个样子对网站seo可是不太友好,去pbootcms官网群里询问也没得到想要的答案,那就自己动手吧。 首先找到对应的标签,{pboot:pagekeywords}{pboot:pagedescription},查找官方手册介绍如下: V1.1.6+新增如下标签,推荐使用{pboot:pagetitle} 根据不同页面自动显示标题 {pboot:pagekeywords} 根据不同页面自动显示关键字 {pboot:pagedescription} 根据不同页面自动显示描述 继续测试发现,只要是不填写pbootcms关键词和描述,就会默认显示主页的信息,那么只要找到判断的位置,注释掉就可以了。期间想过在模版页面直接操作判断,发现这个判断是前置的,只要是空这个标签就会显示主页的内容,所以只能从后台代码入手了。 Pbootcms关键词{pboot:pagekeywords}描述{pboot:pagedescription}默认显示主页关键词描述修改方法如下: 1、打开apps\home\controller\ParserController.php, 693行附近找到case 'keywords': // 如果栏目关键字为空,则自动使用全局关键字 700行附近找到case 'description': // 如果栏目描述为空,则自动使用全局描述 3879行附近找到case 'keywords': // 如果内容关键字为空,则自动使用全局关键字 3886行附近找到case 'description': // 如果内容描述为空,则自动使用全局描述 将这4行全部注释掉即可。(就是在其前面加//)这样子就会直接显示对应的信息了。 2、找到模版中head.html文件找到<meta name="keywords" content="{pboot:pagekeywords}">,或者其所在的模版页面,将其修改为:{pboot:if('{pboot:pagekeywords}'!='')}<meta name="keywords" content="{pboot:pagekeywords}">{/pboot:if}。这样关键词不存在的情况下这一行就不显示了,同理描述也可以这样操作。 第一步操作因为修改了后台文件,后续升级的时候可能会被覆盖掉,所以在升级之前一定要看明白列表中是否有apps\home\controller\ParserController.php这个文件需要升级,如果有,升级完成后,再打开这个文件重新注释一遍。 PS:这个功能不知道作者设置的初衷是什么,但是希望作者能在后台加个按钮,打开或者关闭这个功能,方便大家的自己选择,这样也就不担心升级问题了。 |