DEDECMS织梦的单页文章是建设网站一种非常高效的方式,非常方便快捷。不过有时候我们需要在首页或者列表页面调用某些单页的内容,如首页调用关于我们单页的介绍信息等。织梦DedeCMS怎么实现在除单页以外的页面,调用单页的文章内容呢?

  织梦DedeCMS实现其他页面调用单页文章内容

  织梦其他页面调用单页文章内容使用SQL标签首先需要做的,就是把SQL语句写出来,调用的SQL语句如下:

{dede:sqlsql="SELECTbodyFROM`dede_sgpage`whereaid=1"}
[field:bodyfunction="htmlspecialchars(cn_substr(@me,130))"/]
{/dede:sql}

  sql="SELECT body这里的body就是文章内容字段,FROM `dede_sgpage`这里的dede_sgpage是单页文档数据表,where aid = 1 这里的aid = 1 就是你单页文档所在的id,你需要调用哪个单页文档的内容,就把这个换成所在文档的id就可以了。

  以下的语句则是使用织梦的两个函数,对调用的字段数据进行了必要的处理:

  [field:body function="htmlspecialchars(cn_substr(@me,130))"/]

  field:body 这里的body如上,就是文章的内容,(cn_substr(@me,130) 这里的130就是你准备让内容显示的字数,可以自己调整。

  采用上述方法虽然可以成功调用,但是会出现一个问题,就是会把源代码也调用出来。

这个时候可以使用下面这个代码

{dede:sqlsql="SELECTbodyFROM`dede_sgpage`whereaid=1"}
[field:bodyfunction="htmlspecialchars(cn_substr(Html2text(@me),600))"/]
{/dede:sql}

 Html2text() 函数是去掉html标签代码。cn_substr(str,750) 函数是截取字符串长度,cn_substr表示截取600个字符换算成汉字就是300个汉字。

这里再做个延伸:如何任意调用数据库中的内容呢?

其实除了上面的例子外,在Dede系统里面,可以自由使用SQL语句来配合织梦标签进行更多的个性化调用。基本参照格式为:

 代码如下:

{dede:sqlsql="select字段From表名称where条件语句"}
[field:字段名/]
{/dede:sql}

  由上面这种基本格式,我们就可以基本转换出一条调用文档列表的调用标签了,代码为:

 代码如下:

{dede:sqlsql="select*Fromdede_archiveslimit10"}
<li>·<ahref="/plus/view.php?aid=[field:id/]">[field:title/]</a></li>
{/dede:sql}

  大家看到了上面的文档链接的底层模板地址的是动态的,那么我们要怎么样来进行转换,让他链接到静态地址呢,这里我们只需要对[field:id/]进行一下转换,转换后的完整代码为:

代码如下:

{dede:sqlsql="SELECT*FROMdede_archiveslimit10"}
<li>·<ahref="[field:idrunphp='yes']]"title="[field:title/]"target="_blank">[field:titlefunction=cn_substr(@me,30,0)/]</a></li>
{/dede:sql}

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。