在本文中,我们将为您详细介绍织梦CMS统计当前栏目下子栏目数量的实现办法的相关知识,并且为您解答关于织梦栏目内容调用的疑问,此外,我们还会提供一些关于CMS案例:phpcmsv9在当前栏目下获取父栏目
在本文中,我们将为您详细介绍织梦CMS统计当前栏目下子栏目数量的实现办法的相关知识,并且为您解答关于织梦栏目内容调用的疑问,此外,我们还会提供一些关于CMS案例:phpcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接、Dedecms(织梦CMS)父栏目链接至第一子栏目方法、Dedecms实现自动统计当前栏目文档总数的方法、DEDECMS怎么获取当前栏目及所有子栏目的文章数量的有用信息。
本文目录一览:- 织梦CMS统计当前栏目下子栏目数量的实现办法(织梦栏目内容调用)
- CMS案例:phpcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接
- Dedecms(织梦CMS)父栏目链接至第一子栏目方法
- Dedecms实现自动统计当前栏目文档总数的方法
- DEDECMS怎么获取当前栏目及所有子栏目的文章数量
织梦CMS统计当前栏目下子栏目数量的实现办法(织梦栏目内容调用)
今天在给一客户网站建设时,需要用到统计子栏目数量。主要是利用{dede:field.typeid/}这个标签实现。标签如下:
{dede:field.typeid runphp='yes'}
$id = @me;
global $dsql;
$sql="select COUNT(id) as num from dede_arctype WHERE reid=$id";
$row=$dsql->GetOne($sql);
@me= $row['num'];
{/dede:field.typeid}
非常需要注意红色字体。先引入$dsql,然后就可以直接使用DEDE自带的类了。
$row=$dsql->GetOne($sql); 在这里等于
$query=mysql_query($sql);
$row=mysql_fetch_array($query); 本文章网址:http://www.ppssdd.com/code/14656.html。转载请保留出处,谢谢合作!
CMS案例:phpcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接
《CMS案例:PHPcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接》要点:
本文介绍了CMS案例:PHPcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接,希望对您有用。如果有疑问,可以联系我们。
/*上面是获取当前父栏目的名称与连接*/
> <a href="http://zhujllove.blog.163.com/{$CATEGORYS[$CAT[catid]][url]}" target="_blank">{$CATEGORYS[$CAT[catid]][catname]}</a>
/*上面是获取当前栏目的名称与连接*/
Dedecms(织梦CMS)父栏目链接至第一子栏目方法
前言
有时候在做网站的过程中,可能会遇到如下需求:点击导航菜单中的栏目,打开页面为该栏目的第一子栏目。
看到这个需求的第一眼,我们就能想到直接加链接,可是网站要求后期更改的可控性和灵活性,不能在导航直接把链接写死,那么只有在后台处理了。
切换到后台,好在这里还有外部链接
一项,接下来换类型,改文件保存目录
,生成静态文件,前端预览,搞定!
But!!!
添加文章的时候就郁闷了,居然在文章的栏目中找不到该栏目的子栏目了!没错,是找不到了,你说这是有多坑爹?而且细心观察的话,你会发现无论是前台还是后台的栏目排序,这个外部链接的父栏目都会排到最后。跟不上节奏啊...
怎么办呢?想到了一个折中方法,请看下面。
操作
一、为该父栏目新建封面模板,比如index_news.htm
,页面内容代码为:{dede:field.content/}
二、将父栏目类型设置为频道封面
,封面模板设置为index_news.htm
(名称不要求,只要模板对应即可)
三、在父栏目的栏目内容
处,点击左上角的源码
按钮,切换到源码模式,写上如下Js:
<script>
window.location.href="将要跳转的目录地址";
</script>
然后保存生成栏目即可。
总结
Ok,在不影响结构、不修改cms源码以及后期可修改地址的情况下,问题得以完美解决。
因为本身问题不复杂,我就没截图说明了,只是在这里分享下解决方法,希望对大家有帮助。
也希望织梦团队下次更新能够完善这些琐事
。
Dedecms实现自动统计当前栏目文档总数的方法
本文实例讲述了Dedecms实现自动统计当前栏目文档总数的方法。分享给大家供大家参考。具体分析如下:
统计当前栏目有多少文章数量我们常用的有两种办法,一种直接在模板页面运行PHP 并执行sql,还有一种是直接在extend.func.PHP中加一个统计函数,然后在模板页面调用即可.
sql语句中,有统计的函数,我们可以通过在织梦中使用sql语句统计的方法,在列表页内显示该栏目共有多少篇文章,这样做的好处是,有助于提升用户体验,比如说我一个文章列表下面有10篇文章,就自动统计出10篇,到20篇的时候自动统计成20篇,这样用户对网站的信息就一目了然了.
现将这2种方法分述如下:
第一种:runPHP='yes'
第一种实现方法就是利用织梦自带的runPHP参数来实现这个功能,只需要在您需要显示统计数量的地方直接加入以下代码:
Getone("select count(*) as dd from dede_archives where typeid = @me"); @me = $row['dd']; {/dede:field.typeid}
1.本代码无法统计副栏目的文档;
2.本代码可用在列表和内容页;
3.代码生成后的效果的动态的,如果添加完内容,必须重新生成相关页面;
4.无法统计无主表(例如:分类信息)的文档总数;
第二种:function
第二种就是我们通常所说的函数,在织梦(Dedecms)中,我们可以利用自定义函数来实现各种效果,实现的具体方法为:
1.在/include/extend.func.PHP 文件的?>上一行加入以下代码:
Getone("select count(*) as dd from dede_archives where typeid = $tid"); return $row['dd']; }
希望本文所述对大家的Dedecms建站有所帮助。
DEDECMS怎么获取当前栏目及所有子栏目的文章数量
以下代码用来解决查询当前栏目及当前栏目下所有子栏目的文章总数,添加到/include/common.func.php
或者 /include/extend.func.php中,然后在模板中调用getTotalArcByTid(1)。
推荐学习:织梦cms
代码如下:
/* * 返回符合记录的文章数量 * @description DEDE不允许执行子查询,解决栏目下文章统计的问题 * @param $level 为真时查询所有子类目 * */ function getTotalArcByTid($tid, $level=TRUE) { global $dsql; $level==TRUE && $tid = GetSonTypeID($tid); $sql = "SELECT count(id) as total from `dede_archives` where typeid in($tid)"; $result = $dsql->GetOne($sql); return $result['total']; } /* * 递归获取符合条件的子栏目 * @param $tid 栏目ID * @return string * */ function GetSonTypeID($tid) { global $dsql; $dsql->SetQuery("Select id From `dede_arctype` where reid in($tid) And ishidden<>1 order by sortrank"); $dsql->Execute($tid); $typeid = ''; while($row=$dsql->GetObject($tid)) { $typeid .= "{$row->id},"; $typeid .= GetSonTypeID($row->id); } return trim($typeid,','); }
调用方法:
模板中调用的方法一般为:
{dede:field.typeid function="getTotalArcByTid(@me)"/}
或者
[field:typeid function="getTotalArcByTid(@me)"/]
以上就是DEDECMS怎么获取当前栏目及所有子栏目的文章数量的详细内容,更多请关注php中文网其它相关文章!
今天的关于织梦CMS统计当前栏目下子栏目数量的实现办法和织梦栏目内容调用的分享已经结束,谢谢您的关注,如果想了解更多关于CMS案例:phpcms v9 在当前栏目下获取父栏目与当前栏目的名称与连接、Dedecms(织梦CMS)父栏目链接至第一子栏目方法、Dedecms实现自动统计当前栏目文档总数的方法、DEDECMS怎么获取当前栏目及所有子栏目的文章数量的相关知识,请在本站进行查询。
本文标签: