WP 6.2.1 deaktiviert Brotkrümelnavigation von Rank Math SEO – page 2

Thread-Starter
Karl

(@zittau)

@hage

Leider erscheint nun diese Fehlermeldung:

Das Code-Snippet, dass du zu speichern versuchst, hat einen fatalen Fehler in Zeile 10 produziert:syntax error, unexpected identifier „add“

Was hast du denn jetzt eingefügt? Als Code-Snippet reicht das hier:

add_filter('render_block_data', function($parsed_block) {
    if (isset($parsed_block['innerContent'])) {
        foreach ($parsed_block['innerContent'] as &$innerContent) {
            if (empty($innerContent)) {
                continue;
            }

            $innerContent = do_shortcode($innerContent);
        }
    }

    if (isset($parsed_block['innerBlocks'])) {
        foreach ($parsed_block['innerBlocks'] as $key => &$innerBlock) {
            if (! empty($innerBlock['innerContent'])) {
                foreach ($innerBlock['innerContent'] as &$innerContent) {
                    if (empty($innerContent)) {
                        continue;
                    }

                    $innerContent = do_shortcode($innerContent);
                }
            }
        }
    }

    return $parsed_block;
}, 10, 1);

Thread-Starter
Karl

(@zittau)

@pixolin Danke.
Ich hatte den gesamten Code (zusammen mit dem Kommentar) von hier eingefügt.

Nach dem Einfügen Deines Codes funktioniert es – Problem gelöst!!

… oder einfach die Antwort lesen.

„Add the following code as a plugin in a PHP file in the plugins folder“ heißt übersetzt „Füge den folgenden Code als Plugin in eine PHP-Datei im Ordner Plugins ein.“ Also: kompletten Code (ab <?php …) in einer Datei wp-content/plugins/shortcode-fix.php speichern und im Plugin-Menü Plugin aktivieren. Da braucht’s kein Code Snippet für. 🙂

Ich hatte den gesamten Code (zusammen mit dem Kommentar) von hier eingefügt.

Ja, aber offensichtlich nicht die Zeile darüber gelesen. 😛

Da braucht’s kein Code Snippet für.

Stimmt, ich muss zu meiner Schande gestehen, dass ich das auch nicht richtig gelesen habe. 🙈

Noch eine Info: Das Problem scheint nicht nur Rank Math SEO zu betreffen. @bph hat in solch einem Fall auch als eine Option das Plugin Core Rollback genannt, um wieder auf WordPress 6.2 umzustellen. Das dürfte aber zunächst nur eine Notlösung sein.

Auch wenn das nicht mehr zum eigentlichen Thema gehört, aber vielleicht für Mitleserinnen oder Mitleser interessant ist (allerdings englischsprachig):

Speziell beim erstgenannten Link gibt es einige Hinweise auf Lösungsmöglichkeiten.
Das Problem scheint wohl in erster Linie mit Shortcodes bei Verwendung in Template Parts bei Block Themes aufzutreten.

Man sollte sich nicht an einen (noch dazu gelösten) Thema anhängen, aber ich habe dennoch eine, hoffentlich zulässige Frage dazu:

Was bedeutet die Antwort von RM?
Das es in Block Templates echt keinen Shortcode mehr gibt; in „klassischen“ Themes bleibt alles beim alten? (bei allen meinen klassischen Themes funkt es mit Shortcode weiterhin)
Oder?

Das Problem scheint nicht nur Rank Math SEO zu betreffen.

Wenn dem echt so ist, wie RM meint und wie ich es verstehe, dann müssten ja enorm viele Sachen mit Shortcode plötzlich nicht mehr funktionieren?!

Hallo @kurapika
wenn du in den ersten Link reinschaust, wirst du einige Fälle finden, wo Entwickler aus durchaus nachvollziehbaren Gründen Shortcodes in Template Parts verwenden. Und da gibt es dann Ärger. Bei klassischen Themes dürfte das Problem demnach eher nicht auftreten.
Nun denn, abwarten … das Problem ist ja erkannt und wer weiß, vielleicht kommt dann hurtig WordPress 6.2.2 mit einem Fix 😉

Danke, ja das hab ich dann (erst nach dem absenden der Frage) gesehen, gelesen.
Template Parts“ sind in dem Zusammenhang was? Ein Teil (nur?) von FSE Themes?

Ich habe halt null Einblick und wenig Interesse an FSE & Co; bleibe ohnehin mit allen Projekten klassisch, also Editor und Themes wie anno domini. (und daneben heute zu faul zum googeln)

Bez. RM: Möglicherweise geht es aber auch in den FSE Themes, den von RM in den Einstellungen gezeigten Code direkt einzubauen?
<?php if (function_exists('rank_math_the_breadcrumbs')) rank_math_the_breadcrumbs(); ?>
Das müsste doch weiterhin funken, wenn ja „eh“ nur die Shortcode Sachen grade nicht so zuverlässig wollen.

@zittau

und hallo an alle anderen hier im Thread 👋

Der eingefügte Code, der hier verlinkt und gepostet wurde, wurde im Original mit diesem Hinweis versehen:

But be aware that support was removed for fixing a security issue, and restoring shortcode support you are probably bringing back the security issue.

Was nichts anderes heißt, als dass einer (der fünf) Sicherheits-Fixes von WordPress 6.2.1 durch diesen Code wieder entfernt wird.

Das kann also nicht die Lösung sein oder habe ich irgendetwas verkehrt verstanden oder übersehen?

In diesem mittlerweile schon sehr langem Thread wird ein anderer Workaround beschrieben, der aber (je nach Anzahl der Shortcodes) sehr mühselig sein könnte und in manchen Plugins (wie z. B. Contact Form 7) auch nicht weiterhilft.

Shortcode-Blöcke in Template-Teilen (Template parts) funktionieren demnach auch in WP 6.2.1. Allerdings stellt sich (nicht nur in diesem Thread sondern auch mir) die Frage, wieso ein im Template-Teil gerenderter Shortcode sicherer sein soll, als einer im Template.

Kurzum:
Der Code bringt die Sicherheitslücke zurück.
Shortcode-Blöcke in Template-Teilen als Interims-Lösung sind fraglich und u. U. kaum praktizierbar.

Auf keinen Fall sollte ein Rollback zu 6.2 durchgeführt werden, da so alle 5 Sicherheitslücken wieder offen sind.

Was nun wie geändert wird (mit WordPress 6.2.2), wird immer noch diskutiert (Stand vor 87 Minuten).

Thread-Starter
Karl

(@zittau)

@la-geek
Danke für die umfangreiche Info.
Sollte ich demnach diesen Code wohl besser wieder entfernen, mit dem geringeren Übel „Ausfall der Brotkrümelnavigation“ vorübergehend leben, und geduldig auf das hofentlich recht baldige Update auf WP 6.2.2. warten?

Sollte ich demnach diesen Code wohl besser wieder entfernen, mit dem geringeren Übel „Ausfall der Brotkrümelnavigation“ vorübergehend leben, und geduldig auf das hofentlich recht baldige Update auf WP 6.2.2. warten?

Das ist auf jeden Fall das kleinere Übel. Lieber eine fehlende Funktion, als eine offene Sicherheitslücke.

Thread-Starter
Karl

(@zittau)

Lieber eine fehlende Funktion, als eine offene Sicherheitslücke.

Ist auch bitte konkreter bekannt, welches „Loch“ da besteht.

Ist auch bitte konkreter bekannt, welches „Loch“ da besteht

WordFence hat Informationen dazu veröffentlicht, den Link hat @hage weiter oben schon gepostet.

 

This site will teach you how to build a WordPress website for beginners. We will cover everything from installing WordPress to adding pages, posts, and images to your site. You will learn how to customize your site with themes and plugins, as well as how to market your site online.

Buy WordPress Transfer