Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste
find_replace_templatesets
#1
Hallöle werte Community,

ich habe in einem Plugin folgendes Replacement geschrieben:
PHP-Code:
find_replace_templatesets(
    
"headerinclude",
    
"#".preg_quote('{$stylesheets}')."#i"
    
'<script type="text/javascript" src="{$mybb->asset_url}/jscripts/xyz.js"></script>{$stylesheets}'
    
);


Nun möchte ich aber (der Ordnung halber) vor {$stylesheets} einen Zeilenumbruch haben, sodass {$stylesheets} im Template in einer "eigenen" Zeile steht.
Habe mittels "\n" alles Erdenkliche getestet - ohne Erfolg.
Ich bekomm`s einfach nicht auf die Kette. Confused
Kann jemand helfen?

Danke im Voraus!
Zitieren
#2
Es gibt einen wichtigen Unterschied zwischen einfachen (') und doppelten Anführungszeichen ("). Zwischen einfachen Anführungszeichen funktionieren weder Variablen noch maskierte Zeichen wie \n.
Siehe auch: https://www.php.net/manual/de/language.t...tax.single (deine Frage ist dort auch im Beispiel enthalten)

So sollte es dann funktionieren:
PHP-Code:
"<script type=\"text/javascript\" src=\"{\$mybb->asset_url}/jscripts/xyz.js\"></script>\n{\$stylesheets}" 
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#3
Jepp,
danke Stefan! Das funktioniert.
Ich muss zugeben, dass ich mit Anführungszeichen und Klammern immer meine Probleme habe.
Ob ich das wohl irgendwann lerne... Huh

Mein erster Ansatz war dieser - hat mich aber auch nicht zum Erfolg geführt:
PHP-Code:
'<script type="text/javascript" src="{$mybb->asset_url}/jscripts/xyz.js"></script>"\n"{$stylesheets}' 

Danke für die Unterstützung!!
Zitieren