Joomla! – Update auf MK Postman 1.6

JoomlaDie derzeit von Wolke23 bevorzugte Newsletter-Komponente ist MK Postman. Sie ist der Nachfolger von Letterman, das lange brach gelegen hat. Allerdings waren auf einer von uns verwalteten Seite vorher eCircle und danach ein selbstprogrammiertes Script im Einsatz. In diesem Fall ist beim Update einiges zu beachten.

Es geht also hier um ein Update von MK Postman 1.5.3 zu 1.6. Die grundlegenden Schritte sehen folgendermaßen aus, in Erweiterung dessen, was die Programmierer vom Medienkombinat empfehlen:

  • Sicherung der Datenbank, dabei genügen die MK Postman-Tabellen
  • Deinstallation der alten Komponente und ihrer Module
  • Installation der neuen Komponente und ihrer Module
  • Einspielung der gesicherten MK Postman-Tabellen zurück in die Datenbank

Bei Joomla-Projekten, wo direkt mit MK Postman als Newsletter-System gestartet wurde, traten keine Probleme auf. Bei einem Projekt dagegen schon. Hier gab es seit acht Jahren ein Newsletter-Abonnement. Anfangs lief dies über eCircle/Domeus. Dann wurden alle Abonennten via Datenexport in ein Newsletter-Script von Ampyx übernommen. Nach Umstieg der ursprünglich statischen Website auf Joomla war es naheliegend, hier auf ein integriertes Newsletter-System zu setzen – Letterman schien die beste Lösung. Via phpMyAdmin wurden Tabellen exportiert, in Microsoft Excel bzw. dem OpenOffice Calculator nachbearbeitet und importiert.

 

Nachdem bei Letterman allerdings lange nichts geschehen war und MK Postman am Horizont auftauchte, erfolgte der Umstieg. Bereits beim Versand mit Version 1.5.3 zeigten sich einige Unstimmigkeiten, die aber auch an Fehler in diesem Release gelegen haben konnten. Das Update auf 1.6. zeigte jedoch, dass von 980 Abonnenten nur noch 90 übrig blieben. Es gab also definitiv "Altlasten" aufgrund der diversen Migrationen. Wie ließ sich dies beheben?

Nach erfolgreichem Downgrade zeigte sich, dass vielen Abonnenten kein Typ des Newsletters (HTML, Text) zugeordnet war. Dies ließ sich leicht nachholen:

UPDATE jos_mkpostman_subscribers
SET newsletter_type = REPLACE(newsletter_type, ‚0‘,’2′)
WHERE newsletter_type LIKE ‚%0%‘

Kniffliger war allerdings das Problem, dass ebenso viele Abonnenten nicht der Standard-Empfängergruppe, sondern schlichtweg keiner zugeordnet waren und dies über eine zusätzliche Tabelle verwaltet wurde. Die Lösung brachte der Einsatz eines PHP-Scriptes. Folgende Zeilen müssen auf dem Webspace hinterlegt werden, beispielsweise als postman.php:

<?php
mysql_connect("localhost","dbuser","password") or die ("keine Verbindung möglich");
$db = mysql_connect("localhost","dbuser","password") or die ("keine Verbindungmöglich");
mysql_select_db("dbname") or die ("Die Datenbank existiert nicht");
for($i=1;$i<953;$i++)
{
$sql = "INSERT INTO `jos_mkpostman_subscriber_group` (`subscriber_id`, `group_id`) VALUES (‚".$i."‘, ‚1‘)";
echo $sql;
$res = mysql_query($sql);
}
?>

Bei der Anwendung dieses Scriptes müssen folgende Schritte ausgeführt werden:

  • Vor dem Upload werden für dbuser, password und dbname die entsprechenden Daten eingesetzt
  • Die Zahl 953 aus obigem Beispiel wird durch die Zahl der höchsten subscriber_id zzgl. dem Wert 1 ersetzt. Vorsicht: Die Anzahl der im Backend angezeigten Abonnenten muss nicht mit dieser ID übereinstimmen! Aufgrund von Kündigungen etc. kann diese Zahl höher liegen. Deswegen unbedingt in jos_mkpostman_subscribers nachschauen.
  • Sicherung der MK Postman-Tabellen in der Datenbank!
  • Nun wird die Tabelle jos_mkpostman_subscriber_group via phpMyAdmin geleert (nicht gelöscht!)
  • Anschließend das Script hochladen und aufrufen, beispielsweise via www.domain.de/postman.php
  • Überprüfen, ob die Tabelle nun die erwartete Anzahl an Abonnenten enthält.
  • Erst danach die am Anfang dieses Tutorials beschriebenen Schritte erneut ausführen.


Ich kann nicht abschätzen, ob tatsächlich einmal jemand vor dem selben esoterischen Problem stehen wird. Für den Fall der Fälle könnte die beschriebene Vorgehensweise allerdings eine Lösung bieten. Eine Haftung oder Garantie wird nicht übernommen!

Kommentar (1) Schreibe einen Kommentar

  1. mk postman ist schon nicht schlecht, ledier ist die 1.5.3 fehlerhaft und nirgendwo lässt sich die 1.6 zum download finden?

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.