越南vps的Z-Blog内链关键字替换插件的修改

越南vps文章正文中的关键字内链插件是SEO常用的工具,越大的网站,越要更加重视内部链接结构的布局。因为良好的内部链接结构可以引导权值的传递,提高收录,提升内页排名。

搜索引擎算法对网页相关性列在很重要的位置,相关性越好的网页,越容易获得排名。所以,整个网站内部应该围绕相关性来规划网站结构。这也是网站结构规划的最基本原则之一。

Z-Blog的关键字内链插件有一些,我使用其中一个名为VKeyWords的插件进行内链替换,但是使用过程中发现一些问题。

该插件使用全部替换的方式,如果文章包含的关键字很多,则会替换非常多的关键字,这属于过度优化,很容易被搜索引擎惩罚,因此,我不得不对该插件进行了一些修改。

由于该插件的替换算法比较独特,不太好修改,因此,我主要修改的地方有以下:

1、关键字最多替换4次(也可以设置为其他的数字)。

2、某个关键字如果在文章里连续出现,则之后出现的均不替换。

经过这些修改,这个插件应该就不会引起过度SEO优化的风险了。

以下为修改方法:

修改function.asp文件的VKeyWords,将该函数后面一部分修改为如下代码:

Dim reg, patt, m, i, p, s, str, url

Dim maxnum, lastmatch

maxnum = 0

lastmatch = ""

str = Content

i = 0

p = 0

s = ""

patt = "a [^]*[^]*/a|[^]*|"

For i = 0 To UBound(keys)

patt = patt keys(i) "|"

Next

patt = Left(patt, Len(patt) - 1)

Set reg = New RegExp

reg.Global = True

reg.IgnoreCase = True

reg.Pattern = patt

Dim Matches, oMatch, j

Set Matches = reg.Execute(str)

For Each oMatch In Matches

If (Len(oMatch)0 And Left(oMatch, 1) "") And maxnum 4 And lastmatch oMatch Then

'不是a标签的时候执行替换

For j = 0 To UBound(keys) - 1

url = ""

If (LCase(oMatch) = LCase(keys(j))) Then

'如果是需要替换的值就替换

url = "a>If (Windows(j) "") Then

url = url ">End If

url = url "" keys(j) "/a"

If (oMatch.FirstIndex1) Then

s = s Mid(str, p + 1, oMatch.FirstIndex - p) url

Else

s = url

End If

p = oMatch.FirstIndex + Len(keys(j))

j = UBound(keys)

maxnum = maxnum + 1

lastmatch = oMatch

End If

Next

End If

Next

s = s Right(str, Len(str) - p)

VKeyWords = s