Kapitel in diesem Beitrag:
Wie manche Leser schon wissen, realisiere ich relativ viele Kundendomains mit dem CMS System WordPress. Und immer, wenn dort in einem Beitrag eine Tabelle eingebaut werden soll, gibt es nur ein Plugin, das die beste Wahl für diese Aufgabe ist: TablePress von Tobias Bäthge. An dieser Stelle ein großes Dankeschön dafür, dass er das Plugin für alle gratis zur Verfügung stellt. Das Plugin ist nicht nur sehr einfach zu bedienen und hat eine ansprechende Optik im Admin und in der Ausgabe der Tabellen sondern Tobias bietet auch einen hervorragenden Support. In der Regel hat man innerhalb von wenigen Stunden eine Antwort auf seine Frage.
Suchen und Ersetzen – in TablePress Tabellen eine besondere Herausforderung, die sich aber lösen läßt.
Und hier kommen wir schon zum nächsten genialen Plugin: "Suchen und Ersetzen" von der Inspyside GmbH. Während andere englischsprachige Plugins (wie zum Beispiel "Better Search and Replace") häufiger mal Ausfälle haben, wenn es um umfangreiche Datenbanken geht, arbeitet sich dieses Plugin fleissig durch alle Tabellen, die zu WordPress gehören und ersetzt dabei einen String durch einen anderen. Zwar hat das Plugin sogar ein extra Feature, um die WordPress-Domain zu ändern, falls man von einer Domain zu einer anderen umzieht, aber auch dieses Feature löst nicht das Problem, das ich beim Ändern von URLs in TablePress hatte.
Das Plugin "Suchen und Ersetzen" ist mein aktueller Liebling in dieser Plugin-Kategorie. Es funktioniert auch da noch, wo andere Plugins nicht mehr funktionieren.
Im aktuellen Fall hatte ich einen Kunden, der etliche Tabellen in TablePress angelegt hatte, in denen wiederum sehr oft Bilder und Links mit URLs eingebaut waren. Leider hat das "Suchen und Ersetzen"-Plugin einige URLs nicht gefunden, die jedoch definitiv in den Tabellen vorhanden waren. Nach Rücksprache mit dem Programmierer von TablePress war das Problem lokalisiert: Die URLs werden in dem JSON-Format gespeichert und dadurch mit Backslashes auskommentiert. Das heißt, statt "https://www.sir-apfelot.de" wird in der Datenbank "http:\/\/www.sir-apfelot.de" gespeichert.
Durch diese Änderung ist nachvollziehbar, warum das Plugin die URL in manchen Fällen nicht findet. Damit das Plugin auch in TablePress erfolgreich wird, muss man also auch diese Schreibweise suchen und ersetzen.
Danach hatte ich allerdings immernoch einige URLs, die trotzdem nicht gefunden wurden. Um zu sehen, wo das Problem lag, habe ich direkt in der Datenbank nach gesehen und dort eine zusätzliche Schreibweise gefunden: eine doppelte Auskommentierung der Slashes. Also statt "https://www.sir-apfelot.de" stand dort "http:\\/\\/www.sir-apfelot.de".
Um alle URLs bzw. Domains zu finden, muss man also insgesamt drei Durchläufe mit dem Plugin machen und dabei diese drei Schreibweisen suchen und ersetzen:
Ein kleines Hindernis bietet das Plugin noch: Wenn man die URL des Blogs ersetzen möchte, indem das Plugin läuft, dann erkennt es dies und führt den Prozess nicht in der aktuellen Datenbank durch sondern bietet nur eine Kopie der Datenbank mit den gewünschten Änderungen als Download an.
Die zusätzliche Sicherheit ist ok, aber ich weiss, was ich tue und mag diesen Zwang nicht. Um die Sicherheitsabfrage auszuschalten, kann man im Quellcode des Plugins eine kleine Änderung vornehmen:
In der Datei /inc/Page/SearchReplace.php findet man in Zeile 245 folgenden Eintrag:
$contains_site_url = strpos( $search, $this->get_stripped_site_url() );
Diesen ersetzt man dadurch:
$contains_site_url = strpos( $search, "123".$this->get_stripped_site_url() );
Schon funktioniert
Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell, während andere uns helfen, diese Website und Ihre Erfahrung zu verbessern.
Nur essenzielle Cookies akzeptieren
Hier finden Sie eine Übersicht über alle verwendeten Cookies. Sie können Ihre Einwilligung zu ganzen Kategorien geben oder sich weitere Informationen anzeigen lassen und so nur bestimmte Cookies auswählen.
Essenzielle Cookies ermöglichen grundlegende Funktionen und sind für die einwandfreie Funktion der Website erforderlich.
Cookie-Informationen anzeigen Cookie-Informationen ausblenden
Name | Borlabs Cookie |
---|---|
Anbieter | Eigentümer dieser Website |
Zweck | Speichert die Einstellungen der Besucher, die in der Cookie Box von Borlabs Cookie ausgewählt wurden. |
Cookie Name | borlabs-cookie |
Cookie Laufzeit | 1 Jahr |
Name | VG Wort |
---|---|
Anbieter | Verwertungsgesellschaft Wort |
Zweck | Das Cookie der VG Wort hilft die Kopierwahrscheinlichkeit unserer Texte zu ermitteln und stellt die Vergütung von gesetzlichen Ansprüchen von Autoren und Verlagen sicher. IP-Adressen werden nur in anonymisierter Form verarbeitet. |
Datenschutzerklärung | https://www.vgwort.de/datenschutz.html |
Host(s) | *.vgwort.de |
Cookie Name | srp |
Cookie Laufzeit | Sitzung |
Statistik Cookies erfassen Informationen anonym. Diese Informationen helfen uns zu verstehen, wie unsere Besucher unsere Website nutzen.
Cookie-Informationen anzeigen Cookie-Informationen ausblenden
Akzeptieren | AnAus |
---|---|
Name | Google Analytics |
Anbieter | Google LLC |
Zweck | Cookie von Google für Website-Analysen. Erzeugt statistische Daten darüber, wie der Besucher die Website nutzt. |
Datenschutzerklärung | https://policies.google.com/privacy |
Cookie Name | _ga,_gat,_gid |
Cookie Laufzeit | 2 Jahre |
Marketing-Cookies werden von Drittanbietern oder Publishern verwendet, um personalisierte Werbung anzuzeigen. Sie tun dies, indem sie Besucher über Websites hinweg verfolgen.
Cookie-Informationen anzeigen Cookie-Informationen ausblenden
Akzeptieren | AnAus |
---|---|
Name | OneSignal |
Anbieter | OneSignal, 2850 S Delaware, St Suite 201, San Mateo, CA 94403 USA |
Zweck | OneSignal ist ein Unternehmen, das mobile Push, Web-Push, E-Mail und In-App-Nachrichten unterstützt. |
Datenschutzerklärung | https://onesignal.com/privacy_policy |
Host(s) | onesignal.com |
Cookie Name | __cfduid |
Cookie Laufzeit | 24 Stunden |
Inhalte von Videoplattformen und Social-Media-Plattformen werden standardmäßig blockiert. Wenn Cookies von externen Medien akzeptiert werden, bedarf der Zugriff auf diese Inhalte keiner manuellen Einwilligung mehr.
Cookie-Informationen anzeigen Cookie-Informationen ausblenden
Akzeptieren | AnAus |
---|---|
Name | Google Maps |
Anbieter | |
Zweck | Wird zum Entsperren von Google Maps-Inhalten verwendet. |
Datenschutzerklärung | https://policies.google.com/privacy |
Host(s) | .google.com |
Cookie Name | NID |
Cookie Laufzeit | 6 Monate |
Akzeptieren | AnAus |
---|---|
Name | YouTube |
Anbieter | YouTube |
Zweck | Wird verwendet, um YouTube-Inhalte zu entsperren. |
Datenschutzerklärung | https://policies.google.com/privacy |
Host(s) | google.com |
Cookie Name | NID |
Cookie Laufzeit | 6 Monate |
1 Kommentar
Weltklasse Tipp! Fettes Merci!