织梦模板dedecms默认情况下导航里面的外部链接点击了是直接在当前窗口打开的,这样不利于SEO优化,我们需要修改成在新窗口中打开,但是如果直接在导航标签里面添加target属性的话所有的栏目导航都是在新窗口中打开了,同样不是我们需要的效果,下面就教大家如何实现只让外部链接导航在新窗口打开,而普通导航栏目在当前窗口打开!

主要步骤如下:

找到并打开/include/taglib/channel.lib.php文件,在里面找到如下代码:

if($needRel)

{

    $row['sonids'] = GetSonIds($row['id'], 0, false);

    if($row['sonids']=='') $row['rel'] = '';

    else $row['rel'] = " rel='dropmenu{$row['id']}'";

}

在其下面添加如下代码:

$row['target'] = ($row['ispart']==2) ? "target=_blank" : "";

添加完成后保存,然后在模板里面的导航标签的<a>标签里面添加一个[field:target/],演示代码如下:

{dede:channel type='top' row='9' currentstyle="<li class='on'><a href='~typelink~' ~rel~><span>~typename~</span></a></li>"}

<li><a href='[field:typeurl/]' [field:rel/] [field:target/]><span>[field:typename/]</span></a></li>

{/dede:channel}

这样就可以自动判断并给外部链接导航添加target=_blank属性了,点击就是新窗口打开,而正常的导航则不会在新窗口打开。


THE END

本站部分文章搜集整理于互联网或者网友提供,如有侵权请联系站长

如若转载,请注明出处:https://www.htmlbk.com/dedecms/206.html

温馨提示:该文档最后一次修改时间为2019-07-14 12:33:11,请注意相关的内容是否还可用!