在SEO优化中,Dedecms CMS的主导航设计尤为重要。主导航链接通常为栏目链接,点击后会直接跳转至相应页面。然而,如果主导航链接指向外部网站,则不建议直接跳出,因为这可能会增加网站的跳出率。为了改善用户体验并优化SEO效果,对于此类外部链接,应设置为在新窗口打开(target="_blank"),同时添加nofollow属性以防止搜索引擎抓取这些链接。以下是具体修改方法。
打开文件 `/include/taglib/channel.lib.php`,找到以下代码片段:

if($needRel)
{
 $row['sonids'] = GetSonIds($row['id'], 0, false);
 if($row['sonids']=='') $row['rel'] = '';
 else $row['rel'] = "id']}'";
}

在此代码段下方新增以下内容:

$row['target'] = ($row['ispart']==2) ? "target = ''_blank''" : "target = ''_self''"; // 新窗口打开
$row['nofollow'] = ($row['ispart']==2) ? "rel = ''nofollow''" : "rel = ''follow''"; // nofollow 属性

继续向下查找以下代码:

$linkOkstr = str_replace("'~typename~'",$row['typename'],$linkOkstr);

在其下方新增以下代码:

$linkOkstr = str_replace("'~target~'",$row['target'],$linkOkstr);
$linkOkstr = str_replace("'~nofollow~'",$row['nofollow'],$linkOkstr);

完成上述修改后,在导航标签中可以使用新增的 `[field:target/]` 和 `[field:nofollow/]` 标签。这两个标签将根据实际情况自动应用。例如:

{dede:channel type='self' currentstyle="
  • ~typename~
  • "}
  • [field:typename/]
  • {/dede:channel}
    通过以上步骤,您可以有效优化Dedecms CMS的主导航链接设置,提升用户体验并增强SEO效果。请确保在修改前备份相关文件,以便在需要时恢复原始状态。