2012-05-18 9 views
6

Ich bin ein Neuling in Magento. Ich versuche, eine automatisch generierte Google Site Map zu konfigurieren. Ich habe überall gelesen, wie man cron job für Magento mit cPanel einrichtet, wie man es vom Backend aus konfiguriert und so weiter.Magento und Google Sitemap - Cron

Meine aktuellen Einstellungen: unter System -> Konfiguration -> Google Sitemap -> Generierungseinstellungen -> Aktiviert = JA. Ich habe die Sitemap natürlich im Katalog angelegt -> Google Sitemap, die ich manuell problemlos erstellen kann. (Config.xml und Back-End-btw unterschiedliche Inhalte)

Aber wenn ich die Datei /app/code/core/Mage/Sitemap/etc/config.xml überprüfen scheint es nicht aktualisiert werden. Es scheint auch, dass das letzte Update auf Dateisystem am 20.04.2012 statt heute durchgeführt wird. (Ich habe auch die Fluch Magento und Storage Cache ausgeführt)

<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> 

Kann mir jemand helfen? Danke!

+2

Ich fürchte, etwas ist in der Übersetzung verloren - warum würde eine Sitemap Aktualisierung config.xml generieren? –

+0

Nun .. Ich habe diesen Beitrag verfolgt: http://StackOverflow.com/Questions/9175563/magento-Google-Sitemap-and-Cron Ist es richtig zu che.Xml Config zu bearbeiten, oder wie ich verstanden habe, .xml wird nur für Standardwerte verwendet? – Mauro

+0

Mauro, sobald die Konfigurationswerte in der Datenbank sind, ersetzen sie alle in den XML-Dateien gespeicherten Daten. Der Cron kann alle 10 Minuten laufen, aber der Auslöser actaul für die Sitemap würde nur ausgelöst werden, wenn er in Magento, Stunde, Minute usw. geplant ist. –

Antwort

7

auf Magento und Cron-Setups verwenden cron.sh die Auslösung zu tun. Auch ich glaube an Vertrauen, aber verifizieren Sie, was bedeutet, Cron einzurichten und dann tatsächlich die Cron-Job-Ausgabetabelle für ordnungsgemäße Läufe anzuzeigen.

Gehen Sie in Ihre erweiterte Systemkonfiguration und legen Sie Cron Success History Lifetime und Failure Lifetime auf 1440 fest, so dass Sie eine 24-Stunden-Zeitspanne überwachen.

Sie können jetzt Indexoperationen usw. im Zeitstrahl sehen. Im Bereich "Erfolgreiche Jobs" werden über den Zeitraum von 24 Stunden ca. 300 Jobs aufgelistet.

Jetzt führen Sie diese cron log monitor, um zu sehen, ob Ihr Cron wirklich läuft. Ich bin oft auf sie gestoßen, als die Person es sagt, aber dann versucht sie es zu verifizieren und stellt fest, dass es nach ein paar Versuchen rausgeplatzt ist.

Die nächste Frage ist die Aussage Aber wenn ich die Datei /app/code/core/Mage/Sitemap/etc/config.xml überprüfen, scheint es nicht aktualisiert werden. Erstens ist dies eine Konfigurationsvorlage, sie wird nicht aktualisiert. Die Aktivierung erfolgt in der Datenbank. Sie überprüfen es in System -> Config -> Katalog -> Google Sitemap -> Generierungseinstellungen -> Aktivieren = Ja sollte die Einstellung sein und nach dem Speichern bleibt auf Ja. Magento konsultiert diese Einstellung, die in der Datenbank gespeichert ist, nicht die Datei config.xml, um die Sitemap-Generierung tatsächlich auszuführen.

Search Engine Optimization - Enable Autogenerated Sitemap

Nun, wenn Sie die Sitemap haben richtig unter Katalog erstellt -> Google Sitemap, die Datum-/Zeitstempel auf dem tatsächlichen sitemap.xml Datei sollte die Aktualisierung starten.

+0

Bearbeiten von - bis zum Ende wird von mir gemacht, nur um das Bild von Cron Monitor hochzuladen ! – Mauro

+0

Ich kann auch bestätigen, dass es jetzt funktioniert: | Nach dem Wechsel von cron.php zu cron.sh ... Vielen Dank! – Mauro

2

Ich sehe es nicht auf Ihrer Frage erwähnt, aber für Cron Jobs zu arbeiten, müssen Sie den tatsächlichen Cron-Job für Ihre Magento-Installation einrichten. Versuchen Sie, entweder cron.php oder cron.sh zuerst crontab:

Beispiel: cron.sh

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

Bereits erledigt, aber der Zeitplan ist auf cron.php anstelle von cron.sh (und aktiviert) aktiviert Ich bin sicher, es funktioniert, alle 10 Minuten). Aber Sitemap wird nicht automatisch aktualisiert – Mauro

1

Mauro,

XML wie, dass nur die Standarddaten ist, einmal in die gespeicherte admin, geht zur Datenbank und das ist das Ende alle Quelle von dort auf, siehe SELECT * FROM core_config_data WHERE path LIKE "sitemap/generate/time"; für die Laufzeit oder SELECT * FROM core_config_data WHERE path LIKE 'sitemap/%'; für eine Gesamtansicht aller Optionen, die für die Sitemap-Generierung in Magento festgelegt wurden.

Wie auch von Seth erwähnt, müssen Sie müssen,

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

in crontab Ihre Webbenutzern

+0

Meine crontab ist richtig eingerichtet ... mit cPanel! Ich habe die cron.php alle 10 Minuten ausgeführt (und es funktioniert, seit ich den PHP-Code hinzugefügt habe, unten, einige Zeilen mit E-Mail senden, um zu überprüfen, ob die Datei korrekt geplant ist). .. habe ich dann mit der originalen cron.php Datei ersetzt. Wie auch immer ... es aktualisiert die Sitemap nicht. Ich weiß nicht, warum :( – Mauro

+0

Sie sollten die sh-Version verwenden, da es Logik hat, mehrere Läufe von sich selbst zu stoppen, wenn die Sitemap geplant ist, läuft der Cron alle 5 oder 10 Minuten in Ihrer Lösung und fragte nur Magento wenn irgendetwas seit der letzten Überprüfung ausgeführt werden soll, müsste die Sitemap alle 5 Minuten und nicht nur das Cron geplant werden. –