网站模板库
  • 首页
  • web前端工具
    • HTML/JS转换工具
    • JS/HTML格式化工具
    • 字母/英文大小写转换工具
    • robots.txt文件生成工具
    • Js压缩/格式化工具
    • Css在线压缩工具_代码格式化
  • 关于我们
    • 免责声明
    • 联系我们
    • 广告服务
    • 服务项目
    • 关于我们
    • 网站轮播
    • 公告
    • 成都优优科技专用
    • 按行业分类
  • web学院
    • 服务器教程
    • 学习资料
      • 基础书籍
      • 交互书籍
      • 入门教程
      • 特效分类
    • 案例分享
    • web资讯
  • 网页特效
    • 图片特效
    • 导航特效
    • 滑动按钮
    • 表单特效
    • 文字特效
    • 弹窗特效
    • 其他特效
  • 织梦模板
    • 科技/电子/数码/通信
    • 文化/艺术/广告/传媒
    • 装修/设计/家居/家具
    • 基建/施工/地产/物业
    • 餐饮/酒店/旅游/票务
    • 食品/果蔬/饮料/日用
    • 服饰/珠宝/礼品/玩具
    • 摄影/婚庆/家政/生活
    • 运动/健身/体育/器材
    • 学校/教育/培训/科研
    • 美容/保健/医院/医疗
    • 金融/财税/咨询/法律
    • 政府/组织/集团/协会
    • 汽车/物流/交通/搬运
    • 机械/设备/制造/仪器
    • 化工/环保/能源/材料
    • 农业/畜牧/养殖/宠物
    • 其他模版
    • IT/软件/信息/互联网
  • 手机模板
    • 手机APP模板
    • 微信小程序模板
    • wap
  • 网站模板
    • joomla模板
    • Drupal模板
    • z-blog模板
    • EyouCms模板
    • Bootstrap模板
    • 帝国cms模板
    • CmsEasy模板
    • MetInfo模板
    • 购物商城模板
      • Shopify主题
      • PrestaShop主题
    • 后台模板
    • 纯HTML模板
    • ecshop模板
    • phpwind模板
    • pbootcms模板
    • phpcms模板
    • wordpress模板
    • discuz模板
  • 教程
    • 织梦教程
    • Discuz教程
    • WordPress教程
    • Phpcms教程
    • Phpwind教程
    • ECShop教程
    • Joomla教程
    • Drupal教程
    • zblog教程
    • EyouCMS教程
    • 帝国cms教程
    • MetInfo教程
    • CmsEasy教程
登录
当前位置:网站模板库 > 教程 > 织梦教程 > dedecms栏目链接怎么调用
商业源码 织梦教程 2023-09-14 8:28:02

dedecms栏目链接怎么调用

dedecms栏目链接怎么调用,第1张

进入后台找到需要优化的栏目 点击后面的更改 

栏目列表选项:也可以选着 链接到第一页 

栏目属性:选着最终列表栏目 除非你的那个栏目是频道

这个是后台设置 前台的模板标签的使用方法

标签名称:channel

标记简介:织梦常用标记,通常用于网站顶部以获取站点栏目信息,方便网站会员分类浏览整站信息

功能说明:用于获取栏目列表

适用范围:全局使用

基本语法:

{dede:channel type='top' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}

 <li><a href='[field:typelink/]'>[field:typename/]</a> </li>

{/dede:channel}

参数说明:

typeid = '0' 栏目ID

reid = '0' 上级栏目ID

row = '100' 调用栏目数

col = '1' 分多少列显示(默认为单列)

type = 'son | sun' son表示下级栏目,self表示同级栏目,top顶级栏目

currentstyle = '' 应用样式

底层模板字段:

ID(同 id),typeid, typelink, typename, typeurl,typedir(仅表示栏目的网址)

例:

{dede:channel type='top'}

<a href='[field:typelink /]'>[field:typename/]</a>

{/dede:channel}

注:在没有指定typeid的情况下,type标记与模板的环境有关,如,模板生成到栏目一,那么type='son'就表示栏目一的所有子类

可以用代码二次开发,我给你讲一下我的实现方法。

首先要添加一个作者栏目,然后在栏目里面添加作者文档,定义一个模板,模板中用{dede:sql}调用这个作者的所有小说即可。

代码如下:

{dede:sql sql="Select id,title,litpic,writer,description from dede_archives where writer=~title~ order by pubdate DESC"}<li><a href="[field:id runphp='yes'] $id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id] "><img src=[field:litpic/] width="114px" height="160px"/><h2>[field:title/] - [field:writer/]</h2><p>[field:description/]</p></a></li>{/dede:sql}

然后在小说更新的时候添加个自定义字段,作者链接,模板的作者处调用该字段即可,如果没有作者,则留空。

代码如下:

<a href="{dede:fieldofficialdemo runphp='yes'}if(@me =='http://') @me='#';else @me=@me;{/dede:fieldofficialdemo}">{dede:fieldwriter/}</a>

这样的好处是符合逻辑,并且作者页面可以生成静态,坏处是工作量变大,如果你图简单,可以自己做个authorphp页面,接受传参,里面直接按照传参搜索数据库就可以了,然后小说模板中作者处调用如下代码:

authorphpkey=[fieldwriter /]

这样也可以啊。

1、打开dedecms织梦管理后台,用管理员账户密码登陆。

2、点击核心----网站栏目管理-----选择一个栏目后面的,点击更改。

3、常规选项  高级选项  栏目内容中选择{高级选项},填写栏目的SEO标题,复制代码{dede:fieldseotitle /}并记住栏目模板的名称list_articlehtm。点击下面的确定保存。

4、点击模板默认模板管理找到模板文件名list_articlehtm,点击模板后面的修改,弹出修改模板代码页面。

5、打开list_articlehtm,找到<title>标题,将{dede:fieldtitle /}修改为 {dede:fieldseotitle /},点击保存。

6、依次点击生成-------更新栏目HTML------更新所有----------生成HTML点开栏目的页面,就完成调用了。

Dedecms去掉URL中a目录的方法有两个:

方法一:

如果你是新站我们可以在创建时文章栏目的时,选择网站根目录或者cms根目录,这样就会去掉/a/

1、首选在系统设置那的系统基本参数那,文档HTML默认保存路径,把a去掉。

2、然后在到栏目管理那修改下,文件保存目录,自己命名。

方法二:

如果直接替换目录/a/而,文章中没去了对网站排名不好,会有很多死链接了,我们直接在Dedecms后台中命令中执行下面sql即可,然后重新生成页面。

输入,代码如下:

UPDATE dede_arctype SET typedir=REPLACE(typedir,'a/','')

这个可以用添加自定义字段来做。增加一个叫做fujian的字段,后台发布上传附件,然后模板直接调用{dede:field name='fujian'/}就能调用这个链接。这个功能之前做过,不明白的追问我。

dede57伪静态设置七步法:

第一步、后台-系统参数-核心设置-是否使用伪静态:选择“是”;

注:你的网站空间是否支持伪静态,你可以与空间的IDC商联系一下,如果是自己的服务器,那就更好办了,自己动手,丰衣足食。一般来说,空间都是支持伪静态的。Apache服务器伪静态相对简单,直接在htaccess文件中加入相应伪静态规则即可;而IIS服务器伪静态的实现,则需要加载Rewrite组件,然后配置httpdini文件。

第二步、如果你的网站已经存在生成的静态栏目或文章HTML,那么只需在后台-系统-SQL命令行工具中执行如下语句:

将所有文档设置为“仅动态浏览”:

update dede_archives set ismake=-1

将所有栏目设置为“使用动态页”:

update dede_arctype set isdefault=-1

第三步、列表页、文章页伪静态修改

打开/include/helpers/channelunithelperphp。

(1)查找:

//动态文章

if($cfg_rewrite == 'Y')

{

return $GLOBALS["cfg_plus_dir"]"/view-"$aid'-1html';

}

替换为

//动态文章

if($cfg_rewrite == 'Y')

{

return "/DedeCMS/DedeCMS57-"$aid'-1html';

}

意思是:将默认的/plus/view-1-1html文章链接格式改为/DedeCMS/DedeCMS57-1-1html。

(2) 查找:

//动态

$reurl = $GLOBALS['cfg_phpurl']"/listphptid="$typeid;

替换为

//动态

$reurl = "/category/list-"$typeid"html";

意思是:将默认的频道或是列表页URL/plus//listphptid=1变更为/dedecms/list-1html形式。

第四步、列表分页伪静态修改

打开/include/arclistviewclassphp

查找:

$plist = str_replace('phptid=', '-', $plist);

替换为

$plist = str_replace('plus/listphptid=', ‘DedeCMS/DedeCMS57-', $plist);

将默认的plus/listphptid=替换成RMB/list-;

意思是:将默认的列表分页链接格式plus/listphptid=x$x$xl修改为DedeCMS/DedeCMS57-x-x-xhtml。

第五步、文章分页伪静态

打开/include/arcarchivesclassphp,找到获取动态的分页列表GetPagebreakDM()函数末尾处:

查找:

$PageList = str_replace("plus/viewphptid=","DedeCMS/DedeCMS57-",$PageList);

替换为

$plist = str_replace('plus/viewphptid=', ’DedeCMS/DedeCMS57-', $plist);

将默认的plus/viewphptid=替换成RMB/huilv-;

意思是:将默认的文章分页链接格式plus/viewphptid=x$x$xl修改为DedeCMS/DedeCMS57-x-x-xhtml

第六步、TAG标签伪静态

DedeCms默认的TAG标签URL,形如/tagsphp/dedecms模板 /,是不是觉得有个问号不怎么爽,我们改成/tags/dedecms模板 /,是不是好看多了。

下面我们来改一下,打开/include/taglib/taglibphp:

查找:

$row['link'] = $cfg_cmsurl"/tagsphp/"urlencode($row['keyword'])"/";

替换为

$row['link'] = $cfg_cmsurl"/tags/"urlencode($row['keyword'])"/";

这样就修改好了,上传你到你的网站,切记:要记得将原网站备份哦!!

第七步、httpdini伪静态规则:

[ISAPI_Rewrite]

# 3600 = 1 hour

CacheClockRate 3600

RepeatLimit 32

RewriteRule ^()/RMB/list-([0-9]+)\html $1/plus/list\php\tid=$2 [I]

RewriteRule ^()/RMB/list-([0-9]+)-([0-9]+)-([0-9]+)\html $1/plus/list\php\tid=$2&TotalResult=$3&PageNo=$4 [I]

RewriteRule ^()/RMB/huilv-([0-9]+)-([0-9]+)\html $1/plus/view\php\arcID=$2&pageno=$3 [I]

RewriteRule ^()/()_()_([0-9]+)\html $1/huilv/from=$2&to=$3&num=$4 [I]

RewriteRule ^()/tags\html $1/tags\php [I]

RewriteRule ^()/tags/()(:(\)) $1/tags\php\\/$2 [I]

RewriteRule ^()/tags/()\/(:(\)) $1/tags\php\\/$2\/ [I]

RewriteRule ^()/tags/()\/([0-9])(:(\)) $1/tags\php\\/$2\/$3 [I]

RewriteRule ^()/tags/()\/([0-9])\/(:(\)) $1/tags\php\\/$2\/$3\/ [I]

将上面代码保存为:httpdini 上传到网站的根目录。

如无特特殊需求建议采用官方默认的生成静态的页面方式浏览。

首先在dede后台开启伪静态(开启的方法在系统参数-核心设置)

第一步 首先栏目和文章最好设置成动态浏览 这样才不会生成静态html文件

第二步 设置重写规则 在系统目录下加一个 htaccess文件 内容为:

复制代码

代码如下:

RewriteEngine On

RewriteRule ^plus/list-([0-9]+)html$ /plus/listphptid=$1

RewriteRule ^plus/list-([0-9]+)-([0-9]+)-([0-9]+)html$ /plus/listphptid=$1&totalresult=$2&PageNo=$3

RewriteRule ^plus/view-([0-9]+)-1html$ /plus/viewphparcID=$1

RewriteRule ^plus/view-([0-9]+)-([0-9]+)html$ /plus/viewphpaid=$1&pageno=$2

iis文件写法

复制代码

代码如下:

#首页伪静态规则,如果不使用动态首页,请勿必删除这一行,否则打开首页会出现死循环

RewriteRule ^()/indexhtml $1/indexphp [I]

#列表页伪静态规则

RewriteRule ^()/category/list-([0-9]+)html $1/plus/listphptid=$2 [I]

RewriteRule ^()/category/list-([0-9]+)-([0-9]+)-([0-9]+)html $1/plus/listphptid=$2&TotalResult=$3&PageNo=$4 [I]

#文章页伪静态规则

RewriteRule ^()/archives/view-([0-9]+)-([0-9]+)html $1/plus/viewphparcID=$2&pageno=$3 [I]

#搜索伪静态规则

RewriteRule ^()/searchhtml(:()) $1/searchphp$2 [I]

#TAG标签伪静态规则

RewriteRule ^()/tagshtml $1/tagsphp [I]

RewriteRule ^()/tags/()(:()) $1/tagsphp/$2 [I]

RewriteRule ^()/tags/()/(:()) $1/tagsphp/$2/ [I]

RewriteRule ^()/tags/()/([0-9])(:()) $1/tagsphp/$2/$3 [I]

RewriteRule ^()/tags/()/([0-9])/(:()) $1/tagsphp/$2/$3/ [I]

如果你的系统支持url重写,到这里就可以用伪静态访问了

第三步更改重写的URL

如果用默认的设置, 访问的URL是:

复制代码

代码如下:

http://wwwXXXXcom/plus/view-131-1html

这样的形色, 我们是可以更改这种样式的

找到文件/include/helpers/channelunithelperphp打开

可以看到有这样的语句

复制代码

代码如下:

return $GLOBALS["cfg_plus_dir"]"/view-"$aid'-1html';

这就是文章的url形色

$reurl = $GLOBALS['cfg_phpurl']"/listphptid="$typeid;

这是列表的重写url

可以使url更短一点,完成可以写成:

复制代码

代码如下:

return "/view-"$aid'-1html';

和

$reurl = "/list-"$typeid"html";

这时重写规则也要更新

复制代码

代码如下:

RewriteEngine On

RewriteRule ^list-([0-9]+)html$ /plus/listphptid=$1

RewriteRule ^list-([0-9]+)-([0-9]+)-([0-9]+)html$ /plus/listphptid=$1&totalresult=$2&PageNo=$3

RewriteRule ^view-([0-9]+)-1html$ /plus/viewphparcID=$1

RewriteRule ^view-([0-9]+)-([0-9]+)html$ /plus/viewphpaid=$1&pageno=$2

更进一步,还可以把view换成自己的任何词语,这也要把include/arcarchivesclassphp文件中的view也一样替换。

发布选项: 生成HTML 仅动态浏览 发文章的时候选一下也不多事。为了以后升级 尽量减少修改文件。

以下这没有试,大家按需要测试吧~~

修改数据库

将所有文档设置为“仅动态”,可以进入数据库管理中,执行下面命令:

复制代码

代码如下:

update dede_archives set ismake=-1

并将ismake的默认值设置为 -1即动态。

将所有栏目设置为“使用动态页”,可以进入数据库管理中,执行下面命令:

复制代码

代码如下:

update dede_arctype set isdefault=-1

DedeCmsTAG标签伪静态

DedeCms默认的TAG标签URL,形如/tagsphp/dedecms57/,非常之难看。打开/include/taglib/taglibphp,找到lib_tag()函数下的:

复制代码

代码如下:

$row['link'] = $cfg_cmsurl"/tagsphp/"urlencode($row['keyword'])"/";

替换为

$row['link'] = $cfg_cmsurl"/tags/"urlencode($row['keyword'])"/";

修改分页代码

我们需要修改include/arctaglistclassphp,将分页函数替换为:

复制代码

代码如下:

/ 获取动态的分页列表

@access public

@param int $list_len 列表宽度

@param string $listitem 列表样式

@return string

/

function GetPageListDM($list_len,$listitem="info,index,end,pre,next,pageno")

{

$prepage="";

$nextpage="";

$prepagenum = $this->PageNo - 1;

$nextpagenum = $this->PageNo + 1;

if($list_len == "" || preg_match("/[^0-9]/", $list_len))

{

$list_len = 3;

}

$totalpage = $this->TotalPage;

if($totalpage <= 1 && $this->TotalResult > 0)

{

return "<span class="pageinfo">共1页/"$this->TotalResult"条</span>";

}

if($this->TotalResult == 0)

{

return "<span class="pageinfo">共0页/"$this->TotalResult"条</span>";

}

$maininfo = "<span class="pageinfo">共{$totalpage}页/"$this->TotalResult"条</span>rn";

$purl = $this->GetCurUrl();

$basename = basename($purl);

$tmpname = explode('', $basename);

$purl = str_replace($basename, '', $purl)urlencode($this->Tag);

//var_dump($purl);exit;

//$purl = "/"urlencode($this->Tag);

//获得上一页和下一页的链接

if($this->PageNo != 1)

{

$prepage="<li><a href='"$purl"-$prepagenum'html>上一页</a></li>rn";

$indexpage="<li><a href='"$purl"-1html'>首页</a></li>rn";

}

else

{

$indexpage="<li><a>首页</a></li>rn";

}

if($this->PageNo!=$totalpage && $totalpage>1)

{

$nextpage="<li><a href='"$purl"-$nextpagenumhtml'>下一页</a></li>rn";

$endpage="<li><a href='"$purl"-$totalpagehtml'>末页</a></li>rn";

}

else

{

$endpage="<li><a>末页</a></li>rn";

}

//获得数字链接

$listdd="";

$total_list = $list_len 2 + 1;

if($this->PageNo >= $total_list)

{

$j = $this->PageNo - $list_len;

$total_list = $this->PageNo + $list_len;

if($total_list > $totalpage)

{

$total_list = $totalpage;

}

}

else

{

$j=1;

if($total_list > $totalpage)

{

$total_list = $totalpage;

}

}

for($j; $j<=$total_list; $j++)

{

if($j == $this->PageNo)

{

$listdd= "<li class="thisclass"><a>$j</a></li>rn";

}

else

{

$listdd="<li><a href='"$purl"-$jhtml'>"$j"</a></li>rn";

}

}

$plist = '';

if(preg_match('/info/i', $listitem))

{

$plist = $maininfo' ';

}

if(preg_match('/index/i', $listitem))

{

$plist = $indexpage' ';

}

if(preg_match('/pre/i', $listitem))

{

$plist = $prepage' ';

}

if(preg_match('/pageno/i', $listitem))

{

$plist = $listdd' ';

}

if(preg_match('/next/i', $listitem))

{

$plist = $nextpage' ';

}

if(preg_match('/end/i', $listitem))

{

$plist = $endpage' ';

}

return $plist;

}

栏目 静态 代码 模板 动态
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms栏目链接怎么调用

商业源码 钻石

分享到:
上一篇
织梦cms如何改变文章发布的顺序
下一篇
谁清楚phpcms和dedecms各个缺点和优点

相关推荐

android上的socket通信的开源框架有哪些

android上的socket通信的开源框架有哪些

Linux下如何找到FTP服务器的配置文件

Linux下如何找到FTP服务器的配置文件

discuz论坛官网是干嘛的

discuz论坛官网是干嘛的

浪潮服务器用u盘启动能看到固态硬盘数据吗?

浪潮服务器用u盘启动能看到固态硬盘数据吗?

0条评论

发表评论 取消回复

要发表评论,您必须先登录。

提供最优质的资源集合

立即查看 了解详情
网站模板库

主题/付费下载/查看/余额管理/自定义积分,集成支付,卡密,推广奖励等。

本站导航
  • 链接标题
友情链接
  • 链接标题
快速搜索
本站由钛宇宙强力驱动
友情链接:
    商业源码网蜀ICP备2023005044号
    网站模板库
    • 登录
    • 注册
    网站模板库
    • 首页
    • web前端工具►
      • HTML/JS转换工具
      • JS/HTML格式化工具
      • 字母/英文大小写转换工具
      • robots.txt文件生成工具
      • Js压缩/格式化工具
      • Css在线压缩工具_代码格式化
    • 关于我们►
      • 免责声明
      • 联系我们
      • 广告服务
      • 服务项目
      • 关于我们
      • 网站轮播
      • 公告
      • 成都优优科技专用
      • 按行业分类
    • web学院►
      • 服务器教程
      • 学习资料►
        • 基础书籍
        • 交互书籍
        • 入门教程
        • 特效分类
      • 案例分享
      • web资讯
    • 网页特效►
      • 图片特效
      • 导航特效
      • 滑动按钮
      • 表单特效
      • 文字特效
      • 弹窗特效
      • 其他特效
    • 织梦模板►
      • 科技/电子/数码/通信
      • 文化/艺术/广告/传媒
      • 装修/设计/家居/家具
      • 基建/施工/地产/物业
      • 餐饮/酒店/旅游/票务
      • 食品/果蔬/饮料/日用
      • 服饰/珠宝/礼品/玩具
      • 摄影/婚庆/家政/生活
      • 运动/健身/体育/器材
      • 学校/教育/培训/科研
      • 美容/保健/医院/医疗
      • 金融/财税/咨询/法律
      • 政府/组织/集团/协会
      • 汽车/物流/交通/搬运
      • 机械/设备/制造/仪器
      • 化工/环保/能源/材料
      • 农业/畜牧/养殖/宠物
      • 其他模版
      • IT/软件/信息/互联网
    • 手机模板►
      • 手机APP模板
      • 微信小程序模板
      • wap
    • 网站模板►
      • joomla模板
      • Drupal模板
      • z-blog模板
      • EyouCms模板
      • Bootstrap模板
      • 帝国cms模板
      • CmsEasy模板
      • MetInfo模板
      • 购物商城模板►
        • Shopify主题
        • PrestaShop主题
      • 后台模板
      • 纯HTML模板
      • ecshop模板
      • phpwind模板
      • pbootcms模板
      • phpcms模板
      • wordpress模板
      • discuz模板
    • 教程►
      • 织梦教程
      • Discuz教程
      • WordPress教程
      • Phpcms教程
      • Phpwind教程
      • ECShop教程
      • Joomla教程
      • Drupal教程
      • zblog教程
      • EyouCMS教程
      • 帝国cms教程
      • MetInfo教程
      • CmsEasy教程

      弹窗标题

      这是一条网站公告,可在后台开启或关闭,可自定义背景颜色,标题,内容,用户首次打开关闭后不再重复弹出,此处可使用html标签...