Die Schaltfläche „Mit Page Builder Sandwich bearbeiten“ wird nicht angezeigt

Die Schaltfläche „Mit Page Builder Sandwich bearbeiten“ wird nicht angezeigt

Wenn Sie die Schaltfläche „Mit Page Builder Sandwich bearbeiten“ im Frontend Ihrer Website nicht sehen können, gibt es einige Dinge, die Sie ausprobieren können:

Stellen Sie sicher, dass Ihre Admin-Leiste sichtbar ist

Die Bearbeiten-Schaltfläche für PB Sandwich ist in der Admin-Leiste in Ihrem Frontend verfügbar. Stellen Sie sicher, dass die Admin-Leiste sichtbar ist, indem Sie in Ihre Administration gehen, zu  Benutzer > Ihr Profil navigieren und überprüfen, ob das Kontrollkästchen für Werkzeugleiste für mich auf der Website anzeigen aktiviert ist.

e5960e581e file w9uN2EeCjm

Stellen Sie sicher, dass Sie sich auf einer Seite, einem Beitrag oder einem Custom Post Type befinden

Nur Beiträge, Seiten & Custom Post Types können im Frontend bearbeitet werden. Sie können Dinge im Frontend nur bearbeiten, wenn Sie sie auch mit dem WordPress-Inhalts-Editor im Backend bearbeiten können. Die anderen Bereiche Ihrer Website – z. B. die Beitragsübersicht auf der Startseite, die Liste aller Blogbeiträge, Kategorie-Auflistungen, 404-Seiten, Suchseiten – sind dynamische Seiten, die von WordPress zusammen mit dem von Ihnen verwendeten Theme erstellt werden und nicht mit PB Sandwich bearbeitet werden können.

Ein Indikator dafür, ob die aktuelle Webseite bearbeitbar ist, ist das Vorhandensein von „Beitrag bearbeiten“ oder „Seite bearbeiten“ in Ihrer Admin-Leiste.

Stellen Sie sicher, dass Ihre Inhalte nicht dynamisch von Ihrem Theme oder einem Plugin generiert werden

Wenn Ihre Seite / Ihr Beitrag dynamisch von einem Theme oder Plugin generiert wird, kann er nicht mit Page Builder Sandwich bearbeitet werden (und höchstwahrscheinlich auch nicht mit anderen Page Buildern). Wenn Sie feststellen, dass Ihr Inhalts-Editor im Backend leer ist, die Seite beim Betrachten im Frontend jedoch voller Inhalte ist, ist dies ein gutes Indiz dafür, dass Ihre Seite dynamisch generiert wird.

Um zu überprüfen, ob Ihre Seite dynamisch generiert wird, betrachten Sie den Quelltext Ihrer Webseite (Rechtsklick und dann „Seitenquelltext anzeigen“ wählen). Suchen Sie nach dem Text „pbs-main-wrapper“. Wenn Sie diesen Text nirgendwo finden können, wird Ihre Seite dynamisch generiert.

Hier sind einige Beispiele für dynamisch generierte Inhalte:

  • Ihre Seite besteht aus mehreren Widgets, die Sie über den Customizer hinzufügen/bearbeiten,
  • Ihre Seite besteht aus verschiedenen Seiten, die von einem „One-Page“-Theme zusammengesetzt werden (in diesem Fall können Sie die einzelnen Seiten weiterhin bearbeiten, aber nicht die kombinierte Seite), oder
  • Ihre Seite setzt sich aus den neuesten Blogbeiträgen zusammen.

Versuchen Sie, zuerst etwas Inhalt hinzuzufügen

Es gab Fälle, in denen das Theme den Inhalt überhaupt nicht angezeigt hat, wenn er leer war, was dazu führte, dass PBS fälschlicherweise annahm, dass die Seite nicht bearbeitbar ist. Um zu prüfen, ob dies der Fall ist, bearbeiten Sie Ihre Seite / Ihren Beitrag im Backend-Editor, fügen Sie einen beliebigen Text zu Ihrem Inhalt hinzu (z. B. „Hallo“) und klicken Sie dann von dort aus auf die Schaltfläche „Mit Page Builder Sandwich bearbeiten“.

Vielen Dank an Mathias Hellquist für diesen Tipp!

Stellen Sie sicher, dass Ihre Seite nicht von einem anderen Page Builder „übernommen“ wurde

Bei einigen Page Buildern müssen Sie wählen, ob Sie den Standard-Inhaltseditor von WordPress oder den eigenen Editor des Page Builders verwenden möchten. Wenn Sie Ihre Seite bereits mit einem anderen Page Builder bearbeitet haben, kann es sein, dass dieser Page Builder den Inhalt bereits für sich „beansprucht“ hat und andere Inhalts-Hooks/-Filter nicht mehr ausgeführt werden können. Aus diesem Grund kann Page Builder Sandwich manchmal nicht erkennen, wo sich Ihr Inhalt befindet, und zeigt die Bearbeiten-Schaltfläche nicht an, da es nichts zu bearbeiten gibt.

Um dies zu beheben, entscheiden Sie sich einfach dafür, diesen Page Builder für diese spezielle Seite / diesen speziellen Beitrag nicht zu verwenden, und wählen Sie stattdessen den Standard-Inhaltseditor von WordPress.

Stellen Sie sicher, dass Sie über Bearbeitungsrechte für die Seite verfügen

Die Bearbeiten-Schaltfläche wird nicht angezeigt, wenn Sie die Seite nicht bearbeiten können. Wenn Sie beispielsweise Redakteur oder Mitarbeiter sind und Blogbeiträge und Artikel auf der Website verfassen können, bedeutet das nicht unbedingt, dass Sie die Startseite oder Ihre Kontaktseite bearbeiten können. Wenn Sie die Schaltfläche „Beitrag bearbeiten“ in Ihrer Admin-Leiste sehen können, sollten Sie sie auch mit PB Sandwich bearbeiten können. Bitten Sie Ihren Website-Administrator um Bearbeitungsrechte, falls Sie diese benötigen.

Möglicherweise verhindert ein Javascript-Fehler die Ausführung von PB Sandwich

PB Sandwich nutzt Javascript ausgiebig. Wenn Javascript-Fehler auftreten, die von anderen Skripten auf Ihrer Website stammen, kann dies verhindern, dass PB Sandwich funktioniert. Um zu überprüfen, ob dies der Fall ist, können Sie die Entwicklerkonsole in Ihrem Browser öffnen, um nach Fehlern zu suchen. 

Hierfür würde ich die Verwendung von Chrome empfehlen. Klicken Sie mit der rechten Maustaste auf eine beliebige Stelle der Seite und dann auf die Option „Untersuchen“. Dadurch wird ein neuer Bereich am unteren Rand Ihres Browsers geöffnet; klicken Sie dort auf den Reiter „Console“. Wenn Fehler vorliegen, sollten Sie etwas wie folgt sehen:

4acce143a3 file

Wenn Sie einen Fehler haben, können Sie auch einen Hinweis darauf erhalten, woher dieser stammt, indem Sie auf den Namen des Skripts klicken oder mit der Maus darüberfahren:

abb5a87c67 file ITjVcdhZQU

Diese Fehler können von Ihrem Theme oder anderen Plugins stammen, die Sie installiert haben. Die Behebung dieser Fehler kann dazu führen, dass PB Sandwich wieder funktioniert.

Wenn Ihr Theme oder eines Ihrer Plugins den Javascript-Fehler verursacht, lassen Sie es uns bitte per E-Mail an  [email protected] wissen, und wir werden unser Bestes tun, um das Problem zu beheben 🙂

Wenn Sie CloudFlare verwenden, stellen Sie sicher, dass Rocket Loader deaktiviert ist

CloudFlare ist ein weit verbreitetes, kostenloses DNS-CDN. Es ist großartig, aber PBS hat derzeit Probleme mit der Rocket Loader-Funktion. Rocket Loader verbessert zwar die Ladezeit von Javascript-Dateien, bringt jedoch die Abhängigkeits- und Aufrufreihenfolge der Skripte von PBS durcheinander. Wenn Rocket Loader aktiviert ist, wird die Bearbeiten-Schaltfläche für Page Builder Sandwich nicht angezeigt (und es erscheinen keine Javascript-Konsolenfehler).

Um zu überprüfen, ob Ihre Website CloudFlares Rocket Loader verwendet, rufen Sie den Quelltext Ihrer Webseite auf (Rechtsklick und dann „Seitenquelltext anzeigen“ wählen) und suchen Sie nach dem Text „rocketscript“. Wenn Sie diesen Text finden, ist Rocket Loader aktiviert.

e4dff5b8c0 file tPnWvP09FF

Lesen Sie den Artikel über  CloudFlare & Rocket Loader Compatibility für eine vollständige Anleitung, wie Sie ihn deaktivieren können.


Ich habe das alles gemacht und die Bearbeiten-Schaltfläche ist immer noch nicht da!

Gut, wenn an dieser Stelle keine der oben genannten Lösungen funktioniert, ist es vielleicht an der Zeit zu erklären, warum sie nicht angezeigt wird und was dagegen unternommen werden kann. Bereit? Los geht’s!

Das „Warum“ (in nicht-technischen Begriffen)

Page Builder Sandwich muss wissen, wo sich der Inhalt Ihrer Seite / Ihres Beitrags befindet. Wir tun dies, indem wir abfangen, wann WordPress den Beitragsinhalt lädt, und diesen Bereich „markieren“, sodass wir, wenn alles geladen ist, finden können, wo der eigentliche Inhalt liegt.

Manchmal überschreiben oder umgehen einige Plugins diesen Prozess und versuchen stattdessen, den Inhalt auf ihre eigene Weise zu laden. Manchmal ist das in Ordnung, aber in bestimmten Szenarien – insbesondere wenn es um das Laden des Hauptinhalts eines Beitrags geht – kann dies dazu führen, dass einige Plugins nicht mehr funktionieren. Wenn ein anderes Plugin diesen Ladevorgang umgeht, können die von uns vorgenommenen „Markierungen“ verloren gehen, und wenn der Editor aktiv werden soll, kann er Ihren Inhalt nicht mehr finden. Folglich erscheint die Bearbeiten-Schaltfläche nicht! Möglicherweise stellen Sie auch fest, dass einige Plugins, die Ihrer Seite Inhalte hinzufügen (wie z. B. einige Social-Sharing-Plugins), aus genau demselben Grund nicht mehr funktionieren.

Das „Warum“ (in technischen Begriffen)

Page Builder Sandwich muss  wissen, wo sich der Inhalt Ihrer Seite / Ihres Beitrags befindet, und tut dies, indem es sich in den Filter the_content einklinkt und einen Wrapper um Ihren Hauptinhalt legt. Einige Plugins überschreiben dies möglicherweise und ersetzen den Inhalt stattdessen später durch eine get_the_content()-Funktion. Leider verhindert dieses Vorgehen, dass ALLE the_content-Filter aufgerufen werden, und somit geht der Wrapper von PBS verloren. Änderungen anderer Plugins würden ebenfalls verloren gehen.

An der Verwendung von get_the_content() an sich ist nichts auszusetzen, aber es kann negative Auswirkungen haben, wenn dies in der Hauptabfrage und innerhalb der Template-Seite für Einzelbeiträge anstelle des normalen the_content()-Aufrufs verwendet wird, bei dem alle the_content-Filter ausgeführt werden.

Was Sie dagegen tun können

Sie können überprüfen, ob die „Markierungen“ von Page Builder Sandwich fehlen, indem Sie Ihre Seite / Ihren Beitrag im Frontend aufrufen und den Seitenquelltext anzeigen, während Sie angemeldet sind. Suchen Sie im Code-Dschungel nach der Zeichenfolge:

data-name="main-content"

Wenn Sie sie finden können, liegt möglicherweise nur irgendwo ein Javascript-Problem vor; teilen Sie uns einfach das Theme und die Plugins mit, die Sie verwenden, und wir können das beheben.

Wenn Sie sie jedoch nicht finden können, liegt es möglicherweise einfach daran, dass Ihr Theme (oder ein Plugin, aber bei einer Seite oder einem Blogbeitrag ist es höchstwahrscheinlich das Theme) etwas mit dem Beitragsinhalt anstellt. Wenn dies der Fall ist, sollten Sie sich an den Theme-Autor wenden und ihn über das Problem informieren! Sie können ihm auch die obige technische „Warum“-Erklärung zeigen, das kann beim Debuggen helfen 🙂

Wenn Sie sich sicher fühlen, selbst an PHP-Dateien zu arbeiten, können Sie versuchen, das Problem zu beheben, indem Sie die Template-Datei ausfindig machen, die für den Beitragsinhalt zuständig ist. Eine Lösung, auf die wir gestoßen sind, besteht darin, Aufrufe von:

$content = get_the_content();

durch Folgendes zu ersetzen:

ob_start();
the_content();
$content = ob_get_clean();<br>

Hinweis: Die PHP-Variable kann bei Ihnen variieren, aber das Konzept sollte dasselbe sein. Wenn es funktioniert, wäre es zudem besser, ein Child-Theme zu erstellen, anstatt diese Änderung direkt in Ihrem Theme vorzunehmen. Durch die Änderung kann es auch zu Nebenwirkungen kommen, daher ist es ratsam, dies mit dem Autor Ihres Themes abzusprechen.