网站建设时经常需要输出某个栏目的子栏目,对应的在子栏目列表页也需要输出父级栏目的子栏目列表,thinkcmf可以输出所有子栏目,但却无法在子栏目列表页也适用, 因此就需要通过对数据库表查询来完成需求: <?php $RS = M('terms')->where(array('term_id'=>$term_id))->find(); $parent = M('terms')->where(array('term_id'=>$RS['parent']))->find…
以前从来没写过递归(其实想想,对算法完全没概念),刚好有这个需求,试着写了一下,发现也挺容易的,特别记录一下. 数据库是dedecms默认的,dede_arctype是保存栏目的表,reid是栏目的父级栏目id. $array = array(); get_sons($type, $array); var_dump($array); function get_sons($type, &$current_array){ $result = mysql_query("select id fr…
因DEDEV5起,加强了对SQL注入和安全的检查,导致无法查询一些正常的子查询的SQL. 以下代码用来解决查询当前栏目及当前栏目下所有子栏目的文章总数,添加到/include/common.func.php 或者 /include/extend.func.php中,然后在模板中调用getTotalArcByTid(1). /* * 返回符合记录的文章数量 * @description DEDE不允许执行子查询,解决栏目下文章统计的问题 * @param $level 为真时查询所有子类目 * *…
在网站文件中找到include-taglib-chanel.lib.php,和chaneartllist.lib.php 下载用php的IDE打开, chanel.php加入limit属性修改如下 <?php /** * 获取栏目列表标签 * * @version $Id: channel.lib.php 1 9:29 2010年7月6日Z tianya $ * @package DedeCMS.Taglib * @copyright Copyright (c) 2007 - 2010, Des…
一般情况下,在dede织梦系统中列表页.栏目页和文章页中获取当前所在栏目名称只需要代码:{dede:type}[field:typename]{/dede:type}即可,不需要定义ID,默认的就是当前栏目名称,这种方法同时也适用于多级分类.当然还有别的方式如下: 找到include/inc_functions.php(此函数为公共函数,当程序运行时自动加载) 在尾部添加新的函数如下: 复制代码 代码如下: //通过栏目ID获取栏目的名称 function GetTypeName($typeid…
使用dedecms建网站,有时为了某种功能的需要,需要通过代码判断当前栏目下是否有子栏目,如果有,显示一种样式,如果没有,显示另一种样式. dedecms判断当前栏目下是否有子栏目可使用以下的代码进行判断: {dede:field name=typeid runphp="yes"} global $dsql; $sql = "SELECT id From `dede_arctype` WHERE reid='@me' And ishidden<>1 order b…
phpcms 列表页中,如何调用其下的所有子栏目(或特定的子栏目),具体的写法如下,感兴趣的朋友可以参考下,希望对大家有所帮助 代码如下: {pc:get sql="select * from phpcms_category where catid in(你的子栏目ID)" return="data"} {loop $data $r} <a href="{$r['url']}">{$r['catname']}</a> {/…
本文介绍了在dedecms中,实现文章标题-栏目名称-网站名 导航的方法,有需要的朋友参考下. 在dedecms中实现“文章标题-栏目名称-网站名”导航的方法.   第一种: 在/include/inc_archives_view.php文件中. 查找tp.typedir,然后替换成tp.typedir,tp.typename. 最后在文章模板中用{dede:field name=’typename’/}调出来.   第二种: “{dede:field name=’title’/}-{dede:…
在DEDECMS中,提供了loop万能循环标签,但是此循环标签只能循环出该表中的字段,而“[field:arcurl/]”链接标签并不能被解析出来,而DEDECMS官方论坛上也没有找到相关的解决办法,所以只有自己动手写代码了! 这是官方提供的代码:{dede:loop table='dede_archives' sort='' row='4' if=''}<a href='[field:arcurl/]'>[field:title/]</a>{/dede:loop}以下是我的解决方…
需求: 我们用{dede:type}标签调用栏目相关内容时,同时需要调用该栏目的父级栏目的名称. {dede:type}标签的代码做了一下开发,支持这个调用了. 开发方法: 1.打开include/taglib/type.lib.php,找到函数lib_type下的代码: $row = $dsql->GetOne("SELECT id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitep…