找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 246|回复: 0

[cms教程] 如何让织梦栏目外部链接在新窗口中打开-新方法

[复制链接]

该用户从未签到

发表于 2021-9-3 08:42:32 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
织梦模板默认情况下导航里面的外部链接点击了是直接在当前窗口打开的,这样不利于SEO优化,我们需要修改成在新窗口中打开,但是如果直接在导航标签里面添加target属性的话所有的栏目导航都是在新窗口中打开了,同样不是我们需要的效果,下面就教大家如何实现只让外部链接导航在新窗口打开,而普通导航栏目在当前窗口打开!
主要步骤如下:
找到并打开/include/taglib/channel.lib.php文件,在里面找到如下代码:126行左右


       
               
                       
                               
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" : "";
添加完成后保存,然后在模板里面的导航标签的标签里面添加一个[field:target/],演示代码如下:

{dede:channel type='top' row='9' currentstyle="[url=~typelink~,~typename~[/url]"}
[*,[url=[field:typeurl/],[field:target/]>[field:typename/][/url]
{/dede:channel}

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

下面是{dede:channelArtlist}调用方式

       
        {dede:channelArtlist  typeid=top}
         [*,
         {dede:field.ispart runphp=yes}(@me==2)? @me=' target="_blank"':@me='';{/dede:field.ispart} href="{dede:field name='typeurl'/}" >{dede:field name='typename'/}
         
          {dede:channel type=son}
           [*,[url=,[field:target/]>[field:typename/][/url]
          {/dede:channel}
         

         
        {/dede:channelArtlist}
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-12-23 13:13

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表