百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

给织梦栏目增加链接属性rel、nofollow和target

liuian 2025-04-26 19:24 18 浏览

摘要:为了方便管理,直接在织梦后台栏目里自由把控每个栏目对应的链接属性,我们来给织梦栏目增加链接属性rel="nofllow" rel="external" rel="external nofollow"和新窗口target="_blank"




大家好,我就江湖哥,大家应该都知道rel='nofllow'的作用,它是告诉搜索引擎,不要将该链接计入权重。

因此多数情况下,我们可以将一些不想传递权重的链接进行nofllow处理;

例如一些非本站的链接,不想传递权重,但是又需要加在页面中的,

像 外部链接、统计代码、备案号链接、供用户查询的链接等等

为了方便管理,直接在织梦后台栏目里自由把控每个栏目对应的链接属性,

我们来给织梦栏目增加链接属性rel="nofllow" rel="external" rel="external nofollow"和新窗口target="_blank"

  • rel="nofllow" (告诉搜索引擎该链接不计入权重)
  • rel="external" (告诉搜索引擎该链接不是本站链接)
  • rel="external nofollow" (告诉搜索引擎该链接不是本站链接也不计入权重)

实现教程

1、后台-系统-SQL工具,执行

ALTER TABLE `#@__arctype` ADD `nofollow` CHAR( 60 ) NOT NULL DEFAULT '';
ALTER TABLE `#@__arctype` ADD `target` CHAR( 60 ) NOT NULL DEFAULT '';

2、打开 /dede/catalog_add.php 找到,大概在 239 行左右

UpDateCatCache();

在它的 上面 加入

$id = $dsql->GetLastID();
$upquery = "UPDATE `#@__arctype` SET `nofollow`='$nofollow',`target`='$target' WHERE id='$id' ";
$dsql->ExecuteNoneQuery($upquery);

3、打开 /dede/catalog_edit.php 找到,大概在 106 行左右

UpDateCatCache();

在它的 上面 加入

$upquery = "UPDATE `#@__arctype` SET `nofollow`='$nofollow',`target`='$target' WHERE id='$id' ";
$dsql->ExecuteNoneQuery($upquery);

4、打开 /dede/templets/catalog_add.htm 找到

栏目属性

在它上面一行的<tr>上面加入

<tr> 
	<td width="150" class='bline' height="26" style="padding-left:10px;">链接属性rel:</td>
	<td class='bline'>
		<select name="nofollow" id="nofollow" style="width:140px;">
			<option value=''>请选择属性</option>
			<option value='rel="external"'>external</option>
			<option value='rel="nofollow"'>nofollow</option>
			<option value='rel="external nofollow"'>external nofollow</option>
		</select>
		<input style="vertical-align:middle; margin-top:-2px; margin-bottom:1px;" type="checkbox" name="target" value='target="_blank"' class="np">
		新窗口打开
	</td>
</tr>

如图

5、打开 /dede/templets/catalog_edit.htm 找到

栏目属性

在它上面一行的<tr>上面加入

<tr> 
	<td width="150" class='bline' height="26" style="padding-left:10px;">链接属性rel:</td>
	<td class='bline'>
		<select name="nofollow" id="nofollow" style="width:140px;">
			<option value=''<?php if($myrow['nofollow']=='') echo " selected";?>>请选择属性</option>
			<option value='rel="external"'<?php if($myrow['nofollow']=='rel="external"') echo " selected";?>>external</option>
			<option value='rel="nofollow"'<?php if($myrow['nofollow']=='rel="nofollow"') echo " selected";?>>nofollow</option>
			<option value='rel="external nofollow"'<?php if($myrow['nofollow']=='rel="external nofollow"') echo " selected";?>>external nofollow</option>
		</select>
		<input style="vertical-align:middle; margin-top:-2px; margin-bottom:1px;" type="checkbox" name="target" value='target="_blank"' class="np"<?php if($myrow['target']=='target="_blank"') echo " checked='1' ";?>>
		新窗口打开
	</td>
</tr>

如图

6、打开 /include/taglib/channel.lib.php 找到,80、86、92、111行的

id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

这4处都改成

*

如图

7、打开 /include/taglib/channelartlist.lib.php 找到,大概在 78 行

id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

改成

*

如图

8、打开 /include/taglib/type.lib.php 找到,大概在 42 行

id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath

改成

*

如图

栏目调用标签里的标签写法

dede:channelartlist标签写法
<ul>
    {dede:channelartlist row=7 typeid=top}
    <li><a href="{dede:field.typeurl/}" {dede:field.nofollow/} {dede:field.target/}>{dede:field.typename/}</a></li>
    {/dede:channelartlist}
</ul>
dede:channel标签写法
{dede:channel type=top row=7}
<li><a href="[field:typelink/]" [field:nofollow/] [field:target/]>[field:typename/]</a></li>
{/dede:channel}
dede:type标签写法
{dede:type typeid=1}
<li><a href="[field:typeurl/]" [field:nofollow/] [field:target/]>[field:typename/]</a></li>
{/dede:type}

注意:标红的那2个标签前面记得要加个空格

相关推荐

深入解析 MySQL 8.0 JSON 相关函数:解锁数据存储的无限可能

引言在现代应用程序中,数据的存储和处理变得愈发复杂多样。MySQL8.0引入了丰富的JSON相关函数,为我们提供了更灵活的数据存储和检索方式。本文将深入探讨MySQL8.0中的JSON...

MySQL的Json类型个人用法详解(mysql json类型对应java什么类型)

前言虽然MySQL很早就添加了Json类型,但是在业务开发过程中还是很少设计带这种类型的表。少不代表没有,当真正要对Json类型进行特定查询,修改,插入和优化等操作时,却感觉一下子想不起那些函数怎么使...

MySQL的json查询之json_array(mysql json_search)

json_array顾名思义就是创建一个数组,实际的用法,我目前没有想到很好的使用场景。使用官方的例子说明一下吧。例一selectjson_array(1,2,3,4);json_array虽然单独...

头条创作挑战赛#一、LSTM 原理 长短期记忆网络

#头条创作挑战赛#一、LSTM原理长短期记忆网络(LongShort-TermMemory,LSTM)是一种特殊类型的循环神经网络(RNN),旨在解决传统RNN在处理长序列数据时面临的梯度...

TensorBoard最全使用教程:看这篇就够了

机器学习通常涉及在训练期间可视化和度量模型的性能。有许多工具可用于此任务。在本文中,我们将重点介绍TensorFlow的开源工具套件,称为TensorBoard,虽然他是TensorFlow...

图神经网络版本的Kolmogorov Arnold(KAN)代码实现和效果对比

本文约4600字,建议阅读10分钟本文介绍了图神经网络版本的对比。KolmogorovArnoldNetworks(KAN)最近作为MLP的替代而流行起来,KANs使用Kolmogorov-Ar...

kornia,一个实用的 Python 库!(python kkb_tools)

大家好,今天为大家分享一个实用的Python库-kornia。Github地址:https://github.com/kornia/kornia/Kornia是一个基于PyTorch的开源计算...

图像分割掩码标注转YOLO多边形标注

Ultralytics团队付出了巨大的努力,使创建自定义YOLO模型变得非常容易。但是,处理大型数据集仍然很痛苦。训练yolo分割模型需要数据集具有其特定格式,这可能与你从大型数据集中获得的...

[python] 向量检索库Faiss使用指北

Faiss是一个由facebook开发以用于高效相似性搜索和密集向量聚类的库。它能够在任意大小的向量集中进行搜索。它还包含用于评估和参数调整的支持代码。Faiss是用C++编写的,带有Python的完...

如何把未量化的 70B 大模型加载到笔记本电脑上运行?

并行运行70B大模型我们已经看到,量化已经成为在低端GPU(比如Colab、Kaggle等)上加载大型语言模型(LLMs)的最常见方法了,但这会降低准确性并增加幻觉现象。那如果你和你的朋友们...

ncnn+PPYOLOv2首次结合!全网最详细代码解读来了

编辑:好困LRS【新智元导读】今天给大家安利一个宝藏仓库miemiedetection,该仓库集合了PPYOLO、PPYOLOv2、PPYOLOE三个算法pytorch实现三合一,其中的PPYOL...

人工智能——图像识别(人工智能图像识别流程)

概述图像识别(ImageRecognition)是计算机视觉的核心任务之一,旨在通过算法让计算机理解图像内容,包括分类(识别物体类别)、检测(定位并识别多个物体)、分割(像素级识别)等,常见的应用场...

PyTorch 深度学习实战(15):Twin Delayed DDPG (TD3) 算法

在上一篇文章中,我们介绍了DeepDeterministicPolicyGradient(DDPG)算法,并使用它解决了Pendulum问题。本文将深入探讨TwinDelayed...

大模型中常用的注意力机制GQA详解以及Pytorch代码实现

分组查询注意力(GroupedQueryAttention)是一种在大型语言模型中的多查询注意力(MQA)和多头注意力(MHA)之间进行插值的方法,它的目标是在保持MQA速度的同时...

pytorch如何快速创建具有特殊意思的tensor张量?

专栏推荐正文我们通过值可以看到torch.empty并没有进行初始化创建tensor并进行随机初始化操作,常用rand/rand_like,randint正态分布(0,1)指定正态分布的均值还有方差i...