Googlebot está obteniendo la versión sin javascript del sitio

Así que acabo de notar que Discourse sirve una versión sin JS del sitio a Google…

He estado usando JS para establecer el título del sitio, la meta descripción, el canónico, etc., y parece que Google se está volviendo muy bueno para renderizar JavaScript del lado del cliente (me refiero a mi sitio normal, no a Discourse).

¿Hay alguna forma de deshabilitar esto y no darle a Google bot una versión específica?

… Además, Discourse tiene un enlace do-follow para sí mismo “Powered by Discourse”. ¿Hay algo que pueda hacer al respecto?

Edición 1: También debería añadir, no me importa tener un enlace de Discourse ahí, quizás no-follow, o do-follow pero no en todo el sitio.

Edición 2: Estoy en GitHub y veo que tengo opciones para eliminar el enlace - ¿Hay alguna sugerencia sobre hacia dónde debería inclinarme?

1 me gusta

¿Alguien tiene alguna idea al respecto?

Probablemente sea una buena idea explicar por qué esto es necesario. El comportamiento predeterminado dentro de Discourse funciona bien para la mayoría, según tu cuenta, es tu elección con lo anterior lo que está creando el conflicto.

4 Me gusta

Mis disculpas

Cuando digo que estoy usando JavaScript para el título, la descripción canónica y la meta-descripción, me refiero a mi sitio web normal, no a la configuración de Discourse. Solo intentaba transmitir mis experiencias con Googlebot y JS

Intenté ajustar el archivo robots, eso no pareció servir la versión de JavaScript a Google

Editar: También estoy empezando a comprender cuánto de Discourse es una aplicación, del lado del cliente, cosas muy interesantes. Aún así, sería interesante ver qué puede hacer Googlebot con él. Me imagino que al algoritmo le gustaría la configuración limpia.

1 me gusta

Correcto. Todo es una aplicación. Y hay pocas posibilidades de que Google pueda entenderlo, por lo que necesitaría una segunda aplicación, solo para Google, que es por eso que envía la versión estática.

2 Me gusta

Gracias por responder aquí @pfaffman

Solo para satisfacer la curiosidad, ¿hay alguna forma de probar esto? - Tengo curiosidad por saber cómo se verá el sitio si le damos una oportunidad a Google. Han empezado a abrirse realmente a la idea del JS del lado del cliente últimamente. Al menos en términos de SEO, tiene sentido intentarlo.

La versión sin JS sirve hipervínculos del mismo color que el texto. Por lo tanto, no se puede saber qué es un enlace (si eres un bot de Google).

El código fuente está disponible, así que solo tendrías que cambiar algo allí. Estoy bastante familiarizado con el código, pero no tengo idea de dónde buscar.

Creo que si eso fuera cierto, ya habría una respuesta, ya que a un montón de gente que sabe más de Discourse que yo y más de SEO que cualquiera de nosotros le importa profundamente este asunto.

¿Realmente crees que el bot de Google es daltónico y mira el color del texto para decidir qué es un enlace? ¿Y no es capaz de leer el HTML para ver qué es un href? Eso parece improbable.

1 me gusta

En realidad, es totalmente daltónico :wink:

Mucha gente, incluso expertos en SEO, creen que los bots ven un sitio web de la misma manera que nosotros lo vemos en la pantalla.

Bueno, me estoy saliendo un poco del tema.

3 Me gusta

Estaba pensando en iniciar un nuevo tema aquí en meta para discutir esto (no estoy lo suficientemente familiarizado con la jerga de pull requests/commits en GitHub).

Créeme, yo también estoy sorprendido… Yo tampoco me consideraría un principiante en lo que respecta al SEO, he estado involucrado intermitentemente durante más de una década. Lo que está sucediendo aquí son factores de clasificación negativos, sin duda. Puede que no perjudique el SEO de “LetsEncrypt”, pero sí a los más pequeños, sin duda.

Creo que la mayoría de los usuarios de Discourse pueden compartir tu mentalidad en cuanto al SEO. No le dan mucha importancia. Hay un montón de potencial oculto aquí.

Sí, saben que es un enlace, también saben que es oscuro, al igual que el texto, y a los usuarios no les gustará eso. No olvidemos que Google ahora nos clasifica según lo que ve en la versión sin JS.

En cuanto al enlace externo “Powered by Discourse”:

Recuerdo haber visto un video con John Mueller/Matt Cutts - los chicos de SEO de Google - y mencionaron que los enlaces internos ocultos (debido a menús, JS, etc.) en realidad no causan daño.

Sin embargo, también mencionó que si es un enlace externo, que solo muestras a Googlebot y no a los usuarios finales, podría ser un problema.

Siento que estoy en la zona crepuscular, para ser honesto. Te garantizo que, una vez que esto se solucione, todos los foros de Discourse verán un gran salto en el tráfico orgánico de Google.

Es muy fácil hacer afirmaciones como la anterior, especialmente cuando, según tu propia admisión, no comprendes el funcionamiento interno ni las decisiones de diseño que llevaron al estado actual.

Hablando de forma realista, no puedes garantizar nada aquí, y a menos que puedas convencer a alguien con las habilidades necesarias para modificar el código, seguirá siendo hipotético.

Si tienes un presupuesto para explorar esto, el Marketplace podría ser un buen punto de partida.

5 Me gusta

Tengo una idea muy general, la aplicación tiene mucho Javascript y, históricamente, Google ha tenido problemas con JS. Así que ustedes optaron por el simple no-JS que tenemos ahora. Mi argumento es, al menos, INTENTAR y ver qué renderiza Google con Javascript habilitado.

De hecho, creo que estoy subestimando esto, algunos están de acuerdo conmigo en Reddit technical SEO

Nota al margen:
Parece que los hipervínculos en el cuerpo del texto, al tener el mismo color que el texto, fueron parte de una actualización algo reciente. Las versiones anteriores de mi página en Google muestran que los enlaces son azules.

Sé que este es un tema bastante antiguo, pero como actualmente tengo interés en todos los temas de Discourse y SEO, y Nader parece estar por aquí, revivámoslo.

Tampoco me gusta mucho que Discourse sirva algo diferente específicamente a Google de lo que se sirve a todos los demás. Siempre he oído que esto era lo primero que NO se debía hacer, porque a Google no le gusta nada.

¿No fue uno de los problemas, o incluso el principal, que Discourse se consideraba lento para cargar con JS habilitado?

Esto se ha solucionado sirviendo una versión estática a Google y mostrando la animación de “cargando” para mostrar que algo aparece bastante rápido. “Algo”, sí, pero no la información que el usuario buscó y por la que hizo clic en el enlace. Esto tarda en mostrarse. Y al servir la versión JS, Google lo sabría. Mientras que actualmente está algo engañado para que no sepa cuánto tiempo tarda.

¿O estoy equivocado en esto?
¿Es esta una buena manera de hacerlo? ¿Lo sabe Google de todos modos? Por ejemplo, a partir de las estadísticas del navegador Chrome enviadas. ¿Y esto tal vez penaliza la clasificación?

2 Me gusta

He estado queriendo responder a esto durante un tiempo; es solo que soy un maestro de la procrastinación.

Al final del día, mantengo el comportamiento predeterminado de Discourse porque todo lo demás es demasiado difícil de mantener.

Estoy bastante seguro de que durante mis experimentos con esto, la versión JS fue mejor recibida por Google. Las impresiones siempre parecían aumentar cuando obtenía la mejor versión.

John Mueller de Google Search respondió a nuestros tuits sobre esto, aquí está el tuit inicial.

Todavía creo que algún tipo de solución realizada por la comunidad de código abierto sería enormemente beneficiosa. Quizás renderizado del lado del servidor.

Entiendo que esto sería algo importante para que Discourse lo asuma, pero imaginen el salto en el tráfico a todos los foros de Discourse si Google obtuviera una interfaz/diseño más agradable, etc.

John de Google dice que debería estar bien, así que eso debería tenerse en cuenta.

https://twitter.com/JohnMu/status/1644803668493971456

1 me gusta

Gracias por compartir.

Sin embargo, esta respuesta refuerza nuestro enfoque actual, ya que se trata de lograr que el contenido se indexe lo más rápido posible :sweat_smile:

7 Me gusta

Solo para añadir que actualmente estoy experimentando un crecimiento mejor que exponencial* en las impresiones y clics de Google en un sitio, ¡así que algo se está haciendo bien!

*probablemente no durará, ¡pero no culparé a Discourse por eso! :sweat_smile:

4 Me gusta

Entiendo, si pudiera añadir algo… por lo que entiendo, el rastreador de googlebot es bastante bueno encontrando contenido/páginas nuevas rápidamente independientemente de la pila detrás de la configuración. Esa no puede ser la única razón por la que Discourse utiliza la versión del rastreador, pero entiendo las implicaciones.

Quizás ahora con la IA y cómo está cambiando Internet, la idea del SEO en la página se volverá cada vez más un factor irrelevante y el contenido/los datos en sí mismos serán lo que más importe.

@stance455 Si Discourse sirve la versión JS, Googlebot notará cuánto tiempo pasa hasta que aparece el (verdadero) contenido. Lo cual es muy malo para el SEO.
El problema solo ocurre cuando Discourse se carga inicialmente. Pero esa es una métrica importante para las personas que hacen clic en un enlace de un motor de búsqueda (y, por lo tanto, también para Google).

1 me gusta