WordPress Plugin Formular speichert keine Daten

Ich lerne Entwicklung von Plugins, ich bin stecken in Speichern der Plugin-Optionen Form Daten.

Ich habe eine Plugin-Optionen-Seite, wo drei Felder für die Anzahl der Videos, Höhe und Breite codiert sind.

Wenn ich die Werte hineingebe und auf Speichern klicke, wird nur ein Wert gespeichert, also die Anzahl der Videos.

Hier ist mein Code

 

Youtube Video Setting Options

No of videos: <input type="text" name="ozh_sample[sometext]" value="" />
Height: <input type="text" name="ozh_sample[hgt]" value="" />
Width: <input type="text" name="ozh_sample[wid]" value="" />

<input type="submit" class="button-primary" value="" />

Es spart nicht Höhe und Breite.

Ich weiß, dass ich an Code arbeiten muss, aber es nicht bekommen,

Kann mir jemand dabei helfen ???

Solutions Collecting From Web of "WordPress Plugin Formular speichert keine Daten"

Zunächst sollten Sie Ihre Optionen als Array in wp_options . Aber sollten Sie dies nicht tun, sollten Sie die Namen Ihrer zweiten und dritten Option ändern. “Höhe” und “Breite” sind völlig zu allgemein und verursachen fast sicher Konflikte. Sie übergeben name="height" bzw. name="width" , aber ich bezweifle, dass WordPress “width” und “height” als Optionen assoziiert, die zu Ihrem Plugin gehören.

Angenommen, Sie speichern Ihre Optionen als plugin_plugin-slug_options , was ein Array ist:

 < ?php $plugin_options = get_option( 'plugin_plugin-slug_options' ); ?> Number Of Videos: />  Height: />  Width: />  

Aber Sie sollten wirklich die Verwendung der Einstellungs-API in Betracht ziehen, zumindest soweit Sie register_setting() , um Ihr Options-Array zu registrieren, und settings_fields() , um die Schwerfälligkeit in Ihrem Einstellungsformular zu beheben.

Ich empfehle, das Tutorial von Ozh auf Handling Plugin-Optionen mit register_setting zu überprüfen.

Die Verwendung der Einstellungs-API ist bei weitem der einfachste Weg, um mit Plugin-Optionen umzugehen.

WordPress wird die Arbeit für Sie erledigen.

Kurzes Beispiel einer Optionsseite, die ein Formular mit 1 Feld enthält.

 add_action('admin_menu', 'c3m_myplugin_add_page'); function c3m_myplugin_add_page() { add_options_page( 'C3M Google Analytics', 'C3M Google Analytics', 'manage_options', 'c3m_myplugin', 'c3m_myplugin_option_page' ); } // Draw the option page function c3m_myplugin_option_page() { ?> 

Really Simple Google Analytics

< ?php settings_fields( 'c3m_myplugin_options' ); ?> < ?php do_settings_sections( 'c3m_myplugin' ); ?>
< ?php } // Register and define the settings add_action( 'admin_init', 'c3m_myplugin_admin_init' ); function c3m_myplugin_admin_init(){ register_setting( 'c3m_myplugin_options', 'c3m_myplugin_options' ); add_settings_section( 'c3m_myplugin_main', 'Google Analytics Web Property ID', 'c3m_myplugin_section_text', 'c3m_myplugin' ); add_settings_field( 'c3m_myplugin_text_string', 'Enter text here', 'c3m_myplugin_setting_input', 'c3m_myplugin', 'c3m_myplugin_main' ); } // Draw the section header function c3m_myplugin_section_text() { echo '

Enter your Google Analytics Web Property ID here ex: UA-XXXXXX-XX.'; }