GVKun编程网logo

dedecms系统TAG标签按栏目调用,只显当前栏目tags标签(dedecms 标签)

36

对于dedecms系统TAG标签按栏目调用,只显当前栏目tags标签感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍dedecms标签,并为您提供关于DedeCMS5.7系统TAG标签伪静态怎么

对于dedecms系统TAG标签按栏目调用,只显当前栏目tags标签感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍dedecms 标签,并为您提供关于DedeCMS 5.7系统TAG标签伪静态怎么设置、DedeCMS 5.7系统TAG标签伪静态设置、dedecms 获取当前栏目ID以及调用当前栏目的字段、dedecms使用SQL代码调用指定栏目tag标签的有用信息。

本文目录一览:

dedecms系统TAG标签按栏目调用,只显当前栏目tags标签(dedecms 标签)

dedecms系统TAG标签按栏目调用,只显当前栏目tags标签(dedecms 标签)

 

织梦tag标签默认是全站调用的,不能按栏目调用当前栏目的tag标签,那么怎么让标签按栏目显示,只显示当前栏目的所有标签呢?网上找了些织梦朋友总结的办法,至此学技巧感觉织梦标签真的很强大。下面就是修改和调用TAG标签的办法:

一、打开include/taglib/目录下的 tag.lib.php 文件

找到下面这段代码,并在中间插入标注部分代码

    if($getall==0 && isset($refObj->Fields['tags']) && !empty($refObj->Fields['aid']))
    {
            $dsql->SetQuery("Select tid From `ddmx_taglist` where aid = '{$refObj->Fields['aid']}' ");
            $dsql->Execute();
            $ids = '';
            while($row = $dsql->GetArray())
      {
              $ids .= ( $ids=='' ? $row['tid'] : ','.$row['tid'] );
            }
            if($ids != '')
            {
                    $addsql = " where id in($ids) ";
            }
            if($addsql=='') return '';
    }
     
    else if($getall==2)
    {
    $addsql = " where typeid='{$refObj->Fields['typeid']}' ";
    }
    else
    {
            if(!empty($typeid))
            {
                    $addsql = " where typeid='$typeid' ";
            }
            
红色部分就是要添加的代码。


以下部分代码是调用当前栏目TAG标签的办法。
{dede:tag sort='hot' getall='2'}
<a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}

本文章网址:http://www.ppssdd.com/code/13905.html。转载请保留出处,谢谢合作!

DedeCMS 5.7系统TAG标签伪静态怎么设置

DedeCMS 5.7系统TAG标签伪静态怎么设置

DedeCMS 5.7系统TAG标签伪静态怎么设置

dedecms 5.7系统tag标签伪静态怎么设置?

1.修改前台显示链接

推荐学习:织梦cms

我们这里达到的效果就是使原来/tags.php?keywors更改为/tags/keywords.html。

这里主要修改下调用的标签,在include/tag/libtag.lib.php中,在87行找到

代码如下:

$row[&#39;link&#39;] = $cfg_cmsurl."/tags?".urlencode($row[&#39;keyword&#39;]);
登录后复制

将其改为:

代码如下:

$row[&#39;link&#39;] = $cfg_cmsurl."/tags/".urlencode($row[&#39;keyword&#39;]).".html";
登录后复制

2.修改分页代码

我们需要修改include/arc.taglist.class.php,将分页函数替换为:

代码如下:

/** * 获取动态的分页列表
*
* @access public
* @param int $list_len 列表宽度
* @param string $listitem 列表样式
* @return string
*/
function GetPageListDM($list_len,$listitem="info,index,end,pre,next,pageno")
{
$prepage="";
$nextpage="";
$prepagenum = $this->PageNo - 1;
$nextpagenum = $this->PageNo + 1;
if($list_len == "" || preg_match("/[^0-9]/", $list_len))
{
$list_len = 3;
}
$totalpage = $this->TotalPage;
if($totalpage <= 1 && $this->TotalResult > 0)
{
return "<span>共1页/".$this->TotalResult."条</span>";
}
if($this->TotalResult == 0)
{
return "<span>共0页/".$this->TotalResult."条</span>";
}
$maininfo = "<span>共{$totalpage}页/".$this->TotalResult."条</span>rn";
$purl = $this->GetCurUrl();
$basename = basename($purl);
$tmpname = explode(&#39;.&#39;, $basename);
$purl = str_replace($basename, &#39;&#39;, $purl).urlencode($this->Tag);
//var_dump($purl);exit;
//$purl .= "?/".urlencode($this->Tag);
//获得上一页和下一页的链接
if($this->PageNo != 1)
{
$prepage.="<li><a href=&#39;".$purl."-$prepagenum&#39;.html>上一页</a></li>rn";
$indexpage="<li><a href=&#39;".$purl."-1.html&#39;>首页</a></li>rn";
}
else
{
$indexpage="<li><a>首页</a></li>rn";
}
if($this->PageNo!=$totalpage && $totalpage>1)
{
$nextpage.="<li><a href=&#39;".$purl."-$nextpagenum.html&#39;>下一页</a></li>rn";
$endpage="<li><a href=&#39;".$purl."-$totalpage.html&#39;>末页</a></li>rn";
}
else
{
$endpage="<li><a>末页</a></li>rn";
}
//获得数字链接
$listdd="";
$total_list = $list_len * 2 + 1;
if($this->PageNo >= $total_list)
{
$j = $this->PageNo - $list_len;
$total_list = $this->PageNo + $list_len;
if($total_list > $totalpage)
{
$total_list = $totalpage;
}
}
else
{
$j=1;
if($total_list > $totalpage)
{
$total_list = $totalpage;
}
}
for($j; $j<=$total_list; $j++)
{
if($j == $this->PageNo)
{
$listdd.= "<li><a>$j</a></li>rn";
}
else
{
$listdd.="<li><a href=&#39;".$purl."-$j.html&#39;>".$j."</a></li>rn";
}
}
$plist = &#39;&#39;;
if(preg_match(&#39;/info/i&#39;, $listitem))
{
$plist .= $maininfo.&#39; &#39;;
}
if(preg_match(&#39;/index/i&#39;, $listitem))
{
$plist .= $indexpage.&#39; &#39;;
}
if(preg_match(&#39;/pre/i&#39;, $listitem))
{
$plist .= $prepage.&#39; &#39;;
}
if(preg_match(&#39;/pageno/i&#39;, $listitem))
{
$plist .= $listdd.&#39; &#39;;
}
if(preg_match(&#39;/next/i&#39;, $listitem))
{
$plist .= $nextpage.&#39; &#39;;
}
if(preg_match(&#39;/end/i&#39;, $listitem))
{
$plist .= $endpage.&#39; &#39;;
}
return $plist;
}
登录后复制

3.设置伪静态规则

我们这里以iis7为例子,设置以下规则:

代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="weather1" stopProcessing="true">
<match url="tags/([^-]+).html$" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/tags.php?/{R:1}" appendQueryString="false" />
</rule>
<rule name="weather2" stopProcessing="true">
<match url="tags/([^-]+)-([0-9]+).html$" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/tags.php?/{R:1}/{R:2}" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
登录后复制

 

可以直接保存为web.config放在站点根目录。

4.重新生成html页面

这个操作就不用说了,全部重新生成下,至此全部修改完毕。

以上就是DedeCMS 5.7系统TAG标签伪静态怎么设置的详细内容,更多请关注php中文网其它相关文章!

DedeCMS 5.7系统TAG标签伪静态设置

DedeCMS 5.7系统TAG标签伪静态设置

 
1.修改前台显示链接
 
我们这里达到的效果就是使原来/tags.PHP?keywors更改为/tags/keywords.html。
 
这里主要修改下调用的标签,在includetaglibtag.lib.PHP中,在87行找到
 
 
 
 
复制代码代码如下:$row['link'] = $cfg_cmsurl."/tags?".urlencode($row['keyword']); 
将其改为:
 
 
 
 
复制代码代码如下:$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword']).".html"; 
 
2.修改分页代码
 
我们需要修改include/arc.taglist.class.PHP,将分页函数替换为:
 
 
 
 
复制代码代码如下:
/** * 获取动态的分页列表
*
* @access public
* @param int $list_len 列表宽度
* @param string $listitem 列表样式
* @return string
*/
function GetPagelistDM($list_len,$listitem="info,index,end,pre,next,pageno")
{
$prepage="";
$nextpage="";
$prepagenum = $this->PageNo - 1;
$nextpagenum = $this->PageNo + 1;
if($list_len == "" || preg_match("/[^0-9]/",$list_len))
{
$list_len = 3;
}
$totalpage = $this->TotalPage;
if($totalpage <= 1 && $this->TotalResult > 0)
{
return "
}
if($this->TotalResult == 0)
{
return "
}
$maininfo = "
$purl = $this->GetCurUrl();
$basename = basename($purl);
$tmpname = explode('.',$basename);
 
$purl = str_replace($basename,'',$purl).urlencode($this->Tag);
//var_dump($purl);exit;
//$purl .= "?/".urlencode($this->Tag);
 
//获得上一页和下一页的链接
if($this->PageNo != 1)
{
$prepage.="上一页
$indexpage="首页
}
else
{
$indexpage="首页
}
if($this->PageNo!=$totalpage && $totalpage>1)
{
$nextpage.="下一页
$endpage="
}
else
{
$endpage="
}
 
//获得数字链接
$listdd="";
$total_list = $list_len * 2 + 1;
if($this->PageNo >= $total_list)
{
$j = $this->PageNo - $list_len;
$total_list = $this->PageNo + $list_len;
if($total_list > $totalpage)
{
$total_list = $totalpage;
}
}
else
{
$j=1;
if($total_list > $totalpage)
{
$total_list = $totalpage;
}
}
for($j; $j<=$total_list; $j++)
{
if($j == $this->PageNo)
{
$listdd.= "
}
else
{
$listdd.="
}
}
$plist = '';
if(preg_match('/info/i',$listitem))
{
$plist .= $maininfo.' ';
}
if(preg_match('/index/i',$listitem))
{
$plist .= $indexpage.' ';
}
if(preg_match('/pre/i',$listitem))
{
$plist .= $prepage.' ';
}
if(preg_match('/pageno/i',$listitem))
{
$plist .= $listdd.' ';
}
if(preg_match('/next/i',$listitem))
{
$plist .= $nextpage.' ';
}
if(preg_match('/end/i',$listitem))
{
$plist .= $endpage.' ';
}
return $plist;
}
 
 
3.设置伪静态规则
 
我们这里以iis7为例子,设置以下规则:
 
 
 
 
复制代码代码如下:
figuration>
stem.webServer>
noreCase="true" />
PHP?/{R:1}" appendQueryString="false" />
noreCase="true" />
PHP?/{R:1}/{R:2}" appendQueryString="false" />
stem.webServer>
figuration>
 
 
可以直接保存为web.config放在站点根目录。
 
4.重新生成html页面
 
这个操作就不用说了,全部重新生成下,至此全部修改完毕。
 
5.预览查看显示结果
 
至此,我们已经完成了所有的设置,可以查看:http://www.**.net/tags/PHP.html语言效果。
 
 

总结

以上是小编为你收集整理的DedeCMS 5.7系统TAG标签伪静态设置全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

Dedecms相关文章

织梦系统 dedecms pagelist标签使用修改方法介绍
在Dedecms织梦列表页中是肯定要使用pagelist标签的,但是有的时候也会因为一些css格式的问题会出现排列顺序的问题,所以也要知道怎么样修改pagelist标签?
织梦网站怎么搬家?dede系统网站迁移数据到另外个服务器
今天分享织梦网站怎么搬家,个人感觉织梦的搬家比其他的程序的都简单。1、网站备份登录织梦后台,【系统】-【数据库备份/还原】-【提交】,织梦程序开始自动备份数据库,等待即可。
织梦网站安全设置方法 dede系统网站如何配置才安全?
织梦(dede)程序不安全是公认的,同样是建站,使用织梦程序被黑的风险更大,所以,一些安全设置是非常有必要的。织梦网站安全设置的4个主要操作
织梦自动生成网站地图sitemap代码 dede生成sitemap站点地图的代码实例
使用xemu、爱站工具包、尖叫青蛙等制作网站地图,每次生成sitemap还需要再上传到服务器,还是比较麻烦的,不过有些网站程序可以通过插件完成网站地图的自动更新,比如wordpress。但是织梦一直都不行,今天就用插件+代
dede织梦纯代码制作网站地图 dede网站地图生成代码
分享织梦自动生成网站sitemap,但是需要安装插件,今天分享,织梦如何不使用插件,制作网站xml地图。
织梦dede自定义表单添加全选功能 dede自定义表单实操代码
织梦自定义表单没有全选/取消全选功能,有时候想要全选全,需要一个一个选择比较麻烦,如果网站有大量的恶意留言,想要删除更麻烦。虽然可以使用sql命令删除恶意留言,但不是很灵活,今天就给织梦自定义表单添加全选
dede cms如何定时主动推送文章 dede实现定时推送文章给百度的方法
前几天百度公开课说了,api推送的优先级比较高,所以在没有快速收录的情况下,api提交必须要有,那么织梦要如何实现api主动推送呢?
织梦dede发布文章实时api主动推送
dede定时主动推送,虽然也很方便,但只能固定时间推送,实时性不高,今天小编分享如何发布文章后实时api推送至百度?
  • • 织梦系统 dedecms pagelist标签使用修改
  • • 织梦网站怎么搬家?dede系统网站迁移数
  • • 织梦网站安全设置方法 dede系统网站如何
  • • 织梦自动生成网站地图sitemap代码 dede
  • • dede织梦纯代码制作网站地图 dede网站地
  • • 织梦dede自定义表单添加全选功能 dede自
  • • dede cms如何定时主动推送文章 dede实现
  • • 织梦dede发布文章实时api主动推送
  • • 织梦dedecms当前位置标签代码的5种写法
  • • 织梦DEDECMS文章、栏目页获取当前页面顶
JavaScriptPHPsqlMysqLwindows使用wordpressAJAXList方法系统文件安装Nginx教程数据库设置Woocommerc服务器pdf错误获取创建显示函数用户更新添加IIS删除自定义代码进行.htaccess调用软件选择功能属性下载
  • 友情链接:
  • 菜鸟教程
  • 前端之家
  • 编程小课
  • 小编
  • -
  • 我要投稿
  • -
  • 广告合作
  • -
  • 联系我们
  • -
  • 免责声明
  • -
  • 网站地图
版权所有 © 2018 小编 闽ICP备13020303号-8
微信公众号搜索 “ 程序精选 ” ,选择关注!
微信公众号搜"程序精选"关注
微信扫一扫可直接关注哦!

dedecms 获取当前栏目ID以及调用当前栏目的字段

dedecms 获取当前栏目ID以及调用当前栏目的字段

 

获取dedecms当前栏目的ID,标签为:

{dede:type}[field:ID /]{/dede:type}

如果是在{dede:sql}里面需要用到当前栏目ID的话就

 

{dede:sql sql='Select * from dede_arctype where id = ~typeid~ '}

本文章网址:http://www.ppssdd.com/code/14246.html。转载请保留出处,谢谢合作!

dedecms使用SQL代码调用指定栏目tag标签

dedecms使用SQL代码调用指定栏目tag标签

 

在使用织梦CMS建站中,很有可能需要用到在首页根据调用某个栏目下的TAG,也就是是按栏目调出TAG,这里就需要用到DEDE 的SQL运行功能
{dede:sql sql="select * from dede_archives a left join dede_taglist t on a.id=t.aid where a.typeid='22' limit 4"}
   <a href='/tags.php?[field:tag/]' target="_blank" title="[field:tag /]">[field:tag /]</a>
{/dede:sql}

这里typeid=‘22’可以改成你实际要调用的栏目ID,limit 4这个是调用多少个TAG出来

以上的代码是随便哪里都可以用
如果是要再列表页调用,还有一个代码
[field:id runphp=yes]  
    $tsql = new DedeSql(false);  
    $tags = '';  
    $tsql->SetQuery("Select i.tagname From dede_tag_list t left join dede_tag_index i on i.id=t.tid where t.aid='@me'");  
    $tsql->Execute('t');  
    while($row = $tsql->GetArray('t',MYSQL_ASSOC)){  
    $tags .= "<a href='/tag.php?/".urlencode($row['tagname'])."'>".$row['tagname']."</a>";  
    }  
    @me=$tags;  
    [/field:id]

如果是DEDE5.7 及之后的版本,可以直接在列表页用
[field:id function=GetTags(@me)/] 就能直接调用,但是调用出来是不带链接的,如果需要链接,请注释掉include\helpers\archive.helper.php文件的130行: $tags .= ($tags=='' ? $row['tag'] : ','.$row['tag']);   用下面语句替换,当然你也可以加入自己的样式:$tags .= "<a href='/tags.php?/".urlencode($row['tag'])."/'>".$row['tag']."</a> "; 本文章网址:http://www.ppssdd.com/code/10386.html。转载请保留出处,谢谢合作!

今天的关于dedecms系统TAG标签按栏目调用,只显当前栏目tags标签dedecms 标签的分享已经结束,谢谢您的关注,如果想了解更多关于DedeCMS 5.7系统TAG标签伪静态怎么设置、DedeCMS 5.7系统TAG标签伪静态设置、dedecms 获取当前栏目ID以及调用当前栏目的字段、dedecms使用SQL代码调用指定栏目tag标签的相关知识,请在本站进行查询。

本文标签: