Siempre será más seguro hacer PRSculting usando javascript que usando nofollow en los enlaces,
ya que será Google quién decida cuándo, cómo y cuánto valor le otorgará
a esos enlaces cuándo valdrán para descubrir urls y cuándo serán
ignorados. No sería la primera vez que "juega" con nosotros, diciendo
que el uso de nofollow en los enlces era eficaz para mejorar el link Juice, y reculando al tiempo alegando que no le gustaba lo que estaba ocurriendo y que ya no sería eficaz.
Como ya sabemos, desde hace tiempo, Google renderiza JavaScript, y es capaz de mostrarte un pantallazo, y saber que se ve en ese momento y que no, pero como hemos visto por aquí, parece que Google es incapaz de interactuar ni lo más mínimo, aquí hemos hecho diversos test, y parece que si no le muestras algo que parezca una url no es capaz de rastrear practicamente nada.
No llega a saber si determinadas acciones de los usaurios o del site dispararán eventos y si estos modificarán el diseño o cargarán más contenido, etc.. Resumiendo, Google sabe sacar fotos de la web, de qué colores se compone y si algo se parece a un banner que ocupa todo.... pero no sabe interactuar, y no entenderla más allá de esa foto.
Gracias a que Google no interpreta el javascript tanto como le gustaría y como nos hace creer, podemos hacer que haya elementos de nuestro site que actuen como enlaces "camuflados" a ojos de Google. Esto nos valdrá para distribuir el valor de cada url del site con determinada intención, dirigir nuestro Page Rank y no desperdiciar ningún punto de valor hacia urls que no nos interesa posicionar, preferimos distribuir esos puntos de PR, por pocos que sean, hacia otras urls que sí nos interesa posicionar.
Por esta razón vamos a volver a comprobar una manera relativamente sencilla de conseguir que determinados enlaces no sean vistos por Google y así no diluír nuestra fuerza a urls no potenciales.
El método es el siguiente
<?php
function base64url_encode($data) { return rtrim(strtr(base64_encode($data), '+/', '-_'), '='); } function base64url_decode($data) { return base64_decode(str_pad(strtr($data, '-_', '+/'), strlen($data) % 4, '=', STR_PAD_RIGHT)); } php?> |
<span class="camuflaEnlace" atributo= "<?=base64url_encode("http://mecagoenlos.com");?>">Click aquí para ir a este site</span>
|
<span class="camuflaEnlace" atributo= "aHR0cDovL21va29hbWFyZ28uY29t">Click aquí para ir a la web</span>
|
<span class="camuflaEnlace" atributo= "aHR0cDovL3d3dy5tZWNhZ29lbmxvcy5jb20vZGVzdGluby1saW4tY2FtdWZsYWRvLnBocA" style="cursor:hand;cursor:pointer;">Click aquí (rnacuukv) para ir a url ofuscada</span>
|
<script type="text/javascript">
function utf8_to_b64(str) { return window.btoa(encodeURIComponent(escape(str))); } function b64_to_utf8(str) { return unescape(decodeURIComponent(window.atob(str))); } function b64_to_utf82(str) { return decodeURIComponent(escape(window.atob(str))); } $(document).ready(function () { $(".camuflaEnlace").click(function(event) { alert("Ahora irás a la página "+b64_to_utf8($(this).attr("atributo"))); window.location.href=b64_to_utf8($(this).attr("atributo")); }); }); function cargarDivCodificado(div,url) { $(div).load(decodeURIComponent(b64_to_utf82(url))); } </script> |
Ahora vamos a probarlo, ya que en el anterior experimento sobre enlaces ofuscados con esta técnica, no sé por qué, pero no hice ninguna prueba para comporbar si Google era capaz de interpretar este tipo de enlaces y si valoraba su texto como un enlace "normal". aunque vaticino que no, anteriormente hemos visto casos mucho más simples de javascript que no era capaz de interpretarlo.
Click aquí (rnacuukv) para ir a url ofuscada
A Gogle con el JavaScript lo veo un poco como la cámara fotográfica contra el fotógrafo. Google es la cámara, saca la foto, sabe de que colores está compuesta, pero no entiende las emociones que representa esa foto, o mejor dicho, que podría representar. Google ve la foto, pero no es capaz de "darle una vuelta" a la idea inicial.
No es capaz de sacar conclusiones de un código fuente, que aunque ejecute, no interpreta. Javascript no es html, las mismas lineas de javascript pueden pueden hacer tantas cosas como al programador se le ocurra, y sobretodo, es para interactuar con el cliente y con lo que hace, algo que aun está muy lejos de conseguir Google, creo que el javascript podría representar una de sus mayores amenazas, que en un futuro internet evolucione hacia una comunicación mediante de fragmentos json entre webs, servicios y aplicaciones debería preocuparles.
Veremosi nos sorprende y lo interpreta, pero lo dudo.
Todo depende de cómo lo uses, si lo haces únicamente con el objetivo de alterar los resultados del buscador podría ser penalizado, como culaquier cosa que tenga como objetivo 'engañar' a Google.
De momento no, principalmente porque Google no hace click en cada elemento HTML, y menos en elementos que no sean <a . De todas maneras siempre es recomendable asegurarnos de que Google no accede a estas URLs, lo podemos ver a través de los logs del servidor, o con diversos experimentos SEO e incluso usando Google Analytics para monitorizar a Googlebot.
Juan Gonzalez (@)hace Hace más de 7 años y 291 días
Hola Lino,
¡Enhorabuena por el post y en general por tu contribución a la escena SEO!
En la teoría el mundo podría ser perfecto: Cada trozo de contenido relacionado, tiene una y sólo una lógica y correspondiente URL que sobrevive una década. Pero la realidad es otra.
Los enemigos más grandes de los sitios Web grandes, son los desarrolladores y JavaScript. Cada vez que el bot de Google aprende un poco más de Java, los desarrolladores se inventan una tercera versión de la misma URL o llevan acabo la quinta migración de CMS. Y del concepto inicial del sitio Web, queda más bien poco.
?Aunque es correcto los que explicas sobre los enlaces con texto, me gustaría añadir 2 cosas importantes que la gente olvida. Si el primer enlace hacia URL1 es una imagen pero en el texto hay un enlace hacia URL1, el texto le gana a la imagen, es decir, Google valorará ese texto. Google no se fía del texto de las imágenes. El segundo punto es el valor que reparte. Hoy en día creo que Google no reparte por igual el valor (en tu ejemplo 80/2=40), si no que posiblemente se basa en la forma que el usuario hace uso de esos enlaces. Su valor aumente/disminuye en base a su uso.
La última actualización de Penguin sólo generó ganadores, eso significa, que Google ha combatido exitosamente el spam y que ahora sabe con más exactitud qué enlaces tienen realmente un valor.
¡Nuevamente gracias, Lino!
Un abrazooote y espero que nos podamos ver pronto,
Juan
Errioxa (@)hace Hace más de 7 años y 291 días
@Juan Gonzalez encantado de tenerte por aquí!
Estoy totalmente de acuerdo contigo en lo que comentas de JavaScript / desarrolladores y la evolución en la que nos movemos.
Sobre lo del lisnk, también tienes razón, no quería hacer un hiper post, porque las pruebas han sido muchas, y algunas muy sorprendetes!.
Aquí una pequeña recopilación de experimentos sobre el primer link en distintos escearios:
Si el primer enlace es una imagen ignora el alt como bien apuntas.
Cómo valora Google un enlace que engloba una imagen y a la vez el texto
Y para mi, estos dos son los más curiosos, Ignorando el primer enlace
Y
Experimento transcendental con enlaces ancla,
Pero sí, creo que tengo que empezar a ordenar los posts del blog porque hay muchos experimentos y están todos por ahí desperdigados.
Juan Gonzalez (@)hace Hace más de 7 años y 291 días
¡Con mucho gusto Lino, para mi es un honor! :)
Unos de los trucos que solía usar yo para diferentes “keywords\\\" hacia la misma ULR, desde un mismo documento, era usando diferentes Anchor-text:
Anchor text 1
Anchor text 2
¿Sabes si funciona aún o tienes algún experimento en el blog?
Un abrazo
Errioxa (@)hace Hace más de 7 años y 291 días
@Juan Gonzalez
El que he visto ahora revisando es este que ignora la KW del primer enlace, pero habrá que hacerlo bien.
Me lo apunto para hacer un par de test esta semana en este site y en otro par de ellos a ver si sacamos en cclaro cómo los trata.
Jose Maria (@)hace Hace más de 7 años y 254 días
Hola,
Interesante truco, creo que en WP si lo quieres meter en un post, o junto un formulario de contacto (por ejemplo un Aviso legal), o un widget, necesitas hacer algo más puesto que el editor no acepta el código php...
Por otro lado, lo que dices cuando pones muchas veces las url repetidas en imagenes, texto, etc, y que Google solo toma en cuenta la primera url de destino creo que es una verdad a medias, me explico:
En experimentos que he visto con mis propios ojos analizando logs del servidor, cuando dichas webs son RASTREADAS POR PRIMERA VEZ, Google no siempre SIGUE el primer enlace que se encuentra. A veces sigue el tercero, otras veces el segundo, etc. Si es verdad que son enlaces que apuntan todas a diferentes páginas, pero el hecho de que la primera vez que se rastrea una pagina no siempre siga al primer enlaces contextual, creo que puede ser indicativo de que no siempre va a seguir el primer enlace, independientemente de que sea una url de destino única o no...
Por otra parte, suponiendo que eso fuera verdad, una cosa es el anchor que tenga en cuenta Google o la url que siga, y otra distinta es el reparto de linkjuice. Dejando el "reasonable surfer" fuera de esta ecuación, apostaría mucho dinero, al menos es la sensación que tengo, que si repites 5 veces un enlace (1 vez en el menú, 2 veces contextual, 1 vez en el sidebar) esa url de destino va a recibir mayor linkjuice que otra url que tenga solo 1 enlace contextual arriba igual. De todas formas es algo que no puedo afirmar al 100% porque no tengo pruebas concluyentes, pero sí apostaría a que es así..
Saludos!
Lino Uruñuela (@)hace Hace más de 7 años y 250 días
Hola Jose María!
Creo que no me expliqué bien, lo del primer enlace es que solo contará el anchor text (texto del enlace) del primer link que haya hacia una url de destino desde una url de origen.
Cuando hay dos enlaces, desde una misma url, hacia otra url solo tendrá en cuenta el texto del primer enlace en el código fuente, el texto del segundo enlace lo ignorará.
Saludos!
Gerardo (@)hace Hace más de 7 años y 244 días
Hola Lino
El post está genial, pero si me permites la crítica constructiva, vigila la redacción: permitren, trasnsfiera, quieo, etc. etc.
Te puede restar credibilidad de unos argumentos tan buenos.
Saludos
Lino Uruñuela (@)hace Hace más de 7 años y 231 días
@Gerardo, gracias!! la verdad es que tienes toda la razón, parece que tengo dislexia...
No acostumbro siquiera a revisar los textos antes de publicar. Recojo el guante y a partir de ahora lo haré :)
Saludos!
Mateo Bohorquez (@)hace Hace más de 7 años y 41 días
Hola hermano, lo he intentado y no me funciona. para acotar problemas lo que hize fue usar ejemplo que nos redirige a otra pagina. este:
Click aquí (rnacuukv) para ir a url ofuscada
y agregar el .js al header.php de mi proyecto en wordpress, pero no consigo hacer que me funciona, doy click y no pasa nada, tambien lo probe desde otro navegador..
y si me voy a codigo de fuente, el js esta bien cargado.
Que puedo hacer o que piensas que sea? muchas gracias
Ana (@)hace Hace más de 6 años y 347 días
Muy interesante el artículo, pero tengo una cuestión. ¿Qué se haría con todos esos enlaces que desaparecen si ya han sido indexados por los bots (ej:enlaces generados por un filtro que ya no existen)? ¿410 o 301?
Lino Uruñuela (@)hace Hace más de 6 años y 347 días
Hola Ana!
Si esas urls no tenían tráfico orgánico, o este es despreciable yo usaría un 410. Si no hay más enlaces hacia estas urls poco a poco Google dejará de pasar con tanta frecuencia, aunque siempre las tendrá en su "historial" y puede que de vez en cuando pruebe a ver si esas urls siguen dando error.
David (@)hace Hace más de 6 años y 188 días
Hablando sobre la ofuscación de enlaces, tras las últimas noticias de Google y su segunda oleada de indexación tras la renderización de la página.
¿Tiene sentido ofuscar enlaces con JS?
Según esto entiendo que no, ya que tras la segunda oleada de indexación, tras la renderización Google sería capaz de identificar ese enlace.
Lino Uruñuela (@)hace Hace más de 6 años y 182 días
@David Es capaz de renderizar e interpretar el JavaScript siempre que no haga falta la interacción del usuario. Me explico, si pones una función en el onload que cargue contenido de otra url, aunque esté ofuscada la seguirá.
Pero otra cosa es que para decodificarla necesite hacer click, como en este caso. Google no hará click en los elementos HTML por lo que nunca llegará a decodificar esa url ni a seguirla ;)
Saludos
juan (@)hace Hace más de 6 años y 64 días
Hola Lino Uruñuela, una duda ¿aun funciona? porque no lo logro.
Mira, en un index.php tengo este codigo:
Camuflados
Anna (@)hace Hace más de 4 años y 182 días
anna (@)hace Hace más de 4 años y 182 días
donde se pone el php i jv para wordpress?
Lino (@errioxa)hace Hace más de 4 años y 181 días
Hola @anna , creo que Fede desarrolló un plugin para WordPress
Pepe (@)hace Hace más de 2 años y 14 días
Muchas gracias por el articulo!! Muy buena información.