Jan 07
Meta keywords ASP
El otro día expliqué como hacer el meta description de html con ASP (por cierto mejorado), el de keywords no lo he puesto aún por que lo estaba mejorando ;)
Lo ideal es pasar le un texto no demasiado largo, yo le paso el description, ya que el meta keyword, cuanto mas parezca al contenido de la web, mucho mejor ;)
function getKeywords(texto)'convierte un texto a keywords
dim i,banned
getKeywords=lcase(texto)'todo a minusuclas
getKeywords=quitarHtml(getKeywords)’quitamos el html
banned = array(”;”,”:”,”.”,” from “,” ante ” , ” bajo “,” cabe “,” contra “,” desde “,” entre “,” hacia “,” hasta “,” para “,” según “,” sobre “,” tras “,”,,”,” “)’palabras de mas de 3 caracteres que no queremos y los espacios los substituimos por comas
for i = 0 to uBound(banned)
getKeywords = replace(getKeywords, banned(i),”,”)’reemplazamos
next
getKeywords=delMenoresDe(3,getKeywords,”,”)’quitamos palabras menores de 3, esto es configurable
getKeywords=delDuplicados(getKeywords,”,”)’eliminamos las palabras duplicadas
end function
También necesitareis estas tres funciones, la primera elimina todas las palabras menores de X, la segunda las palabras duplicadas, y la tercera te dice si un elemento esta en un array
1.
function delMenoresDe(num,str,car)'elimina las palabras menores de num de una cadena STR, las diferencia usando la variable CAR
dim i,arr
arr=split(str,car)'split de str, por el car
for i = 0 to uBound(arr)
if len(arr(i))>num then
delMenoresDe = delMenoresDe & arr(i) & car'concatenamos con CAR
end if
next
if len(delMenoresDe)>len(car) then delMenoresDe=left(delMenoresDe,len(delMenoresDe)-len(car))'quitamos la ultima posicion y se devuelve
end function
2.
function delDuplicados(str,car)'elimina palabras duplicadas de una cadena STR, las diferencia usando la variable CAR
dim i,arr
arr=split(str,car)'split de str, por el car
for i = 0 to uBound(arr)
if not enArray(arr(i),split(delDuplicados,car)) then 'si no esta en el delDuplicados, lo concatenamos con el CAR
delDuplicados = delDuplicados & arr(i) & car'concatenamos con CAR
end if
next
if len(delDuplicados)>len(car) then delDuplicados=left(delDuplicados,len(delDuplicados)-len(car))'quitamos la ultima posicion y se devuelve
end function
3.
function enArray(str,arr)'dice si un str, esta en un array
dim i:i=0
enarray=false
while enarray=false and i<=ubound(arr)
if lcase(arr(i))=lcase(str) then 'si se encuentra en el array
enarray=true
end if
i=i+1
wend
end function



