下载鸥 > 网站下载 > 开发教程 > 帝国CMS

帝国cms自定义字段伪静态链接地址

782 2021-05-05 02:21:34

收藏
在帝国cms二次开发过程中,我们可能需要自定义一段伪静态地址。且,这个地址可能是一个自定义字段,和id、classid甚至classpath都没有关联。这个时候,要如何操作呢?

帝国cms自定义字段伪静态链接地址
 

自定义伪静态地址源码

编辑文件/e/class/connect.php

//返回内容伪静态
function eReturnRewriteInfoUrl($classid,$id,$ecms=0){
    global $public_r,$empire,$dbtbpre,$class_r;
    if(empty($public_r['rewriteinfo']))
    {
        $r['pageurl']=$public_r['newsurl']."e/action/ShowInfo.php?classid=$classid&id=$id";
        $r['rewrite']=0;
    }
    else
    {
        if($ecms==1)
        {
            if($class_r[$classid]['tbname'] == 'diy') {
                $index_r = $empire->fetch1("select id,classid,checked from {$dbtbpre}ecms_diy_index where id='$id' limit 1");
                $infotb=ReturnInfoMainTbname('diy',$index_r['checked']);
                $infor=$empire->fetch1("select filename from ".$infotb." where id='$id' limit 1");
				
                $pageurl=$public_r['newsurl']."diy/".$infor['filename'].'.html';
            }
            if($pageurl) {
                $r['pageurl'] = $pageurl;
            }else{
                $r['pageurl']=$public_r['newsurl'].str_replace(array('[!--classid--]','[!--id--]','[!--page--]'),array($classid,$id,0),$public_r['rewriteinfo']);
            }
        }
        else
        {
            $r['pageurl']=$public_r['newsurl'].str_replace(array('[!--classid--]','[!--id--]'),array($classid,$id),$public_r['rewriteinfo']);
        }
        $r['rewrite']=1;
    }
    return $r;
}
本案例演示的自定义字段名就是filename,即系统自带的文件名,使用其他自定义字段也是一样的效果。
 

自定义伪静态地址用法

在更新数据页地址时,会自动生效。可用于更新titleurl。
 

附注:自定义字段的伪静态

1、这里讲的伪静态指的是使用自定义字段做文章地址titleurl的伪静态获取,请勿与其他概念混淆。
2、使用本功能应当同步更新/e/class/hinfofun.php中的AddNews()函数,才能确保发布与生成的titleurl保持一致。
3、要访问自定义字段作为文章链接需要有对应接口方可实现,本帝国cms二开函数仅是对于自定义伪静态地址的一个补充。

本文地址:https://xzo.com.cn/develop/empire/901.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国CMS怎样批量取消文章审核
帝国CMS怎样批量取消文章审核

使用帝国CMS的朋友可能有这样的需求:由于信息发生变化,或是数据出了问题,想要...

7 479
帝国CMS的下载地址怎样设置点击进入下载页而不弹小窗口
帝国CMS的下载地址怎样设置点击进入下载页而不弹小窗口

帝国cms默认的下载地址是点击后弹窗一个小窗口,用户体验度并不好,但我们可以...

13 660
帝国CMS生成选项是“ID目录”无斜扛解决的方法
帝国CMS生成选项是“ID目录”无斜扛解决的方法

如果你栏目生成选项选择的ID目录,那么帝国他生成的地址会少一个斜扛,访问时就...

3 383
帝国cms怎样判断一个栏目有没有子栏目?(父栏目换位判断原创方案)
帝国cms怎样判断一个栏目有没有子栏目?(父栏目换位判断原创方案)

在帝国cms站点的开发过程中,有时候需要判断栏目有没有下级栏目,如果有子栏目,...

3 329
帝国cms多站点跨库调用
帝国cms多站点跨库调用

一台服务器如果存在多个站点,则这些站点的数据可以互相调用。通过互相调用,我...

0 325
帝国cms点击切换视频播放源功能操作流程
帝国cms点击切换视频播放源功能操作流程

帝国cms的视频播放功能比较强大,支持的视频源格式也比较多。但除了使用帝国c...

1 434
栏目目录搭建的帝国cms网站怎样写伪静态规则?
栏目目录搭建的帝国cms网站怎样写伪静态规则?

如果用栏目搭建帝国cms站点,伪静态规则该怎么写呢?如果直接作用于根目录,可能...

1 431
帝国cms防火墙拦截会员投稿关键词无效怎么办?
帝国cms防火墙拦截会员投稿关键词无效怎么办?

帝国cms拦截关键词可以在用户投稿输入指定关键词后进行拦截,并变成白屏。功...

3 317
随机帝国CMS开发教程
帝国cms简单的网址过滤函数
帝国cms简单的网址过滤函数

很多时候客户喜欢在发帖时带网址,大网站还不怕,小网站本身没什么权重,还要被分...

0 321
帝国CMS怎样配置勾选会员注册协议才能注册
帝国CMS怎样配置勾选会员注册协议才能注册

帝国CMS默认注册是没有会员注册协议的。但如果从严谨的角度出发,不勾选&ldqu...

0 276
帝国cms前台会员投稿之后转到该信息页面
帝国cms前台会员投稿之后转到该信息页面

帝国cms投稿之后跳转到信息详情页要怎么做呢?...

0 430
帝国cms怎样制作多语言数据包?
帝国cms怎样制作多语言数据包?

许多帝国cms带有多语言版本,如果每个语言都添加一次程序,不仅开发比较麻烦,维...

0 279
帝国cms数据库全部表名与含义解读
帝国cms数据库全部表名与含义解读

帝国cms系统有200多张数据表,不同的数据库分别有不同的含义。现将帝国cms系...

0 1012
帝国cms灵动标签日期用英文显示的方法
帝国cms灵动标签日期用英文显示的方法

我们知道,帝国cms的日期可以根据需要调用问多种格式,如x年x月x日、年-月-日、...

0 273
帝国cms中的tag标签怎样以中文url的形式展示
帝国cms中的tag标签怎样以中文url的形式展示

我们知道,url中包含中文可以更好的匹配搜索关键词,在排名上有一定的促进效果...

0 266
帝国CMS提示信息函数printerror()怎么用?
帝国CMS提示信息函数printerror()怎么用?

我们知道js有alert属性可用于弹窗提示,但比较难看。帝国cms的弹窗提示虽然同...

0 332
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入