WordPress, wie man wp_editor in einem Array hinzufügt
Lesezeit: 4 Minuten
Syed Mohammed Aladeen
Ich hatte ein kleines Problem in meinem WordPress-Code. Ich muss einen WordPress wp_editor auf meiner Seite anzeigen, wo er ein Array von Werten enthält. Die Werte sind wie folgt definiert
Wenn ich meinen wp_editor wie das obige Array definiere, wird er nicht dort angezeigt, wo ich möchte. Stattdessen werden alle Editoren oben vor allen Inhalten auf allen Seiten angezeigt.
Ich habe versucht, wie das folgende Array für den Editor:
Ich denke, wp_editor ist eine Standard-Editor-Funktion in WordPress. Ich habe gerade als meinen obigen Code aufgerufen.
– Syed Mohammed Aladeen
27. Oktober 2015 um 5:04 Uhr
Das Wo bestimmt das Wann. Sie können Skripte einfach nicht ändern. Sie müssen wissen, welche Dateien Sie hinzufügen/ändern und welche Funktionen Sie aufrufen müssen, um das gewünschte Ziel zu erreichen. Bitte überprüfen Sie diese Seite codex.wordpress.org/Plugin_API/Action_Reference Ich helfe Ihnen gerne, wenn Sie mir genau sagen, wo und wann Sie den Editor benötigen (die Bearbeitungsseite eines normalen Beitrags, die Bearbeitungsseite eines benutzerdefinierten Beitragstyps, die Optionsseite Ihres Plug-ins usw.).
– Francisco Félix
27. Oktober 2015 um 6:54 Uhr
Touqeer Shafi
Weil
Standardmäßig wp_editor druckt den Textbereich, weshalb Sie ihn keiner Variablen oder keinem Array zuweisen können.
Lösung
Sie können verwenden Ausgangspufferung von php, um gedruckte Daten in Variablen wie folgt zu erhalten:
ob_start(); // Start output buffer
// Print the editor
wp_editor( '', 'sectioncontent'.$n );
// Store the printed data in $editor variable
$editor = ob_get_clean();
// And then you can assign that wp_editor to your array.
$fields[] = array(
'name' => __('My Content', 'my-theme'),
'id' => 'sectioncontent'.$n,
'std' => ( ( isset($class_text[$n]['content']) ) ? $class_text[$n]['content'] : '' ),
'type' => $editor); // <-- HERE
vielen Dank für Ihre Antwort, aber es funktioniert nicht, es wird nur eine leere Seite angezeigt.
– Syed Mohammed Aladeen
30. Oktober 2015 um 11:40 Uhr
Op ist, ich habe einen Tipp in meine Antwort bekommen, jetzt überprüfen.
– Touqeer Shafi
2. November 2015 um 6:00 Uhr
Die Codierung des Textbereichs befindet sich in der Klasse wie folgt: class=”section section-
@syedmohamed Hallo Syed, basierend auf der Tatsache, dass Sie diese Ausgabe im Klassenattribut des Abschnittsmarkups erhalten, bin ich mir jetzt sicher, dass Sie Redux verwenden. Sehen Sie sich meine Antwort für die Auflösung an oder ersetzen Sie einfach $editor durch ‘editor’ in den $fields[] Array-Definition 🙂
– Chris O’Kelly
2. November 2015 um 6:59 Uhr
Nur den Editor zu definieren, hat nicht viele Optionen. wie das Hochladen von Medien und andere
– Syed Mohammed Aladeen
2. November 2015 um 7:31 Uhr
Chris O’Kelly
Sieht für mich so aus, als würdest du verwenden Redux-Framework zum Einrichten Ihrer Themen-/Plug-in-Optionsseite – Wenn Sie den Standard-WYSIWYG-Editor von WordPress (What You See Is What You Get – derselbe Editor wie auf der Seite zum Bearbeiten von Beiträgen im Backend) dort hinzufügen möchten, müssen Sie ihn verwenden der Typ: ‘Editor’.
Es kann verwirrend sein – die wp_editor() Funktion, die Sie verwenden, ist der richtige Ausgangspunkt, wenn Sie diese Optionsseite von Grund auf neu einrichten, aber Sie müssten einiges an Arbeit leisten, damit sie angezeigt wird, wo und wie Sie es möchten. Redux et al. machen dies für Sie ein wenig einfacher, indem sie den Editor für Sie generieren. Anstatt also die Funktion wp_editor überhaupt zu verwenden, teilen Sie Redux einfach mit, dass Sie ein Editorfeld namens “Mein Inhalt” als eines der Felder haben möchten die Seite.
Um die anderen Teile dieses Feldarrays zu erklären:
„Name“ wird in der Bezeichnung für dieses Feld angezeigt. In diesem Fall verwenden Sie die Lokalisierungsfunktionen in WordPress (__()), um einen Ausdruck aus dem lokalen Wörterbuch in der Domäne „my-theme“ abzurufen.
‘id’ ist das, was Sie verwenden werden, um abzurufen, was in dieses Feld eingegeben wurde. Es wirkt sich auch auf das den HTML-Elementen auf der Optionsseite zugewiesene ID-Attribut aus.
„std“ ist der Standardwert für das Feld, das der Wert des Felds sein wird, wenn die Optionsseite zum ersten Mal angezeigt wird, bevor der Benutzer Optionen festgelegt hat
Auf der oben verlinkten Editor-Dokumentationsseite sehen Sie die Details verschiedener anderer Optionen, die Sie definieren können, z. B. ob Medien-Upload-Schaltflächen angezeigt werden sollen und ob die Eingabe durch wpautop ausgeführt werden soll, um Zeilenumbrüche im Editor zu ersetzen <p> Tags (standardmäßig sind beide wahr).
13972200cookie-checkWordPress, wie man wp_editor in einem Array hinzufügtyes
Von welchem Hook rufst du wp_editor auf?
– Francisco Félix
27. Oktober 2015 um 3:03 Uhr
Ich denke, wp_editor ist eine Standard-Editor-Funktion in WordPress. Ich habe gerade als meinen obigen Code aufgerufen.
– Syed Mohammed Aladeen
27. Oktober 2015 um 5:04 Uhr
Das Wo bestimmt das Wann. Sie können Skripte einfach nicht ändern. Sie müssen wissen, welche Dateien Sie hinzufügen/ändern und welche Funktionen Sie aufrufen müssen, um das gewünschte Ziel zu erreichen. Bitte überprüfen Sie diese Seite codex.wordpress.org/Plugin_API/Action_Reference Ich helfe Ihnen gerne, wenn Sie mir genau sagen, wo und wann Sie den Editor benötigen (die Bearbeitungsseite eines normalen Beitrags, die Bearbeitungsseite eines benutzerdefinierten Beitragstyps, die Optionsseite Ihres Plug-ins usw.).
– Francisco Félix
27. Oktober 2015 um 6:54 Uhr