首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >z-blog php伪静态规则的配置方案和相关疑难杂症的问题解决

z-blog php伪静态规则的配置方案和相关疑难杂症的问题解决

作者头像
用户11415144
发布2024-12-19 21:06:39
发布2024-12-19 21:06:39
4550
举报
文章被收录于专栏:祝先生笔记祝先生笔记

作为一款轻型博客建站程序,z-blog算是做比较优秀的网站建站程序,做网站seo这一块不能少,而伪静态就是其中的一项,今天就来说说z-blog php伪静态规则的配置方案与相关问题,希望对你有用。

以目前的z-blog php为例子,它自带了一个伪静态插件,叫做静态管理中心 1.6,在做伪静态的时候,它直到至关重要的作用。

打开它,可以看到默认为动态,如果要实现伪静态功能,勾选中间的伪静态即可,如下图:

如果不想修改,直接滚动到页面最下边,点击“提交”,但是对我这个有点弱的人来说,每个文章的链接地址都要符合自己的意思才肯放过,因此重新修改url的生成规则是必不可少的,但是面对这么多规则,它们都代表什么,自己必须先弄懂。

规则说明

{%host%}:表示网站域名,后面自带“/”所以在与其他规则搭配时,一般不加“/”。

{%id%}:表示文章或分类ID;

{%page%}:表示分页条数字ID;

{%year%}:表示年份;

{%month%}:表示月份;

{%date%}:代表日期,一般不会用它;

{%alias%}:代表别名,在文章处代表文章标题,在分类处又代表分类别名,其他也是一样;

{%category%}:表示分类名,如果不设置英文别名,它就会调用中文分类名,建议设置英文别名

说明:除{%host%}外,其他的参数都需要加上“/”。一些外围名称,如post、page、category、tags、date、author、可以设置成任意名称,但像{%date%}这样的参数就不能修改。

我一般其他的都不管,只需要修改文章url、首页url、分类url和标签的url。用换规则如下

文章url与展现样式:http://localhost/prose/1.html

{%host%}{%category%}/{%id%}.html

首页url与展现样式:http://localhost/index.html

{%host%}index.html

分类url与展现样式:http://localhost/prose/list_2.html

{%host%}{%alias%}/list_{%page%}.htm

标签的url与展现样式:http://localhost/tags/散文.html

{%host%}tags/{%alias%}.html

把伪静态的规则添加到插件中

虽然以上的规则可以通过手动添加到伪静态下面的表单中,但是每次在动态与静态当中切换后,就会重置成默认规则,要添加又要重复手动添加,相当麻烦,此时只需要把这些规则一次性的添加到插件的php文件,打开后就可以在表单框中看到自定义的规则。

首先通过路径\zb_users\plugin\STACentre\,并用记事本打开main.php文件,用查找:

{%host%}post/{%id%}.html

这个规则,找到大约53行的:

'ZC_ARTICLE_REGEX' => array

到第95行的:),

即97行的:

'ZC_DATE_REGEX' => array(

上面,选择它,该代码如下:

代码语言:php
复制
'ZC_ARTICLE_REGEX' => array(
        '{%host%}?id={%id%}',
        '{%host%}index.php/post/{%id%}.html',
        '{%host%}post/{%id%}.html',
        '{%host%}post/{%alias%}.html',
        '{%host%}{%year%}/{%month%}/{%id%}/',
        '{%host%}{%category%}/{%alias%}/',
    ),

    'ZC_PAGE_REGEX' => array(
        '{%host%}?id={%id%}',
        '{%host%}index.php/{%id%}.html',
        '{%host%}{%id%}.html',
        '{%host%}{%alias%}.html',
        '{%host%}{%alias%}/',
        //'{%host%}{%alias%}',
    ),

    'ZC_INDEX_REGEX' => array(
        '{%host%}?page={%page%}',
        '{%host%}index.php/page_{%page%}.html',
        '{%host%}page_{%page%}.html',
        '{%host%}page_{%page%}/',
        //'{%host%}page_{%page%}',
        '{%host%}page/{%page%}/',
    ),

    'ZC_CATEGORY_REGEX' => array(
        '{%host%}?cate={%id%}&page={%page%}',
        '{%host%}index.php/category-{%id%}_{%page%}.html',
        '{%host%}category-{%id%}_{%page%}.html',
        '{%host%}category-{%alias%}_{%page%}.html',
        '{%host%}category/{%alias%}/{%page%}/',
        '{%host%}category/{%id%}/{%page%}/',
    ),

    'ZC_TAGS_REGEX' => array(
        '{%host%}?tags={%id%}&page={%page%}',
        '{%host%}index.php/tags-{%id%}_{%page%}.html',
        '{%host%}tags-{%id%}_{%page%}.html',
        '{%host%}tags-{%alias%}_{%page%}.html',
        '{%host%}tags/{%alias%}/{%page%}/',
    ),

复制下面我已经修改好的代码覆盖掉,代码如下:

代码语言:php
复制
'ZC_ARTICLE_REGEX' => array(
        '{%host%}?id={%id%}',
        '{%host%}index.php/post/{%id%}.html',
        '{%host%}post/{%id%}.html',
        '{%host%}post/{%alias%}.html',
        '{%host%}{%year%}/{%month%}/{%id%}/',
        '{%host%}{%category%}/{%alias%}/',
        '{%host%}{%category%}/{%id%}.html',//自定义文章URL规则
    ),

    'ZC_PAGE_REGEX' => array(
        '{%host%}?id={%id%}',
        '{%host%}index.php/{%id%}.html',
        '{%host%}{%id%}.html',
        '{%host%}{%alias%}.html',
        '{%host%}{%alias%}/',
        //'{%host%}{%alias%}',
    ),

    'ZC_INDEX_REGEX' => array(
        '{%host%}?page={%page%}',
        '{%host%}index.php/page_{%page%}.html',
        '{%host%}page_{%page%}.html',
        '{%host%}page_{%page%}/',
        //'{%host%}page_{%page%}',
        '{%host%}page/{%page%}/',
        '{%host%}index.html',//自定义首页规则
    ),

    'ZC_CATEGORY_REGEX' => array(
        '{%host%}?cate={%id%}&page={%page%}',
        '{%host%}index.php/category-{%id%}_{%page%}.html',
        '{%host%}category-{%id%}_{%page%}.html',
        '{%host%}category-{%alias%}_{%page%}.html',
        '{%host%}category/{%alias%}/{%page%}/',
        '{%host%}category/{%id%}/{%page%}/',
        '{%host%}{%alias%}/list_{%page%}.html',//自定义分类规则
    ),

    'ZC_TAGS_REGEX' => array(
        '{%host%}?tags={%id%}&page={%page%}',
        '{%host%}index.php/tags-{%id%}_{%page%}.html',
        '{%host%}tags-{%id%}_{%page%}.html',
        '{%host%}tags-{%alias%}_{%page%}.html',
        '{%host%}tags/{%alias%}/{%page%}/',
        '{%host%}tags/{%alias%}.html',//自定义标签规则
    ),

覆盖好man.php文件后保存,刷新下后台,此时你会发现在每个我们需要修改的规则最后,就有自己添加的单选框,当插件重置为默认值时,我们只需要重新勾选这些单选框后插件就算添加到表单中,最后点击提交,并点击弹出来的ReWrite规则框下的“创建.htaccess”,就可以实现伪静态,非常省事。

当然到这一步事情还没完,因为通过这样的操作后,主页和分类都会出问题,我们还需要进行下一步的修改。

导航栏模块的修改

在后台找到“模块管理”,在右边找到“导航栏”,打开它,在链接下面就有我设置的4个导航,链接如下:

代码语言:html
复制
http://localhost/
http://localhost/?cate=1
http://localhost/?cate=2
http://localhost/?cate=3

这里需要做好笔记,等到需要改为动态的时候还需要设置回来。

这4个分类栏目链接分别对应首页、散文一、散文二、散文三。对应的别名除了首页外分别为prose1、prose2、prose3,分别把它们修改成如下样式:

代码语言:txt
复制
http://localhost/index.html
http://localhost/prose1/list.html
http://localhost/prose2/list.html
http://localhost/prose3/list.html

当然这些都只是例子,需要把它们修改成你网站的真实栏目别名。当然到这里也还没有完成,因为首页还有问题。

接下来我们需要对网站根目录的index.php文件进行修改。

修改首页index.php文件

用记事本打开网站根目录的index.php文件,原始代码如下:

......

由于篇幅的限制,未完之处,请移步祝先生的博客

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档