下面我将为你详细讲解“phpcms V9二级目录下分页路径不正确问题的彻底解决方法”的完整攻略。
问题描述
当我们把phpcms V9放置在站点的非根目录下时,就会出现分页路径不正确的问题。原因是phcms V9默认使用的是根目录路径,而没有考虑站点放置的目录。例如,我们的站点放置在www.example.com/cms
目录下,当我们访问分页时,路径会变成www.example.com/list-2.html
,而实际上正确的路径应该是www.example.com/cms/list-2.html
。这对搜素引擎的收录和网站SEO会造成一定的影响。
解决方法
修改配置文件
我们可以通过修改配置文件的方式解决此类问题,具体步骤如下:
- 打开网站根目录下的
phpcms\core\lib\route.class.php
文件 - 找到
$_base_path
变量,将其修改为站点的路径,在本例中即为/cms
php
$_base_path = '/cms'; //原默认值为‘/’
- 保存修改后的文件
修改配置文件后,需要重新生成一下栏目列表,在后台站点设置中先将栏目部分全部删除,然后再重新生成一下就好啦!
修改源码
如果修改配置文件无效,我们可以直接修改源码来解决。具体方法如下:
- 打开
phpcms\modules\content\classes\content.class.php
文件,找到param2
方法 - 修改分页参数
$page_urlrule
的生成规则,将
php
$urls['page'] = list_url($catdir, $page);
修改为
php
$urls['page'] = APP_URL.$catdir.'/list-'.$page.'.html';
- 保存修改后的文件
修改源码后,同样也需要重新生成一下栏目列表。
示例说明
假设我们的站点目录为www.example.com/cms
,其中栏目news
的目录为/cms/html/news
,栏目页的文件名为index.html
,那么在分页时路径应该为www.example.com/cms/news/list-2.html
。
通过以上两种解决方法,我们均可以将分页路径正确的生成,避免对SEO和收录造成意外影响。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:phpcms V9二级目录下分页路径不正确问题的彻底解决方法 - Python技术站