织梦dedecms让导航外部链接在新窗口打开的修改教程

站长手记 作者: 2024-08-27 14:10:01
织梦dedecms默认情况下导航里面的外部链接点击了是直接在当前窗口打开的,这样不利于SEO优化,我们需要修改成在新窗口中打开,但是如果直接在导航标签里面添加target属性的话所有的栏目导航都是在新窗口中打开了,同样不是我们需要的效果,下面就教大家如何 织梦dedecms默认情况下导航里面的外部链接点击了是直接在当前窗口打开的,这样不利于SEO优化,我们需要修改成在新窗口中打开,但是如果直接在导航标签里面添加target属性的话所有的栏目导航都是在新窗口中打开了,同样不是我们需要的效果,下面就教大家如何实现只让外部链接导航在新窗口打开,而普通导航栏目在当前窗口打开!   主要步骤如下:   找到并打开/include/taglib/channel.lib.php文件,在里面找到如下代码:  
  1. if($needRel) 
  2.  
  3.  
  4.  
  5.                 { 
  6.  
  7.  
  8.  
  9.                     $row['sonids'] = GetSonIds($row['id'], 0, false); 
  10.  
  11.  
  12.  
  13.                     if($row['sonids']=='') $row['rel'] = ''; 
  14.  
  15.  
  16.  
  17.                     else $row['rel'] = " rel='dropmenu{$row['id']}'"; 
  18.  
  19.  
  20.  
  21.                 } 
  在其下面添加如下代码:  
  1. $row['target'] = ($row['ispart']==2) ? "target=_blank" : ""; 
添加完成后保存,然后在模板里面的导航标签的<a>标签里面添加一个[field:target/],演示代码如下:  
  1. {dede:channel type='top' row='9' currentstyle="<li class='on'><a href='~typelink~' ~rel~><span>~typename~</span></a></li>"
  2.  
  3.  
  4.  
  5.        <li><a href='[field:typeurl/]' [field:rel/] [field:target/]><span>[field:typename/]</span></a></li> 
  6.  
  7.  
  8.  
  9. {/dede:channel} 
  这样就可以自动判断并给外部链接导航添加target=_blank属性了,点击就是新窗口打开,而正常的导航则不会在新窗口打开。  
原创声明
本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接:http://www.jiecseo.com/news/show_69585.html