2012-05-18 29 views
6

Soy un novato en Magento. Estoy intentando configurar un Google Site Map generado automáticamente. He leído en todas partes cómo configurar el trabajo cron para Magento con cPanel, cómo configurar desde el back-end, etc.Magento y Google Sitemap - Cron

Mi configuración actual: en Sistema -> Configuración -> Google Sitemap -> Configuración de generación -> Habilitado = SÍ. He creado el mapa del sitio en el Catálogo -> Google Sitemap, por supuesto, que puedo generar manualmente sin ningún problema.

Pero si puedo comprobar el archivo /app/code/core/Mage/Sitemap/etc/config.xml que parece no ser actualizado (contenido diferente por cierto config.xml y back-end). También parece que la última actualización del sistema de archivos se realizó el 20/04/2012, en lugar de hoy. (También he ejecutado Fluch Magento y Storage Cache)

<generate> 
    <enabled>0</enabled> 
    <error_email/> 
    <error_email_template>sitemap_generate_error_email_template</error_email_template> 
    <error_email_identity>general</error_email_identity> 
</generate> 

¿Alguien me puede ayudar? Gracias!

+2

Me temo que algo se pierde en la traducción, ¿por qué generar una actualización del mapa del sitio config.xml? –

+0

Bueno ... He seguido esta publicación: http://stackoverflow.com/questions/9175563/magento-google-sitemap-and-cron ¿Es correcto editar la configuración de che.xml, o como he entendido, .xml solo se usa para los valores predeterminados? – Mauro

+0

Mauro, una vez que los valores de configuración están en la base de datos, reemplazan todos los datos almacenados en los archivos XML. El cron se puede ejecutar cada 10 minutos, pero el disparador actaul para el mapa del sitio solo se activará cuando esté programado en Magento, hora, minuto, etc. –

Respuesta

7

En Magento y Cron configuraciones, utilice cron.sh para hacer el disparo. También creo en Confíe pero verifique lo que significa configurar cron y luego ver la tabla de salida del trabajo cron para las ejecuciones correctas.

Vaya a la Configuración avanzada del sistema y configure Cron Success History Lifetime y Failure Lifetime en 1440, por lo que está supervisando un lapso de tiempo de 24 horas.

Ahora podrá ver las operaciones de índice, etc. en la secuencia de tiempo. Habrá aproximadamente 300 puestos de trabajo enumerados en su sección Trabajos exitosos durante el período de 24 horas.

Ahora ejecute este cron log monitor para ver si su cron realmente se está ejecutando. Me he encontrado con muchas veces cuando la persona dice que sí, pero luego trata de verificarlo y descubre que se apagó después de un par de intentos.

El siguiente problema es la declaración Pero si verifico el archivo /app/code/core/Mage/Sitemap/etc/config.xml parece que no está actualizado. Primero, esta es una plantilla de configuración, no se actualizará. La habilitación se realiza en la base de datos. Lo verifica en Sistema -> Configuración -> Catálogo -> Google Sitemap -> Configuraciones de generación -> Habilitar = Sí debería ser la configuración y una vez guardada, permanece en Sí. Magento consulta esta configuración almacenada en la base de datos, no el config.xml para ejecutar realmente la generación del mapa del sitio.

Search Engine Optimization - Enable Autogenerated Sitemap

Ahora bien, si usted tiene el mapa del sitio adecuadamente creado bajo Catálogo -> Google mapa del sitio, el sello de fecha/hora en el archivo sitemap.xml real debe iniciar la actualización.

+0

Editar desde - hasta el final es hecho por mí, solo para cargar la imagen de Cron Monitor. ! – Mauro

+0

También puedo confirmar que ahora funciona: | Después de cambiar de cron.php a cron.sh ... ¡Muchas gracias! – Mauro

2

No lo veo mencionado en su pregunta pero, para que los trabajos cron funcionen, debe configurar el trabajo cron real para su instalación magento. Trate de añadir ya sea cron.php o cron.sh primero en su crontab:

Ejemplo: cron.sh

*/5 * * * * /bin/sh /absolute/path/to/magento/cron.sh 
+0

Ya hecho, pero el cronograma se activa en cron.php en lugar de cron.sh (y Estoy seguro de que está funcionando, cada 1 o minutos). Pero Sitemap no se actualiza automáticamente – Mauro

1

Mauro,

XML como esa es sólo los datos por defecto, una vez guardados en la admin, va a la base de datos y es el final de todas las fuentes a partir de allí, consulte SELECT * FROM core_config_data WHERE path LIKE "sitemap/generate/time"; para el tiempo de ejecución o SELECT * FROM core_config_data WHERE path LIKE 'sitemap/%'; para obtener una vista general de todas las opciones que se han establecido para la generación del mapa del sitio en Magento.

como también se indica por Seth, que tendrá que tener,

*/5 * * * * /bin/sh /absolute/path/to/magento/cron.sh

en el crontab sus usuarios web

+0

Mi crontab está configurado correctamente ... ¡con cPanel! He habilitado el cron.php para que se ejecute cada 10 minutos (y funciona, ya que he editado el código PHP agregando, en la parte inferior, algunas líneas con el envío de correos electrónicos, para verificar si el archivo está programado correctamente). .. Luego he reemplazado con el archivo cron.php original. De todos modos ... no está actualizando el mapa del sitio. No sé por qué :( – Mauro

+0

debe usar la versión sh, ya que tiene lógica para detener varias ejecuciones de sí mismo, cuando está programado ejecutar el sitemap, el cron se ejecuta cada 5 o 10 minutos en su solución y acaba de pedirle a Magento si algo se debe ejecutar desde la última comprobación, por lo que el mapa del sitio debería programarse cada 5 minutos, no solo cron. –