head.htm
或header.htm
)。,4. 在模板文件中添加相应的标签来生成导航。, “html,{dede:global.cfg_webname/},, {dede:channel type='top' row='self' currentstyle='|'},[field:typename/], {/dede:channel},,
“, 上述代码会生成一个包含网站名的链接,以及一个包含所有顶级栏目名称的无序列表。,,通过以上步骤,你可以在DedeCMS中实现文章标题、栏目名称和网站名的导航功能。请确保在编辑模板文件时遵循正确的语法和格式要求。修改inc_archives_view.php文件
通过修改/include/inc_archives_view.php文件,可以调整文章标题、栏目名称和网站名的显示,具体步骤如下:
1、查找并替换代码:在文件中查找tp.typedir
,然后将其替换为tp.typedir,tp.typename
。
2、调用字段:在文章模板中使用{dede:field name='typename'/}
来调出栏目名称。
方法二:使用字段和全局变量组合显示
通过字段标签和全局变量的组合,可以在页面上直接生成“文章标题栏目名称网站名”的结构,具体实现方式是:
“`织梦
{dede:field name=’title’/}{dede:field name=’typename’/}{dede:global name=’cfg_webname’/}
这种方法较为简单,只需在模板中插入上述代码即可。
方法三:利用position字段配合自定义函数
通过使用position
字段和自定义函数,可以实现更复杂的导航结构,具体步骤如下:
1、添加分隔符和位置信息:
```织梦
{dede:field name='title'/}{dede:field name='position' runphp='yes'}
$tc=""; //分隔符
$tw=$globals['cfg_list_symbol']; //调用位置分隔符
@me=html2text(@me); //去除html标签
$tf=split($tw,@me); //分解成数组
for($ta=(count($tf)2);$ta>=1;$ta–){ //循环赋值给$tk
$tk.=trim($tf[$ta]).$tc;
}
$tk=substr($tk,0,1);
@me=$tk; //赋值给@me
{/dede:field}{dede:global name='cfg_webname'/}
2、将代码放在<title></title>之间:这样可以生成“文章标题2级栏目1级栏目网站名”的形式。
方法四:优化搜索收录的方法
通过修改include/typelink.class.php文件,可以实现对搜索引擎更友好的标题结构,具体步骤如下:
1、修改PHP代码:找到第164行,将原来的排列方式反过来:
“`织梦
$this>valuePositionName = $tinfos[‘typename’].$this>SplitSymbol.$this>valuePositionName;
修改为:
$this>valuePositionName = $this>valuePositionName.$this>SplitSymbol.$tinfos[‘typename’];
2、修改模板标题标签: ```织梦 <title>{dede:field.title/} {dede:global.cfg_webname/}</title> 修改为: <title>{dede:field.title function='ereg_replace(" "," ",@me)'/} {dede:global.cfg_webname/}</title>
方法五:在文章页显示栏目名称的解决方案
由于DedeCMS默认没有单独的标签用于显示栏目名称,需要编写自定义函数来实现,具体步骤如下:
1、编写函数:
“`织梦
function My_GetCName($typeid){
$dsql = new DedeSql(false);
$row = $dsql>GetOne(”select typename from xkzzz_arctype where id=$typeid; “);
return $row[‘typename’];
}
2、将函数加到includeinc_functions.php文件中。 3、在模板中引用:在需要显示栏目名称的地方加入以下标签: ```织梦 {dede:field name='typeid' function='My_GetCName(@me)'/}
FAQs
问题一:如何在dedecms中修改文章标题的命名规则?
答:可以通过修改include/common.inc.php文件中的命名规则来改变文章标题的命名方式,如果希望去掉时间信息,可以将默认的命名规则中的/{Y}/{M}{D}
部分删除,生成后的地址形式会更简洁。
问题二:如何在dedecms中调用当前栏目的顶级栏目名称及链接?
答:可以使用以下代码来调用当前栏目的顶级栏目名称及链接:
“`织梦
{dede:type}[field:typename/]{/dede:type}
{dede:channel type=’son’ row=’5′}
<a href="[field:typeurl/]">[field:typename/]</a>
{/dede:channel}
这段代码不仅可以显示当前顶级栏目的名称,还能生成对应的链接,方便用户导航。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1231534.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复