Alter Bekannter zurück?

Vor Jahren habe ich viel und gern mit dem CMS WebsiteBaker gearbeitet. Es war einfach zu handhaben, intuitiv und nur mit den wirklich notwendigen Funktionen ausgestattet.

Allerdings hatte man den Eindruck, dass das System irgendwann nicht mehr weiterentwickelt wurde, es gab keine Updates oder News und die Webseite von websitebaker.org dümpelte vor sich hin, die deutsche Seite war offenbar komplett abgestellt. Ich stellte bis auf wenige Ausnahmen alle Seiten auf andere Systeme oder statische Seiten  um. Auf einer Kundenseite habe ich vor ca. 2 Jahren ein Update auf die damals letzte Version 2.8.3 gemacht, die auch unter php 5.6 lief.

Im Zuge der Aktualisierungen der Seiten im Zusammenhang mit der DSGVO hatte ich wieder Kontakt mit dieser Seite und die Überlegung, diese zu spiegeln und statisch ins Netz zu stellen oder in ein anderes System (Wordpress vermutlich) zu migrieren. Als ich mir dann doch mal die Webseite von websitebaker.org anschaute, war ich überrascht. Neues Design, neue Downloadangebote bis zur neuesten Version 2.12 vom April 2018! Und Umstellung auf php 7.1.

Also wollte ich WB wieder eine Chance geben und die Kundenseite aktualisieren (entsprach auch dem Wunsch des Kunden).

Zunächst legte ich auf einer Subdomain eine Kopie der kompletten Installation an, erstellte eine neue Datenbank und verband die neue Installation mit dieser (Anpassung in der config.php). Alles klappte gut. Dann ging ich Schritt für Schritt vor, also erst Aktualisierung auf 2.10, dann 2.11 und zuletzt auf 2.12. Vermutlich kann man das auch in einem Schritt machen.

Man lädt die zip-Datei herunter, entpackt sie und überschreibt die Installation (bis auf das favicon.ico, config.php wird neu erstellt mit den richtigen Daten). Dann ruft man das Backend auf und loggt sich als Admininstrator ein. Automatisch wird das Installscript aufgerufen, dessen Anweisungen man folgt und fertig!

(Falls vor der Installation die Meldung kommt: The upgrade script could not start automatically. Please click on this link to start the script! folgt man der Anweisung und die Installation startet.)

Fertig! Naja, fast ... Wäre doch zu schön gewesen.

Leider machte das doch etwas veraltete Template einen Strich durch die Rechnung und das Frontend wurde schon in Version 2.11 nur rudimentär angezeigt. Aufgrund der Fehlermeldung (There was an uncatched exception Call to undefined function show_menu() in line (xx) of (/templates/xx/index.php)) im Frontend war schnell klar, dass die Funktion show_menu offenbar veraltet ist.
Die Lösung: Man muss über ftp in den Template-Ordner und dort die index.php öffnen.

Möchte man nun wie gehabt zwei Menüs auf der Webseite unterbringen, muss man

show_menu in show_menu2

und

show_menu(1) in show_menu2(1)

ändern.

Außerdem gibt es eine Reihe von Parametern, mit denen man das Menü wie gewünscht anpassen kann. So sind die Untermenüpunkte standardmäßig immer eingeklappt, möchte man, dass sie ständig ausgeklappt sind, fügt man SM2_ALL hinzu (SM_ROOT bewirkt, dass das Menü auf der obersten Ebene beginnt.

show_menu2(1, SM2_ROOT, SM2_ALL);

Alle Spezifikationen findet man unter Github

Nach dem letzten Update von 2.11 auf 2.12 gab es beim Versuch, sich ins Backend einzuloggen eine Fehlermeldung. Nach einigem Recherchieren konnte diese behoben werden, indem man in der Datei framework/Login.php folgendes austauscht:

replace in preg_replace.

Jetzt endlich lief die Seite. Da man im Footerbereich kein JavaScript oder php mehr eingeben konnte, um das aktuelle Jahr automatisch anzugeben, nutzte ich ein Droplet, sehr praktisch.

Hat am Ende mehr Zeit gekostet als geplant, aber es hat sich gelohnt, die Seite läuft mit einem aktuellen System.

In letzter Zeit gibt es viele Spam-Kommentare, deswegen habe ich die Kommentarfunktion erst einmal abgeschaltet.

Einen Kommentar schreiben

Kommentar von Thomas |

Hallo, guter Tipp, genau das habe ich gerade gesucht. Beste Grüße, Thomas

Kommentar von Kristina |

Sehr genialer Tipp. Das brauchte ich! Vielen lieben Dank!

Kommentar von Alex |

DANKE! Ich hab auch eben danach gesucht und es klappt bestens.

Kommentar von Emanuel P. |

Bin gespannt, Backend ist leicht aber Frontend sind viele am Grübeln wegen des 401 Fehlers und es existiert leider keine gute Anleitung wi man 2FA fürs Frontend richtig konfiguriert (speziell Template Anpassung und security.yml)

Antwort von Anika Strobach

Danke für den Kommentar. Ich hoffe, ich habe bald die Zeit dazu!

Kommentar von Gerhard Hirt |

Guten Tag
Was kann ich tun, wenn z.B. bei der 7. Pos. die Meldung Zeitüberschreitung kommt?
Was ist der vermutliche Grund für diese Zeitüberschreitung.

Danke für eine kurze Antwort
Gerhard

Antwort von Anika Strobach

Vielen Dank für den Kommentar.

Die Zeitüberschreitung liegt normalerweise daran, dass die Internetverbindung zu langsam oder gestört ist, entweder bei Ihnen selber oder bei dem Server, auf dem Ihre Webseite liegt. Oft klappt es zu einem anderen Zeitpunkt.

Mehr kann ich leider aus der Ferne und mit den wenigen Infos nicht sagen.

Kommentar von Karsten |

Hallo,
ich habe das plugin installiert und aktiviert.
In einem Beitrag per code -> php-> pass = XXXX eingetragen
Es erfolgt keine Abfrage!
Codeschnipsel als weißes Feld!
Was mache ich falsch?
Der Beitrag ist einfach nur ein Link, den man nach Eingabe des richtigen Passwortes sehen soll.

Kommentar von Marion |

Hallo Anika,
danke für die hilfreiche Anleitung!
Weißt Du, ob man die 2FA problemlos wieder rückgängig machen kann?
Viele Grüße
Marion

Kommentar von Matthias Hechler |

Muss die DENIC denn nicht auch den Provider herausgeben?

Kommentar von Gottfried |

Hallo, 2FA ist ne super Sache, aber nun ist das Handy weg und ich habe noch eine Sicherung der Backup Codes. Muss ich den Codeblock nun ganz in des Feld eingeben?

Kommentar von Comichaot |

Hatte die letzten Tage vermehret Brutforce angriffe aber dank Limit Login Attempts Reloaded ist alles gut!

Kommentar von Michael Conrad |

Danke für den super Tipp! Das war genau das Steinchen, was mir auf den Weg zur Suche nach dem Webserver gefehlt hat.

Sie müssen sich anmelden, um Kommentare hinzuzufügen.