Neuigkeiten:

moziloCMS verwendet Cookies. Wenn Sie auf unserer Seite weitersurfen, stimmen Sie der Cookie-Nutzung zu Datenschutzerklärung
moziloCMS Layouts
moziloCMS Plugins

Hauptmenü

Syntax.php

Begonnen von harry60, 10. November 2023, 23:19:58

« vorheriges - nächstes »

harry60

Hallo,

Ich habe folgendes gemacht:

In einem eigenen Plugin habe ich ein javascript für die Anzeige von Tooltips. Dies habe ich im Template am Anfang im <body> eingefügt. Technisch war das so erforderlich, nicht im <head>. So hat es auch immer einwandfrei funktionert, jetzt auch noch.
 Dann habe ich die funktion insert_in_tail() entdeckt. Wie wunderbar, jetzt konnte ich die javascript Datei auch im Plugin per funktion in das <body> einsetzen, und das javascript mußte nicht im Template eingefügt werden.
Weiter gehts.
 Jetzt habe ich im Template die Suchfunktion {SEARCH}, eigentlich nur zum Testen, eingefügt. Jetzt Wörter eingeben und suchen.

In der index.php war aktiviert: @ini_set("display_errors", 1); error_reporting(E_ALL);

Jetzt der Fehler:

ZitatDeprecated: str_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in C:\xampp\htdocs\mozilo55\cms\Syntax.php on line 403

Ich habe mir die Syntax.php Zeile 403 angeschaut und dann in Foren nach ähnlichen Fehlern gesucht. Mein Ergebnis:

Original:
    function insert_in_tail($data) {
        if(!in_array($data,$this->script_replace)) {
            $dummy = '<!-- dummy script_tail '.count($this->script_search).' -->';
            $this->content = str_replace(array("</body>","</BODY>"),$dummy."\n</body>",$this->content);
            $this->script_search[] = $dummy;
            $this->script_replace[] = $data;
        }

Geändert in:

    function insert_in_tail($data) {
        if(!in_array($data,$this->script_replace)) {
            $dummy = '<!-- dummy script_tail '.count($this->script_search).' -->';
            $this->content = str_replace(array("</body>","</BODY>"),$dummy."\n</body>",$this->content ?? '');
            $this->script_search[] = $dummy;
            $this->script_replace[] = $data;
        }

Suchfunktion wieder bemüht und kein Fehler mehr.

Vielleicht kann das mal jemand prüfen.

 Zur Information: Bei der anderen funktion insert_in_head() passiert das gleiche, bei function insert_jquery_in_head fehlt mir die nötige Kompetenz.

Schönes Wochenende

marusti

Danke für den Hinweis. Wir schauen es uns an!

marusti

Hallo harry,

das ist ganz untergegangen...Ist in Github aufgenommen (keine neue Rev).

Bei insert_in_tail und insert_in_head konnte ich es nachstellen, insert_jquery_in_head konnte ich es nicht nachstellen. Kannst du mir ein Beispiel schicken wo die Meldung bei dir auch kam?

harry60

Hallo marusti,

bei function insert_jquery_in_head fehlt mir die nötige Kompetenz. Da konnte ich es auch nicht probieren.

marusti

Dann scheint es da ok zu sein, ich hatte keinen Fehler bekommen.