Aber damit lege ich doch nur einen neuen Beitrag an, oder irre ich mich da. Ich will also eine echte Seite anlegen, also bspw. https://www.example.com/neueseite
Das bringt mich jetzt aber auf die Spur: Wäre
wp_insert_site
korrekt?
Um schreiben oder kommentieren zu können, benötigen Sie ein Benutzerkonto.
Sie haben schon ein Benutzerkonto? Melden Sie sich hier an.
Jetzt anmeldenHier können Sie ein neues Benutzerkonto erstellen.
Neues Benutzerkonto erstellenAber damit lege ich doch nur einen neuen Beitrag an, oder irre ich mich da. Ich will also eine echte Seite anlegen, also bspw. https://www.example.com/neueseite
Das bringt mich jetzt aber auf die Spur: Wäre
wp_insert_site
korrekt?
Kann man eigentlich über PHP in WordPress eine neue Seite erstellen lassen? Falls ja, reicht mir schon ein Hinweis auf die Function.
Kurze Vollzugsmeldung: Hat jetzt alles geklappt ohne dass der Pfad hardcodiert ist. Danke an Euch!
@[size=14]b3317133: Danke für den Hinweis. Kannst du mir noch einen Tipp geben, wo der fehlerhafte Link zu finden sein dürfte? Ich kannd er Konsole erst mal nicht groß dazu was entnehmen. Dann müsste ich nicht ganz so lange suchen ;-).[/SIZE]
Stimmt schon mit der Haedcodierung. Das Skript habe ich aus Gemütlichkeit ins Pluginverzeichnis geschoben. Der Datentransfer mit FileZilla war so einfacher. Ich mach das mal ordentlich.
Vielen Dank für die vielen Hinweis.
Ich habe das Problem erst mal gelöst, indem ich den exaktenPfad vorgebe. der geht direkt von der Domain aus auf das wp-content-Verzeichnis.
Wenn ich mir den $file ausgeben lasse, ist das der richtige Pfad. Ich habe das JS-Skript im Unterverzeichnis /js unter dem Plugin-Verzeichnis abgelegt.
Sorry, zu wenig kopiert. Der ist natürlich auch noch nötig:
add_action( 'wp_enqueue_scripts', 'add_script_copyToClipboard', PHP_INT_MAX );
Moin,
ich komme mal wieder nicht weiter. Ich will JS einbinden. WordPress hat ja hier so seine Eigenarten, weswegen ich die Frage mal hier und nicht in einem PHP-Forum stelle. Ein PHP-Skript erstellt daten (das klappt) und die sollen an ein JS übergeben werden, damit das Skript diese dann in die Zwischenablage packt.
Das JS habe ich in der function.php in meinem Child-Theme eingebunden:
[PLAIN]function add_script_copyToClipboard() {
$file = WP_PLUGIN_DIR . '/js/copyToClipboard.js';
wp_register_script( 'copyToClipboard', $file, array( 'jquery' ), '', true );
wp_enqueue_script( 'copyToClipboard' );
}
[/PLAIN]
Der Pfad ist Korrekt. Die Datei steht auch am richtigen Platz. Gleichwohl kommt der Fehler:
Laden fehlgeschlagen für das <script> mit der Quelle "https://..../copyToClipboard.js?ver=5.7", wobei unter ... natürlich der komplette und auch richtige Pfad steht.
Hat jemand eine Ahnung, woran das liegen könnte.
Moin,
die gesamte Fehlermeldung nach Update auf 5.7 lautet:
WP_Scripts::localize wurde fehlerhaft aufgerufen. Der Parameter $l10n muss ein Array sein. Um beliebige Daten an Skripte zu übergeben, verwende stattdessen die Funktion wp_add_inline_script(). Weitere Informationen: Debugging in WordPress (engl.) (Diese Meldung wurde in Version 5.7.0 hinzugefügt.) in /mnt/web221/d3/30/5529930/htdocs/koch-lemke-machacek/cms/wp-includes/functions.php on line 5313
Ich habe schon mal versucht im Netz zu suchen, allerdings liefert mir Google nur hunderte Seiten mit genau dieser Fehlermeldung.
Kann mir daher jemand einen Ansatz für eine Lösung geben? An der function.php würde ich nur ungerne rumbasteln, wenn ich nicht genau weiß, was zu tun ist.
P.S. Ich administriere noch eine andere Seite. Dort trat die Fehlermeldung nicht auf.
AS
Manchmal diegt die Gemütlichkeit: Bevor ich mich mit wp_enqueue_scripts beschäftigt habe, habe ich noch ein wenig rumprobiert. Und tatsächlich klappt es, wenn man das JS-Skript nach dem HTML-Code einbindet, also die beiden $ausgabe = ... Befehle tauscht.
Ok, die beiden WP-Befehle scheinen ein Ansatz zu sein. Probier ich mal aus.
Danke für den Hinweis.
Oh je, das wird ja noch richtig kompliziert. Danke für den Tipp.Ich arbeite mich am kommenden WoE da mal rein.
Timer.php ist richtig eingebunden, das habe ich über einen alert() getestet.
Der zweite Aspekt scheint mir der relevante zu sein. Wir kann ich das ändern?
Guten Abend,
ich hoffe, dass meine Frage hier richtig plaziert ist. Es geht um die Frage, wie ich mit JS Elemente ansprechen, die zuvor von Wordpress per ShortcCode eingeführt wurden.
In meinem Plugin steht
[INDENT][PLAIN]include ('timer.php');
add_action( 'init', 'timer_init' );[/PLAIN][/INDENT]
Das ganze soll also mal einen Timer auf meiner Seite ergeben. Die timer.php lautet
[INDENT][PLAIN]function timer_init() {
function timer_func() {
$ausgabe = '<script language="JavaScript" type="text/javascript">
var s = document.getElementById("timer").innerHTML;alert(document.write(s));
</script>';
$ausgabe .= '<p id="timer">Testtest</p>';
return $ausgabe;
}
add_shortcode('Timer','timer_func');
}[/PLAIN][/INDENT]
Das Problem ist, dass der das Element Timer nicht findet. Kann es damit zusammenhängen, dass dieses nicht von Beginn an im Dokument war, sondern erste per Shortcode generiert wurde?
Ich weiß nicht recht, in welche Richtung ich suchen muss. Vielleicht kann mir ja jemand einen Ansatz liefern.
Ich habe unter Wordpress ein paar Dossiers. Es sind ganz nocrmale Seiten mit dem Standard-Template, die als Unterseite abgelegt sind (bspw. http://www.example@example.com/dossiers/Dossi…estimmten_Thema). Es sind also keine Blog-Beiträge.
Wie schaffe ich es nun, mit PHP (über einen Shortcode) alle Dossierseiten zusammenzustellen?
Hinweis: Es geht mir nicht um den PHP-Code, eigentlich nur um den PHP-Befehl, mit dem ich alle Unterseiten von ../dossiers/ in ein Array schreiben kann.
DAnke für den Tipp. Irgendwie dachte ich, es gäbe nur get_var, get_row und get_results. Aber da gibt es ja noch mehr.
Klappt alles prima.