关于dedecms织梦怎么删除所有的新闻?用SQL命令和织梦栏目删除不了的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于DedeCMS版权信息SQL命令删除、DEDECMS织梦tag标签显
关于dedecms织梦怎么删除所有的新闻?用SQL命令和织梦栏目删除不了的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于DedeCMS版权信息SQL命令删除、DEDECMS织梦 tag标签显示每个标签对应的新闻数量的代码、dedecms织梦arclist标签调用副栏目的新闻、DedeCMS织梦{dede:sql}数据库标签实现分页等相关知识的信息别忘了在本站进行查找喔。
本文目录一览:- dedecms织梦怎么删除所有的新闻?用SQL命令(织梦栏目删除不了)
- DedeCMS版权信息SQL命令删除
- DEDECMS织梦 tag标签显示每个标签对应的新闻数量的代码
- dedecms织梦arclist标签调用副栏目的新闻
- DedeCMS织梦{dede:sql}数据库标签实现分页
dedecms织梦怎么删除所有的新闻?用SQL命令(织梦栏目删除不了)
dedecms织梦怎么删除所有的新闻?dede一键删除所有新闻的SQL命令:
DELETE FROM dede_addonarticle WHERE aid >= 1 and aid<=200000;
DELETE FROM dede_arctiny WHERE id >= 1 and id<=200000;
DELETE FROM dede_archives WHERE id >= 1 and id<=200000;
本文章网址:http://www.ppssdd.com/code/14059.html。转载请保留出处,谢谢合作!DedeCMS版权信息SQL命令删除
Dedecms织梦系统底部会自动带有官方链接power by Dedecms字样,很多新用户想去除官方的链接,底部调用标签为{dede:global.cfg_poweby/},方法很多,但不鼓励大家删除。
这里只介绍最简单的方法,即是用sql命令删除原有的“cfg_powerby/”字段:
sql语句:
DELETE FROM dede_sysconfig WHERE varname = "cfg_powerby"
新增版权信息字段
在后台点击“系统”-“系统基本参数”-“添加新变量”,变量名可以随便写,例如:变量名称为“dede_powerby”,变量类型为“文本”,参数说明为“版权信息”,所属组为“站点设置”。
在前台调用的时候就用{dede:global.dede_powerby/}即可调用。
DEDECMS织梦 tag标签显示每个标签对应的新闻数量的代码
wordpress博客的tag标签旁边带括号,显示这个TAG对应有多少篇新闻,有时候我们在建站过程中为了提高用户体验,也需要在显示tag的链接和tag名的同时,还能显示每个tag关联的新闻的数量。但是织梦默认没有这样的标签来调用,这就需要我们自己对系统文件进行修改来实现了,具体办法如下:
找到并打开/include/taglib/tag.lib.PHP这个文件,找到第87行左右的下面这句代码:
$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";
在这行代码的下面添加如下代码:
$count = $dsql->GetOne("Select count(tid) From `dede_taglist` where tag = '".$row['tag']."'");
$row['count'] = $count['count(tid)'];
添加好后在源码的tag循环标签里面就可以通过[field:count/]来获取当前tag标签关联的新闻数量了,完整示例如下:
{dede:tag sort='hot' getall='2'}
<li><a title="[field:count/]个话题" href=http://www.dede58.com/a/dedejq/"[field:link/]">[field:tag /]</a></li>
{/dede:tag}
getall:获取类型。参数有:0和1,其中0为当前内容详细页或列表页tag,1为获取全站tag 本文章网址:http://www.ppssdd.com/code/6569.html。转载请保留出处,谢谢合作!
dedecms织梦arclist标签调用副栏目的新闻
织梦DEDECMS的功能已经特别强大,但是需要也是在不断需要的,我们有时也需要去更改一下系统的某些功能,
比如说我今天就需要arclist标签能调用副栏目的新闻,只需要更改/include/taglib/arclist.lib.php 。
把
if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')';
else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';
替换为
if($CrossID=='') {
$orwheres[] = ' (arc.typeid in ('.GetSonIds($typeid).') or arc.typeid2 in ('.GetSonIds($typeid).'))';
} else {
$orwheres[] = ' (arc.typeid in ('.GetSonIds($typeid).','.$CrossID.') or arc.typeid2 in ('.GetSonIds($typeid).','.$CrossID.'))';
}
之前我没有加括号,造成了很严重的问题。
dede arclist标签调用副栏目的新闻 ,
修改完成后是下面这样,
//if($CrossID=='') $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).')';
//else $orwheres[] = ' arc.typeid IN ('.GetSonIds($typeid).','.$CrossID.')';
if($CrossID=='') {
$orwheres[] = ' (arc.typeid in ('.GetSonIds($typeid).') or arc.typeid2 in ('.GetSonIds($typeid).'))';
} else {
$orwheres[] = ' (arc.typeid in ('.GetSonIds($typeid).','.$CrossID.') or arc.typeid2 in ('.GetSonIds($typeid).','.$CrossID.'))';
}
本文章网址:http://www.ppssdd.com/code/14021.html。转载请保留出处,谢谢合作!DedeCMS织梦{dede:sql}数据库标签实现分页
下面是小编 jb51.cc 通过网络收集整理的代码片段。小编小编现在分享给大家,也给大家做个参考。
近研究了一下织梦 CMS 系统,看到一篇关于 sql 标签调用数据列表如何翻页的文章,感觉不错,贴出来大家分享一下。相信很多使用 Dedecms 的朋友在网上查找关于 dede:sql 标签进行分页的解决方案时都不尽如人意,尤其是在列表页使用 dede:sql 调用外部数据(所谓调用外部数据就是指在后台只是创建个空栏目,然后对应的列表模板文件中使用 dede:sql 指定自定义的数据源,数据源与该栏目本身是没有逻辑关系的,目的是为了让织梦能按照它的规则来帮我们将数据源生成静态文件予以展示)时,我本人也搜索了很多资料,网上的答案都不够完美,有的是直接在模板文件中执行 PHP 代码来实现分页,显然此方法无法生成静态文件,有的直接在 sql 里面指定 limit 参数,但又无法实现智能分页,织梦官方也没有给出具体的解决方案,在 dede 论坛有看到织梦核心人物天涯给出的回复是采用自由列表的方法,显然自由列表无法指定外部数据源,最后实在没办法只能自己动手了,首先想到的思路是将 dede:list 标签进行改造了,熟悉 dede 的朋友应该知道这个列表页专用标签的工作原理大致是先通过栏目变量 id 获取到对应的数据源再呈现到页面上来,那么我们就可以让它不仅仅通过栏目变量 id 还可以通过指定的 sql 语句来获取数据源了,比如我们可以另外嵌入一个类似{dede:listsql sql='select * from wp_posts' pagesize='10'}的标签来使用。
OK,思路已经有了,接下来我们打开 include/arc.listview.class.PHP 这个文件来给它动个小手术吧!
找到:
if(!is_object($ctag))
{
$ctag = $this->dtp->GetTag("list");
}
这一段,在其后添加如下代码:
if(!is_object($ctag))
{
$ctag = $this->dtp->GetTag("listsql");
if (is_object($ctag))
{
$cquery = $ctag->GetAtt("sql");
$cquery = preg_replace("/SELECT(.*?)FROM/is"," SELECT count(*) as dd FROM ",$cquery);
$cquery = preg_replace("/ORDER(.*?)SC/is","",$cquery);
$row = $this->dsql->Getone($cquery);
if(is_array($row))
{
$this->TotalResult = $row['dd'];
}
else
{
$this->TotalResult = 0;
}
}
}
//end
然后找到:
if($ctag->GetName()=="list")
{
$limitstart = ($this->PageNo-1) * $this->PageSize;
$row = $this->PageSize;
if(trim($ctag->GetInnerText())=="")
{
$InnerText = GetSystemplets("list_fulllist.htm");
}
else
{
$InnerText = trim($ctag->GetInnerText());
}
$this->dtp->Assign($tagid,
$this->GetArcList(
$limitstart,
$row,
$ctag->GetAtt("col"),
$ctag->GetAtt("titlelen"),
$ctag->GetAtt("infolen"),
$ctag->GetAtt("imgwidth"),
$ctag->GetAtt("imgheight"),
$ctag->GetAtt("listtype"),
$ctag->GetAtt("orderby"),
$InnerText,
$ctag->GetAtt("tablewidth"),
$ismake,
$ctag->GetAtt("orderway")
)
);
}
这一段,在其后添加如下代码:
else if($ctag->GetName()=="listsql")
{
$limitstart = ($this->PageNo-1) * $this->PageSize;
$row = $this->PageSize;
if(trim($ctag->GetInnerText())=="")
{
$InnerText = GetSystemplets("list_fulllist.htm");
}
else
{
$InnerText = trim($ctag->GetInnerText());
}
$this->dtp->Assign($tagid,
$this->GetsqlList(
$limitstart,
$ctag->GetAtt("sql"),
$InnerText
)
);
}
//end
最后找到 function GetArcList 这个方法,在其后添加一个可以通过传入 sql 参数获取指定数据源的方法,代码如下:
/**
* 通过listsql标签中sql属性传入的参数来获得一个单列的文档列表
* */
function GetsqlList($limitstart = 0,$row = 10,$sql = '',$innertext){
global $cfg_list_son;
$innertext = trim($innertext);
if ($innertext == '') {
$innertext = GetSystemplets('list_fulllist.htm');
}
//处理sql语句
$limitStr = " LIMIT {$limitstart},{$row}";
$this->dsql->SetQuery($sql . $limitStr);
$this->dsql->Execute('al');
$t2 = ExecTime();
//echo $t2-$t1;
$sqllist = '';
$this->dtp2->LoadSource($innertext);
$GLOBALS['autoindex'] = 0;
//获取字段
while($row = $this->dsql->GetArray("al")) {
$GLOBALS['autoindex']++;
if(is_array($this->dtp2->CTags))
{
foreach($this->dtp2->CTags as $k=>$ctag)
{
if($ctag->GetName()=='array')
{
//传递整个数组,在runPHP模式中有特殊作用
$this->dtp2->Assign($k,$row);
}
else
{
if(isset($row[$ctag->GetName()]))
{
$this->dtp2->Assign($k,$row[$ctag->GetName()]);
}
else
{
$this->dtp2->Assign($k,'');
}
}
}
}
$sqllist .= $this->dtp2->GetResult();
}//while
$t3 = ExecTime();
//echo ($t3-$t2);
$this->dsql->FreeResult('al');
return $sqllist;
}
//end
总共就添加三段代码,每一段代码基本都参考它紧接着的上面那段原始代码,而无需改变它原来任何一个地方的代码,应该算是比较完美了,接下来在模板文件中的使用方法就跟一开始思路中所提到的那样,分页标签依旧沿用原来的,调用范例:
{dede:listsql sql='select ID,post_title from wp_posts' pagesize='10'}
<li><a href="[field:ID /].html">[field:post_title /]</a></li>
{/dede:listsql}
<!--分页-->
{dede:Pagelist listsize='2' listitem='index pre pageno next end '/}
注:以上解决方案适用于 Dedecms5.6-5.7 版本。
以上是小编(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。如果觉得小编网站内容还不错,欢迎将小编网站推荐给程序员好友。
今天关于dedecms织梦怎么删除所有的新闻?用SQL命令和织梦栏目删除不了的分享就到这里,希望大家有所收获,若想了解更多关于DedeCMS版权信息SQL命令删除、DEDECMS织梦 tag标签显示每个标签对应的新闻数量的代码、dedecms织梦arclist标签调用副栏目的新闻、DedeCMS织梦{dede:sql}数据库标签实现分页等相关知识,可以在本站进行查询。
本文标签: