phpcms 静态页

phpcms生成的静态页目录规则是按照URL规则生成的, 静态页 内容是ob_clean前台模板文件产生的phpcms\templates\default,静态页的调试 :修改静态页,重新生成静态页再看效果

后台生成静态页的类phpcms\modules\*\classes\html.class.php,在后台控制器中调用

/**
 * 生成静态文件
 * @param string $file 文件路径
 * @return boolen/intval 成功返回生成文件的大小
 */
private function create_html($file) {
    $data = ob_get_contents();
    ob_end_clean();
    pc_base::load_sys_func('dir');
    dir_create(dirname($file));
    $strlen = file_put_contents($file, $data);
    @chmod($file, 0777);
    return $strlen;
}

/**
 * 生成列表页
 */
public function create_list() {
    $siteid = get_siteid();
    //分站时计算路径
    if ($siteid>1) {
        $site_info = $this->site->get_by_id($siteid);
        $file = pc_base::load_config('system', 'html_root').'/'.$site_info['dirname'].'/openservice/index.html';
    } else {
        $file = pc_base::load_config('system', 'html_root').'/openservice/index.html';
    }
    $this->queue->add_queue('add', $file, $siteid);
    $file  = PHPCMS_PATH.$file;
    ob_start();
    include template('openservice', 'index');
    return $this->create_html($file);
}

最近发现网站的生成的网页根目录太深了,就简单了编写了一个生成url规则到 

扩展 > URL规则管理 > 增加规则
首先添加一个栏目/列表页url生成规则

第二步:再添加一个内容页url生成规则
 

最后一步:在栏目管理里面进行html生成管理

在内容管理—栏目管理,点开相差的栏目具体设置那里,赫然看到HTML设置 。这才豁然开朗。仿佛是曲径通幽处了,官方为了把不同的栏目可以设置为不同的模式,分别设 置为静态或动态网页,所以,把设置的方法直接细化到了栏目管理里边去了。而不是统一的全局设置。跟上程序员的设计思路,这才是最重要的事

url规则管理动态规则需配合服务器的伪静态功能,以apache为例

RewriteEngine On
RewriteRule ^(.*)content-([0-9]+)-([0-9]+)-([0-9]+)\.html$  $1/index\.php\?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule ^(.*)show-([0-9]+)-([0-9]+)-([0-9]+).html$      $1/index\.php\?m=content&c=index&a=show&catid=$2&id=$3&page=$4
RewriteRule ^(.*)list-([0-9]+)-([0-9]+).html$               $1/index\.php\?m=content&c=index&a=lists&catid=$2&page=$3

nginx伪静态配置

location / {
    if (!-f $request_filename){
    rewrite (.*) /index.php;
    }
    rewrite ^/show-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;
    rewrite ^/content-([0-9]+)-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=show&catid=$1&id=$2&page=$3 last;
    rewrite ^/list-([0-9]+)-([0-9]+).html /index.php?m=content&c=index&a=lists&catid=$1&page=$2 last;
    rewrite ^/tag-([^\.]*)-([0-9]+)-([0-9]+).html /index.php?m=content&c=tag&catid=$2&tag=$1&page=$3 last;
}

 

一、添加栏目

下面我们以一个实例来讲解PHPCMS v9 栏目的添加和设置相关内容。实例:向PHPCMS V9 默认栏目 国内 下面添加子栏目 军事新闻 和 政治新闻

 

说明:如果管理栏目页没有默认栏目,请于管理界面右上角更新缓存。

二、栏目设置

 接下来填写栏目名称和目录,以及设置生成HTML设置选项,如下图所示:

栏目模版的选择设置,如下图所示:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值