Do not speak Spanish? Read this post in English.

Viernes, 10 d abril d 2009.

Plugin JQuery para esconder links | Black Hat Seo

Es conocido que para SEO los links que encontramos en el propio contenido de la web "cuentan más" que aquellos que situamos en menús, footers, sidebars, etc... Sabiendo esto, es normal que se haya convertido en una práctica común el buscar coincidencias con palabras exactas en los contenidos para reemplazar estos textos por links SEO.

El problema de esta técnica es que muchas veces se generan webs extrañas y aunque la práctica de incluir palabras como links en medio del textos es tán antigua como el html muchos usuarios no entienden bien estas apariciones y lo ven más como una molestia que otra cosa.

Para solucionar este problema he creado un pequeño plugin de jquery que nos permita esconder los links incluidos en el texto. El funcionamiento es sencillo: buscamos dentro de un contenedor de texto y cambiamos los estilos css de todos los links que se encuentren en medio del texto para darles la misma apariencia que al texto normal y de paso quitar el cambio de cursor al pasar por encima. Al hacer esto con javascript no es tan obvio que esos links no son visibles y al los buscadores les costará más penalizarnos (pero no nos engañemos, esto es black hat y por lo tanto penalizable si nos pillan).

El plugin es el siguiente:

(function($){
  $.fn.extend({
    hideMe : function(){
      $(this).css( {
        color: $(this).parent().css("color"),
        fontSize: $(this).parent().css("fontSize"),
        textDecoration: $(this).parent().css("textDecoration"),
        fontStyle: $(this).parent().css("fontStyle"),
        fontWeight: $(this).parent().css("fontWeight"),
        cursor:$(this).parent().css("cursor")
      }).attr("title","");
    },
    hideLinks : function () {
    links = $(this).find("a");
      for(var i=0;i<links.length;i++)
        $(links[i]).css({
          color: $(links[i]).parent().css("color"),
          fontSize: $(links[i]).parent().css("fontSize"),
          textDecoration: $(links[i]).parent().css("textDecoration"),
          fontStyle: $(links[i]).parent().css("fontStyle"),
          fontWeight: $(links[i]).parent().css("fontWeight"),
          cursor:$(links[i]).parent().css("cursor")
        }).attr("title","");
      }
    })
})(jQuery);
$(document).ready(function(){
  $("a.hideMe").hideMe();
  $(".hideLinks").hideLinks();
});

¿Como usarlo?

Básicamente tiene 2 modos:

- hideMe() es una función que podemos aplicar a cualquier link para que este se oculte. Esto lo hacemos link a link, id a id, o clase a clase, y nos permite mayor control sobre que escondemos y que no.

$("a#miLink").hideMe();

hideMe() se lanza por si solo para todos los links que tengan la clase "hideMe" con lo que para marcar uno a uno los links a ocultar basta con ponerles la clase "hideMe"

<a class="hideMe" href="...">...</a>

- hideLinks() se aplica sobre los contenedores globales donde queremos esconder los links. Es una forma más cómoda en la que simplemente englobamos todo el contenido dentro de un elemento html (por ejemplo un "div") y mediante un id o una clase indicamos que deben esconderse todos los links que encuentre dentro.

$("div#miContenido").hideLinks();

hideLinks se lanza por si solo para todos los contenedores que tengan la clase "hideLinks" con lo que para marcar uno a uno los contenenedores de links a ocultar basta con ponerles la clase "hideLinks"

<div class="hideLinks">
<p>bla bla bla bla <a href="...">bla bla </a> bla </p>
<p>bla bla bla</p>
</div>

Temas Relacionados: jquery seo

Autor:

Anímate y deja tu comentario

Esto son experimentos, no preguntes ;) prueba metadescription Prueba title