Como webmaster a cargo de un sitio pequeño que tiene un foro, recibo regularmente quejas de los usuarios de que tanto el motor de búsqueda interno como las búsquedas externas (como cuando se usa Google) están totalmente contaminadas por las firmas de mis usuarios (están usando mucho tiempo). firmas y eso es parte de la experiencia del foro porque las firmas tienen mucho sentido en mi foro).
Así que básicamente estoy viendo dos opciones a partir de ahora:
Renderizando la firma como una imagen y cuando un usuario hace clic en la "imagen de la firma" se la lleva a una página que contiene la firma real (con los enlaces en la firma, etc.) y esa página se establece como no rastreable por búsqueda arañas de motor). Esto consumiría algo de ancho de banda y necesitaría algo de trabajo (porque necesitaría un renderizador HTML que produzca la imagen, etc.) pero obviamente resolvería el problema (hay pequeños inconvenientes en que la firma no respetaría el esquema de fuente / color de los usuarios, pero mis usuarios son muy creativos con sus firmas de todos modos, usan fuentes / colores / tamaños personalizados, etc., por lo que no es un gran problema).
Marcar cada parte de la página web que contiene una firma como no rastreable.
Sin embargo, no estoy seguro de lo siguiente: ¿es algo que se puede hacer? ¿Puedes marcar partes específicas de una página web como no rastreables?
fuente
Otra solución es envolver el sig en un span o div con un estilo establecido en
display:none
y luego usar Javascript para eliminarlo, de modo que el texto se muestre para los navegadores con Javascript activado. Los motores de búsqueda saben que no se mostrará, así que no deberían indexarlo.Este bit de HTML, CSS y JavaScript debería hacerlo:
HTML:
CSS:
javascript:
Deberá incluir una biblioteca jquery .
fuente
Tuve un problema similar, lo resolví con css pero también se puede hacer con javascript y jquery.
1 - Creé una clase que llamaré "
disallowed-for-crawlers
" y colocaré esa clase en todo lo que no quería que el robot de Google viera, o colóquela dentro de un lapso con esa clase.2 - En el CSS principal de la página tendré algo como
3- Cree un archivo CSS llamado disallow.css y agréguelo al robots.txt para que no se pueda rastrear, por lo que los rastreadores no accederán a ese archivo, pero lo agregarán como referencia a su página después del CSS principal.
4- En
disallow.css
coloqué el código:Puedes jugar con javascript o css. Acabo de aprovechar las clases de no permitir y css. :) espero que ayude a alguien.
fuente
Una forma de hacerlo es usar una imagen de texto lugar de texto sin formato.
Es posible que Google finalmente sea lo suficientemente inteligente como para leer el texto de la imagen, por lo que podría no estar completamente preparado para el futuro, pero debería funcionar bien por lo menos durante un tiempo a partir de ahora.
Hay un montón de desventajas en este enfoque. Si una persona tiene discapacidad visual, es malo. Si desea que su contenido se adapte a dispositivos móviles en lugar de computadoras de escritorio, es malo. (y así)
Pero es un método que actualmente (algo) funciona.
fuente
Esto es facil.
Antes de publicar su página, necesita saber si se trata de un bot, una computadora o un teléfono. Luego debe configurar el contenido en consecuencia. Esta es una práctica estándar en la actualidad y la funcionalidad principal de algunos CMS.
Hay muchas soluciones en SE para hacer la redirección basada en AGENTE DE USUARIO que se puede poner en su acceso. Si esto se adapta a su software de foro, entonces puede ejecutar un código diferente en la misma base de datos para entregar lo que Google necesita sin la paja y los recortes.
Alternativamente, puede poner una pequeña línea en su código PHP que haga un 'si USUARIO AGENTE == Googlebot entonces no muestra firmas'.
Si realmente no puede hacer eso, puede obtener mod_proxy para servir al bot y usarlo para eliminar cualquier cosa que genere su código php que el bot no necesite ver.
Técnicamente, Google no aprueba que su motor de búsqueda muestre una página diferente a la que ve el visitante normal del sitio, sin embargo, hasta la fecha, no han eliminado a la BBC ni a otros que proporcionan contenido específico del navegador / IP / visitante de los resultados de su motor de búsqueda. . También tienen medios limitados para ver si su bot ha sido 'estafado'.
La solución alternativa de ocultar contenido con CSS para que un script vuelva a habilitarla también es un poco gris. De acuerdo con sus propias directrices de Herramientas para webmasters de 20/6/11, esta no es una buena idea:
http://www.google.com/support/webmasters/bin/answer.py?answer=66353
Puede que no sea una tableta moldeada en piedra, pero está actualizada y según Google.
El truco para ocultar el contenido no funcionará con la minoría de personas que no tienen JavaScript, esto puede no ser una gran preocupación, sin embargo, esperar a que se cargue el documento y luego mostrar las firmas no será una experiencia de visualización satisfactoria como lo hará cree que la página se ha cargado, luego saltará cuando aparezcan las firmas ocultas para luego empujar el contenido hacia abajo. Este tipo de carga de página puede ser irritante si tiene una red superior de gama baja, pero puede no ser notable si tiene una máquina rápida de desarrolladores con una conexión rápida a Internet.
fuente
No, no hay forma de evitar que los robots rastreen partes de las páginas. Es una página entera o nada.
Los fragmentos en los resultados de búsqueda de Google generalmente se toman de la meta descripción en la página. Por lo tanto, puede hacer que Google muestre una parte específica de la página poniéndola en la etiqueta de meta descripción. Con el contenido generado por el usuario es difícil obtener buenos fragmentos, pero tomar la primera publicación del hilo probablemente funcionaría.
La única otra forma en que puedo pensar es usar Javascript. Algo como Paulmorriss sugirió puede funcionar, pero creo que los motores de búsqueda aún indexarían el contenido si está en el HTML. Puede eliminarlo del HTML, almacenarlo en una cadena Javascript y luego agregarlo nuevamente en la carga de la página. Sin embargo, esto se vuelve un poco complejo.
Finalmente, una cosa a tener en cuenta: si Google muestra las firmas de los usuarios en sus fragmentos, ha decidido que esa es la parte más relevante para la consulta del usuario.
fuente
Puede poner la página en un PHP si con un "else" que conduzca a un captcha que proporcione la clave para la parte if.
Realmente no me importa porque si la credencial del usuario no coincide en mi página, obtiene una página en blanco o se envía a la página de inicio de sesión.
$key
debería ser un hash del día actual o algo que cambie, por lo que no es suficiente agregar el valor a la sesión.Escribe el comentario si quieres que agregue un captcha de ejemplo porque no tengo uno ahora.
fuente
Aparentemente, <! - googleoff: all -> y <! - googleon: all -> hacen lo que quieren.
Más información https://www.google.com/support/enterprise/static/gsa/docs/admin/70/gsa_doc_set/admin_crawl/preparing.html#1076243
https://perishablepress.com/tell-google-to-not-index-certain-parts-of-your-page/
fuente