本篇文章给大家谈谈DedeCMS统计列表页栏目页文档总数的办法,以及列表页新闻数统计的知识点,同时本文还将给你拓展DedeCMS列表页,频道页获取当前栏目的父栏目名称、dedecms栏目列表页链接怎么
本篇文章给大家谈谈DedeCMS统计列表页栏目页文档总数的办法,以及列表页新闻数统计的知识点,同时本文还将给你拓展DedeCMS 列表页,频道页获取当前栏目的父栏目名称、dedecms 栏目列表页链接怎么优化、DedeCMS 统计栏目的新闻总数的调用办法、dedecms5.7栏目列表页分页URL优化等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- DedeCMS统计列表页栏目页文档总数的办法(列表页新闻数统计)
- DedeCMS 列表页,频道页获取当前栏目的父栏目名称
- dedecms 栏目列表页链接怎么优化
- DedeCMS 统计栏目的新闻总数的调用办法
- dedecms5.7栏目列表页分页URL优化
DedeCMS统计列表页栏目页文档总数的办法(列表页新闻数统计)
我们在使用DEDECMS建站的过程中,有时候需要用到在某个栏目下显示该栏目有多少新闻,这个有助于提升用户体验。
要实现这个功能有以下两种具体的办法:
*种:runphp=’yes’
利用织梦自带的runphp参数来实现这个功能,只需要在您需要显示统计数量的地方直接加入以下代码:
{dede:field.typeid runphp='yes'} global $dsql; $row = $dsql->GetOne("select count(*) as dd from dede_archives where typeid = @me"); @me = $row['dd']; {/dede:field.typeid}第二种:function
我们通常所说的函数,在织梦(DedeCMS)中,我们可以利用自定义函数来实现各种效果,实现的具体办法为:
在/include/extend.func.php文件的末尾?>的上一行加入以下代码:
function _GetTypeNum($tid){ global $dsql; $row = $dsql->GetOne("select count(*) as dd from dede_archives where typeid = $tid"); return $row['dd']; }在源码需求统计栏目文档的地方加入以下代码:
{dede:field.typeid function="GetTypeNum(@me)"/}注意事项:
1、本代码无法统计副栏目的文档;
2、本代码可用在列表和内容详细页;
3、代码生成后的效果的动态的,如果添加完内容,必须重新生成相关页面;
4、无法统计无主表(例如:分类信息)的文档总数;
DedeCMS 列表页,频道页获取当前栏目的父栏目名称
在5.7SP1版本上修改的,其它版本还未测试 找到目录下的include/helper/archive.helper.PHP 文件,添加自己以下函数//获取上级栏目名称 if ( ! function_exists('GetParentTypename')) { function GetParentTypename($id){ global $dsql ; $reid = $dsql->Getone("SELECT reid FROM wz_arctype where [email protected]"); $reid = $reid['reid']; $row1 = $dsql->Getone("SELECT typename FROM wz_arctype where id=$reid"); return $row1['typename']; } }列表或频道页调用方法
{dede:field.typeid function="GetParentTypename(@me)"/}
dedecms 栏目列表页链接怎么优化
织梦(dedecms)程序对SEO搜索引擎优化做得比较好,灵活性也很强。但是还是有一些细节的东西,要我们去发现,去修改,去灵活使用,比如DEDECMS栏目列表分页链接的优化。
推荐学习:织梦cms
dedecms默认栏目列表分页链接:
<li><a href="list_4_1.html">首页</a></li> <li><a href="list_4_3.html">上一页</a></li> <li><a href="list_4_1.html">1</a></li> <li><a href="list_4_2.html">2</a></li> <li><a href="list_4_3.html">3</a></li> <li>4</li> <li><a href="list_4_5.html">5</a></li> <li><a href="list_4_5.html">下一页</a></li> <li><a href="list_4_5.html">末页</a></li>
这种连接方式很不合理,对于SEO已经无意间分散了栏目页权重,我们要的效果是把list_4_1.html修改成/a/ 如下连接方式才合理:
<li><a href="/a/">首页</a></li> <li><a href="list_4_3.html">上一页</a></li> <li><a href="/a/">1</a></li> <li><a href="list_4_2.html">2</a></li> <li><a href="list_4_3.html">3</a></li> <li>4</li> <li><a href="list_4_5.html">5</a></li> <li><a href="list_4_5.html">下一页</a></li> <li><a href="list_4_5.html">末页</a></li>
修改方法
1.找到\include\arc.listview.class.php这个文件,把下面这段代码添加到”//获得上一页和主页的链接”前面;
$typedir= ereg_replace(‘{cmspath}’,$GLOBALS[''cfg_cmspath''],$this->Fields[''typedir'']);
2.找到“//获得上一页和主页的链接”下面几行代码。
if($this->ageNo != 1) { $prepage.=”<li><a href=’”.str_replace(“{page}”,$prepagenum,$tnamerule).”‘>上一页</a></li>rn”; $indexpage=”<li><a href=’”.str_replace(“{page}”,1,$tnamerule).”‘>首页</a></li>rn”; } -------------------把上面代码改成--------------------- if($this->ageNo != 1) { if($prepagenum==1) { $prepage.=”<li><a href=”".$typedir.”/”>上一页</a></li>rn”; } else { $prepage.=”<li><a href=”".str_replace(“{page}”,$prepagenum,$tnamerule).””>上一页</a></li>rn”; } $indexpage=”<li><a href=”".$typedir.”/”>首页</a></li>rn”; }
找到
$listdd.=”<li><a href=’”.str_replace(“{page}”,$j,$tnamerule).”‘>”.$j.”</a></li>rn”; ---------------------改成-------------------------- if($j==1) { $listdd.=”<li><a href=”".$typedir.”/”>”.$j.”</a></li>rn”; } else { $listdd.=”<li><a href=”".str_replace(“{page}”,$j,$tnamerule).””>”.$j.”</a></li>rn”; }
如果需要修改分页样式也上面代码中修改,比如删除
这样修改之后,就不再是出现list_4_1.html这样的链接,而是都直接链接到/abc/这样的地址。虽说这只是个小细节的修改,但是小细节有时候起到的作用却不能小觑。这样改之后保证链接回到的都是默认的列表页,避免了权重的流失,更符合SEO的做法。
以上就是
DedeCMS 统计栏目的新闻总数的调用办法
DedeCMS 统计栏目的新闻总数的调用办法,我是根据5.3里面修改的,本人测试了可以,大家可不可以就不知道了,若不可以的发表评论。打开include/common.func.php文件,在*后的?>之前加上:
以下为引用的内容:
//统计栏目新闻数
function GetTotalArc($tid){
global $dsql;
$sql = GetSonIds($tid);
$row = $dsql->GetOne("Select count(id) as dd From dede_archives where typeid in({$sql})");
return $row['dd'];
}
然后就可以在源码上用
以下为引用的内容:
{dede:channel type='son' row='20'}
<dl><a href='[field:typelink/]'>[field:typename/]</a>(<span>[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]) </dl>
{/dede:channel} 进行调用,[field:ID runphp='yes'] @me = GetTotalArc(@me);[/field:ID]这个就是调用的总数
本文章网址:http://www.ppssdd.com/code/4888.html。转载请保留出处,谢谢合作!dedecms5.7栏目列表页分页URL优化
Dedecms程序的栏目列表分页链接网址,如果我们仔细观察会发现,栏目的首页链接会存在两个内容相同的2个不同URL地址。从SEO方面来说,一个网页有2个网址是不太好的。所以,我们最好把两个URL统一成index.html
方法如下:
1,找到 \include\arc.listview.class.PHP 这个文件,将
$typedir= ereg_replace('{cmspath}',$GLOBALS['cfg_cmspath'],$this->Fields['typedir']); |
这段代码添加到 //获得上一页和主页的链接 前面;
2,找到下面几行代码
if($this->PageNo != 1) { $prepage.=" |
替换为下面的代码
if($this->PageNo != 1) { if($prepagenum==1) { $prepage.=" |
3、找到
替换为
完成以上三个步骤就可以实现织梦栏目首页翻页URL链接地址优化统一了。
我们今天的关于DedeCMS统计列表页栏目页文档总数的办法和列表页新闻数统计的分享就到这里,谢谢您的阅读,如果想了解更多关于DedeCMS 列表页,频道页获取当前栏目的父栏目名称、dedecms 栏目列表页链接怎么优化、DedeCMS 统计栏目的新闻总数的调用办法、dedecms5.7栏目列表页分页URL优化的相关信息,可以在本站进行搜索。
本文标签: