DedeCMS可以设置指定栏目是否隐藏,这个功能还是比较实用的,栏目有了隐藏属性后,默认的标签都不能调用出来,适合一些不需要参与SEO排名的栏目,常见的比如专门设置的广告栏目(不用默认的广告模块)对于一些不懂代码的人来人来说,广告模块修改起来很麻烦。
另外栏目属性为隐藏也不能调用该栏目下的所有文章,以免用默认标签调用的时候出现一些这些栏目的文章,影响匹配,权重分散。
但在修改顶级栏目的时候,子栏目的属性会随之同步修改,比如隐藏属性ishidden。能不能让子栏目保持这样的属性呢?下面秀站网提供修改方法。
子栏目不随着顶级栏目改变属性
打开/dede/catalog_edit.php,大概在82行找到下面代码。复制的时候,分隔符请自行删除。
$upquery = "UPDATE `#分隔符@__arctype` SET moresite='$moresite', siteurl='$siteurl',sitepath='$sitepath',ishidden='$ishidden' WHERE 1=1 AND $slinks";
修改为下面代码即可。
$upquery = "UPDATE `#分隔符@__arctype` SET moresite='$moresite', siteurl='$siteurl',sitepath='$sitepath' WHERE 1=1 AND $slinks";
调用隐藏栏目的方法
代码如下,数据表前缀请自行修改
{dede:sql sql='Select * from dede_arctype where ishidden=1'} [field:typename/] {/dede:sql}
这段代码是要调出所有为隐藏属性的栏目,不管是不是顶级的,都是会调用出来的。还有另外一种情况,代码如下
{dede:type typeid='7' parent='1'} [field:typename/] {/dede:type}
这段代码只是调用了一行隐藏的栏目,且调用的为顶级隐藏栏目。
发表评论
评论列表(条)