Wie soll ein Widget auf das verweisen, was zum benutzerdefinierten Untermenü hinzugefügt wird oder Felder hinzufügt?

Ich bin in das Plugin-Handbuch gegangen , habe aber nicht erwähnt, wie Sie auf die Einstellungen verweisen sollen. Wenn Sie zum Beispiel die Seite mit den Beispieleinstellungen aufrufen, wird das folgende Menü erstellt:

function wporg_options_page() { // add top level menu page add_menu_page( 'WPOrg', 'WPOrg Options', 'manage_options', 'wporg', 'wporg_options_page_html' ); } 

und auf dieser Seite hast du ein einzelnes Feld:

 function wporg_field_pill_cb($args) { // get the value of the setting we've registered with register_setting() $options = get_option('wporg_options'); // output the field ?> <select id="" data-custom="" name="wporg_options[]" > <option value="red" >   <option value="blue" >    

<?php }

und wenn ich ein Widget erstellen wollte, das auf das verweist, was in der function wporg_field_pill_cb , habe ich das Tag add-menu-page und add-submenu-page durchsucht, aber ich sehe nichts Solides. Wenn ich referenziere

  • Fügen Sie ein Untermenü hinzu , das auf die function add_submenu_page()
  • Das Gleiche gilt for add_menu_page() function for add_menu_page()
  • Ich habe den add_setting_field Codex betrachtet, der besagt, dass er Teil der Einstellungs-API ist, aber nichts da.

Wo in der Dokumentation wird diskutiert, wie Sie auf die Seite auf dieser Seite verweisen können? Rufen Sie die registrierte Einstellung wporg_options in widget() ?

Ich entschuldige mich, wenn dies unklar war, aber mein Ziel ist es zu lernen, wie man im Untermenü oder im Hauptmenü ein Formular mit Einstellungen hat, auf die das Widget referenziert oder vom Widget gerendert wird. Ich habe das obige Einstellungs-Plugin als Beispiel verwendet, um zu sehen, was ich auf dieser Einstellungsseite verwenden würde, um den ausgewählten Optionswert zu erhalten.

Solutions Collecting From Web of "Wie soll ein Widget auf das verweisen, was zum benutzerdefinierten Untermenü hinzugefügt wird oder Felder hinzufügt?"

Die Einstellungs-API, deren Verwendung in diesem Code demonstriert wird, soll als ein Framework verwendet werden, um Einstellungsseiten zu erstellen, die zu einer Aktualisierung von Werten in Optionen führen.

Widget-Einstellungen sind eine etwas abstraktere Ebene. Sie sind in Optionen gespeichert, aber es gibt keine Flexibilität, wie sie gespeichert werden. Sie werden alle als Array mit weitgehend konstanten Einstellungsfeldern gespeichert, wobei der Index eine Widget-ID ist.

Diese Abstraktions- API-Widgets-API folgt einem anderen Ablauf als die Einstellungs-API.

Es gibt kein Problem darin, get_option überall get_option wo Sie den Widget-Code benötigen, aber dies ist die einzige Integration, die Sie wahrscheinlich haben sollten.

Sie sollten keine Option festlegen, wenn ein Widget gespeichert wird, da diese Art von Nebeneffekt den Benutzer verwirren wird und der Customizer sich (nicht erinnern warum) beschweren wird.

Sie können Widgets verwalten ist eine Einstellungsseite, aber wie Widgets gespeichert und abgerufen werden, ist einer der am wenigsten dokumentierten Bereiche im core, und während es sicher möglich ist, ist es nicht sehr trivial und ich erinnere mich nicht, jemanden zu sehen, der das tut.