Jump to content

Problema con el sitemap


rgform

Recommended Posts

Tengo un problema con el sitemap. Cuando me pongo a generarlo en el modulo de prestashop que viene por defecto me lo genera pero cuando voy a verlo no me ha puesto todos los links de los productos. No añade los links de los nuevos productos creados.

 

¿Porque pasa esto? ¿Que solución tiene?

Link to comment
Share on other sites

Prueba a indexar los productos antes de crear el sitemap. No debería importar pero hazlo por si acaso.

He visto algún que otro funcionamiento anómalo en el módulo de generación de sitemaps de cosas que no debería hacer pero las hace.

Link to comment
Share on other sites

La nueva versión 2.2.5 funciona perfectamente, yo ya he comprobado que Google a indexado 828 paginas y 33 fotos sin ningún error, pero antes hay que desistalar la versión anterior, comprimir la carpeta en un archivo ZIP, yo intente hacerlo con WIN RAR y no me lo aceptaba, y añadir módulo desde la pestaña añadir módulos.Yó no he entrado en las entrañas del sitemap para saber si algo no esta bien pero lo que os puedo decir es que yo he indexado en google el sitemap correspondiente a España y Google lo ha indexado bien, prácticamente están todas las paginas de 845 ha indexado 828 y de 835 fotos ha indexado 33 entiendo que es cuestión de tiempo por que no ha dado un solo error.

 

También tengo que añadir que después de generar el sitemap genere un nuevo archivo robot.txt con Prestashop.

 

Nota: yo me descargue todos los módulos descomprimí la carpeta winrar que me generó la descarga, localicé el módulo Gmap lo comprimí en ZIP y lo añadí con la pestaña insertar módulo.

Saludos

Miguel

Edited by mch46025 (see edit history)
Link to comment
Share on other sites

la 2.2.3 me daba error en w...tool y tube qu ecorregir los xml a mano para que no diese el error

a mi también me da error.

¿Qué fue lo que corregiste?

voy a probar a desinstalar y descargar la versión del Gitub, pero por si acaso me sigue dando problemas, me gustaría saber qué modificar.

Link to comment
Share on other sites

No se si le solucionaré la vida a alguien pero os cuento lo que me pasaba:

 

Estaba intentando generar el sitempa con al versión antingua, con la nueva eliminando el módulo, borrando los datos de las tablas (porque quedaban restos!!!)... y solo me generaba una página de 200 kb cuando tengo 7000 productos, no hacía ninguno de ellos.

Me he puesto a revisar el código y he visto que en gsitemap.php va llamando a las funciones para hacer la consulta a la base de datos e ir incluyendo la información. Si abris el fichero la funciones empiezan:

 

private function _getCmsLink(...

private function _getManufacturerLink(...

private function _getCategoryLink(...

.

.

.

 

Pues bién, me he dado cuenta que las funciones que si introducían en el sitemap en la select tenían:

 

`id_lang` = '.(int)$lang['id_lang'].'

 

y las que se las saltaba:

 

`id_lang` = '.(int)$lang.'

 

Es decir que no apuntaba al elemento del array correspondiente por lo que no sabía que idioma era el correcto y ponía un 1.

Si vuestro id_lang en la tabla xxx_lang es 1 y coincide con el que teneis activo no hay problema pero como yo lo tengo en el número 4 me daba error.

 

La solución es buscar las apariciones de (int)$lang y comprobar que tenga su ['id_lang'] y en caso contrario ponerlo.

 

A mi me ha funcionado.

 

Un saludo

Link to comment
Share on other sites

No se si le solucionaré la vida a alguien pero os cuento lo que me pasaba:

 

Estaba intentando generar el sitempa con al versión antingua, con la nueva eliminando el módulo, borrando los datos de las tablas (porque quedaban restos!!!)... y solo me generaba una página de 200 kb cuando tengo 7000 productos, no hacía ninguno de ellos.

Me he puesto a revisar el código y he visto que en gsitemap.php va llamando a las funciones para hacer la consulta a la base de datos e ir incluyendo la información. Si abris el fichero la funciones empiezan:

 

private function _getCmsLink(...

private function _getManufacturerLink(...

private function _getCategoryLink(...

.

.

.

 

Pues bién, me he dado cuenta que las funciones que si introducían en el sitemap en la select tenían:

 

`id_lang` = '.(int)$lang['id_lang'].'

 

y las que se las saltaba:

 

`id_lang` = '.(int)$lang.'

 

Es decir que no apuntaba al elemento del array correspondiente por lo que no sabía que idioma era el correcto y ponía un 1.

Si vuestro id_lang en la tabla xxx_lang es 1 y coincide con el que teneis activo no hay problema pero como yo lo tengo en el número 4 me daba error.

 

La solución es buscar las apariciones de (int)$lang y comprobar que tenga su ['id_lang'] y en caso contrario ponerlo.

 

A mi me ha funcionado.

 

Un saludo

 

¿Hablas de aqui: https://github.com/PrestaShop/PrestaShop-modules/blob/master/gsitemap/gsitemap.php ?

Link to comment
Share on other sites

¿Y por que a mi me genera el sitemap completo?

 

Por lo que he explicado antes, tendrás en el id_lang de la tabla xxx_lang un 1 en ese campo.

Si lees el código que me has pasado en github y compruebas la linea 255 verás que hay lo hace bien pero en la linea 286 lo hace mal, fijate en la defifinición del array $lang

Link to comment
Share on other sites

Por lo que he explicado antes, tendrás en el id_lang de la tabla xxx_lang un 1 en ese campo.

Si lees el código que me has pasado en github y compruebas la linea 255 verás que hay lo hace bien pero en la linea 286 lo hace mal, fijate en la defifinición del array $lang

ahh vale...

¿Por que no sugieres la modificación en github?

 

Gracias.

Link to comment
Share on other sites

No se si le solucionaré la vida a alguien pero os cuento lo que me pasaba:

 

Estaba intentando generar el sitempa con al versión antingua, con la nueva eliminando el módulo, borrando los datos de las tablas (porque quedaban restos!!!)... y solo me generaba una página de 200 kb cuando tengo 7000 productos, no hacía ninguno de ellos.

Me he puesto a revisar el código y he visto que en gsitemap.php va llamando a las funciones para hacer la consulta a la base de datos e ir incluyendo la información. Si abris el fichero la funciones empiezan:

 

private function _getCmsLink(...

private function _getManufacturerLink(...

private function _getCategoryLink(...

.

.

.

 

Pues bién, me he dado cuenta que las funciones que si introducían en el sitemap en la select tenían:

 

`id_lang` = '.(int)$lang['id_lang'].'

 

y las que se las saltaba:

 

`id_lang` = '.(int)$lang.'

 

Es decir que no apuntaba al elemento del array correspondiente por lo que no sabía que idioma era el correcto y ponía un 1.

Si vuestro id_lang en la tabla xxx_lang es 1 y coincide con el que teneis activo no hay problema pero como yo lo tengo en el número 4 me daba error.

 

La solución es buscar las apariciones de (int)$lang y comprobar que tenga su ['id_lang'] y en caso contrario ponerlo.

 

A mi me ha funcionado.

 

Un saludo

 

Buenas noches a todos,

 

 

Gracias por la información, y por realizar el reporte tal como ha sugerido Rubalcaba.

 

Por cierto, he visto que otro usuario ya reporto el cambio, hace unos dias: https://github.com/axometeam/PrestaShop-modules/commit/706a32f9efb0c008829db09e2e58f4b859c81789

 

Supongo que el reporte que usted acaba de realizar es este: https://github.com/agusjar/PrestaShop-modules/commit/e7e6aaeeebae84fed5bfd8770ebc76234131ce92 ¿no?

Link to comment
Share on other sites

Buenas noches a todos,

 

 

Gracias por la información, y por realizar el reporte tal como ha sugerido Rubalcaba.

 

Por cierto, he visto que otro usuario ya reporto el cambio, hace unos dias: https://github.com/a...e58f4b859c81789

 

Supongo que el reporte que usted acaba de realizar es este: https://github.com/a...ebc76234131ce92 ¿no?

 

Si nadie, es como dices, no ví que ya hubieran reportado el fallo.

 

Un saludo

Link to comment
Share on other sites

Eso mismo es lo que me sale a mi!!

Que me falta la etiqueta XML. Me da por pensar que es un problema en la generación de las etiquetas para imágenes porque no me indexa ninguna imágen y las versiones anteriores de sitemap me decía x páginas indexadas, n imágenes indexadas y ahora sólo me indexa páginas.

y además, como tengo 8000 productos, me genera 2 sitemaps. O sea, un índice y luego me reparte los productos en 2 sitemaps.

Pues he detectado que en el corte entre un sitemap y otro se "come" 3 ó 4 productos. Unas veces 3 y otras veces 4 y no hace el corte nunca en el mismo producto aunque varía por poco. (entre el producto nº 5730 y el 5735 )

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...