开发者社区> 芝麻软件> 正文

DEDECMS之二 如何修改模板页

简介: 使用织梦系统最经常是为了仿站,那么模板应该怎么改? 这里主要谈谈关于比较常用的几个模板页 网站主页、列表页、内容页、栏目的调用 1.主页模板 常用组合方法:index.htm + head.htm + footer.htm 嵌套语句:{dede:include filename="head.htm"/} head.htm :网站头部(顶部+导航栏),所以也可继续拆分。
+关注继续查看

使用织梦系统最经常是为了仿站,那么模板应该怎么改?

这里主要谈谈关于比较常用的几个模板页

网站主页、列表页、内容页、栏目的调用

1.主页模板

常用组合方法:index.htm + head.htm + footer.htm

嵌套语句:{dede:include filename="head.htm"/}

head.htm :网站头部(顶部+导航栏),所以也可继续拆分。一般顶部内容为从body后开始至导航栏。

复制代码
导航栏 (自动获取栏目信息)
<div id="navtabs">
      <a href="{dede:global.cfg_cmsurl/}/" class="current">首页</a>
    {dede:channel type='top' row='10' currentstyle="<a href='~typelink~' >~typename~</a>"}
      <a href='[field:typeurl/]' >[field:typename/]</a>
       {/dede:channel}
</div>

二级栏目:直接指定所有二级链接,原网站都有js控制,直接拿来用就行
复制代码

footer.htm:网站底部,包含版权信息,具体看实际的布局,大部分网站的友情链接作为独立模块在底部,包含进来更方便。

首页调用文章列表的方法,通过标签进行嵌套就行

示例:

复制代码
{dede:arclist row='9' typeid='2' infolen='300'}
<li><div class="ntitle f_l">
·<a href="[field:arcurl/]" class="hei" title="[field:fulltitle/]" target="_blank">
[field:fulltitle  function='cn_substr(@me,80)'/]
</a></div>
<div class="ndate f_r"><a href="[field:arcurl/]" class="hui" target="_blank">[field:pubdate function="MyDate('Y-m-d',@me)"/]</a>
</div></li>
{/dede:arclist}
复制代码

效果:

dede arclist里field:body的调用方法:
用arclist调用附加表字段,要获取附加表内容,必须指定两个条件:1、指定channelid 属性;2、指定要获得的字段addfields='字段1,字段2'。

{dede:arclist row='5' channelid='1' addfields='body' typeid='1' orderby='rand'}
控制body的长度:[field:body function="cn_substr(html2text(@me),120)"/]
{/dede:arclist}

缩略标题

[field:title function='(strlen("@me")>60?cn_substr("@me",60)."…":"@me")'/]

 

2.文章列表页

栏目名称:{dede:field name='typename' /}

获取顶级栏目下的所有栏目:

复制代码
{dede:channel type='son' typeid='1'}
<li>
<a href="[field:typelink/]" title="[field:typename/]" style="color:#003366;background-position:-46px -78px;">[field:typename/]</a>
</li>
{/dede:channel}
复制代码

获取栏目下的文章分页列表

复制代码
{dede:list pagesize='5'}
<li>
<div class='fleft'>
<h1>
<a href="[field:arcurl/]" title='[field:title/]'>·[field:title/]</a>
<span class='addtime'>[field:pubdate function='strftime("%Y-%m-%d",@me)'/]</span>  <img src="/images/public/hot06.gif">
</h1>
<p>
       [field:body function='cn_substr(html2text(@me),350)'/]...
 </p>
</div>
    <a href="[field:arcurl/]" title='[field:title/]' class='a'>查看详情 >>></a><div class='clearfix'>
</div>
</li>
{/dede:list}
复制代码

分页

复制代码
<style type='text/css'>
.pagelist{padding-top: 10px;padding-bottom: 10px; text-align: center;}
.pagelist li{  display: inline;  line-height: 22px;}
.pagelist li a{margin-right: 5px;padding-right: 5px;padding-left: 5px;padding-top: 3px;padding-bottom: 3px;border: 1px solid #CCC;
         }
.thisclass {font-weight: bold;color: #C00;}
</style>

<ul class="pagelist"> {dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="5"/} </ul>
复制代码

效果:

3.文章内容页

文章标题:{dede:field.title/}

网站名称:{dede:global.cfg_webname/}

来源:{dede:field name='source'/}

标签:

复制代码
 <div class="singleout">
            <div class="singlein">
                <div class="news_show">
                    <h1 style="color:#003366;">{dede:field.title/}</h1>
                    <h2 style="border-top:#663300 1px dashed;color:#666666;">
发布者:{dede:field.writer/}
发布时间:{dede:field.pubdate function="MyDate('Y-m-d',@me)"/}    
点击:<script src="{dede:field name='phpurl'/}/count.php?view=yes&aid={dede:field name='id'/}&mid={dede:field name='mid'/}" type='text/javascript' language="javascript"></script>次
            </h2> <div class="showcontent">
                {dede:field.body/}
            </div> </div> </div> </div>
复制代码

 

上一篇下一篇

<ul> 
    <li>{dede:prenext get='pre'/}</li>
    <li>{dede:prenext get='next'/}</li>
</ul>

直接调用上一篇地址和下一篇地址的代码如下:

上一篇地址

{dede:prenext get='pro' runphp="yes"}preg_match_all('/<a.*?(?: |\\t|\\r|\\n)?href=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>(.+?)<\/a.*?>/sim', @me, $strResult, PREG_PATTERN_ORDER);@me=$strResult[1][0];{/dede:prenext}

下一篇地址

{dede:prenext get='next' runphp="yes"}preg_match_all('/<a.*?(?: |\\t|\\r|\\n)?href=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>(.+?)<\/a.*?>/sim', @me, $strResult, PREG_PATTERN_ORDER);@me=$strResult[1][0];{/dede:prenext}

内容分页

1.分页标签:“{dede:pagebreak/}”,一般是添加在“{dede:field.body/}”标签之后

2.进入系统—系统基本参数—性能选项,选择第二项:是否开启长文章自动分页,选择是即可。

3.发布文章的时候,需要在哪里设置分页,就在“编辑器”里面,选择以下:#P#, 在内容页自动插入文本 “#p#副标题#e#”

4.修改分页样式

修改文件位置:include/arc.archives.class.php找到静态页面分页方法GetPagebreak,即可修改,

默认生成代码模块如:<li><a>共1页:</a><li> <li><a>上一页</a><li> <li><a>1</a><li> <li><a>下一页</a><li>

 

4.栏目内容页

使用场景:栏目只有一个页面

使用方法:在栏目模板中用{dede:field.content/}调用

 

5.图片调用方法

1.<a href='[field:arcurl /]'><img src='[field:litpic/]' border='0' width='' height=''></a>

2.[field:imglink /]

3.<a href='[field:arcurl /]'> [field:image/]</a>

说明:

[field:imglink /]与<a href='[field:arcurl /]'>[field:image/]</a> 是完全等价的

 

在文章内容页加入图片标签:<img src="{dede:field name="litpic"/}" border="0">

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
PMS 修改禅道默认首页元素及展示
PMS 修改禅道默认首页元素及展示
37 0
【最全最详细】publiccms其他常用代码片段(内容、站点)
【最全最详细】publiccms其他常用代码片段(内容、站点)
65 0
织梦显示模板的PHP代码
织梦显示模板的PHP代码
47 0
【Django学习笔记 - 15】:admin站点编辑(关联对象在列表页中添加,编辑页调整、图片设置)2
【Django学习笔记 - 15】:admin站点编辑(关联对象在列表页中添加,编辑页调整、图片设置)
19 0
【Django学习笔记 - 15】:admin站点编辑(关联对象在列表页中添加,编辑页调整、图片设置)
【Django学习笔记 - 15】:admin站点编辑(关联对象在列表页中添加,编辑页调整、图片设置)
34 0
在Joomla中创建自定义404页面
默认情况下,Joomla不提供可以轻松创建和管理的404页面。当你的访问者访问你网站上的一个失效的URL时,404是非常有用的。 我将演示如何创建自定义404页面。 我们将创建一篇文章,添加一个菜单链接,然后在模板文件夹的文件中添加一些代码。
979 0
dedecms 模板自定义相关
dedecms  生成静态页的存放目录是根据dede_archives表中的senddate发布时间生成的Y/md 织梦cms  搜索结果页 模版,在templets/default/search.htm,更改搜索结果的分页样式在arc_searchviews.class.php  中的GetPageListDM此方法。
5177 0
+关注
芝麻软件
编程语言,框架相关专家
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
SEO学习步骤
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载