Wie kann ich eine Optionsseite für mein klassenbasiertes Plugin hinzufügen?

Ich versuche, die neue Einstellungs-API mit einem klassenbasierten Plugin zu verwenden, um eine Einstellungsseite hinzuzufügen. Dies ist der Code, den ich bisher habe:

class simple_sample_plugin{ function simple_sample_plugin() { add_action('init', array(&$this, 'init')); } function init() { add_action('admin_menu', array(&$this, 'admin_menu')); add_action('admin_init', array(&$this, 'admin_init')); } function admin_init() { register_setting( 'sample' // A settings group name. Must exist prior to the register_setting call. ,'sample_options' // The name of an option to sanitize and save. ,array($this, 'set_options') // A callback function that sanitizes the option's value. ); // Register our settings field group add_settings_section( 'sample_section1', // String for use in the 'id' attribute of tags. 'Section 1', // Title of the section. '__return_false', // Function that fills the section with the desired content. The function should echo its output. 'sample' // The type of settings page on which to show the section (general, reading, writing, media etc.) ); // Register our individual settings fields add_settings_field( 'color_scheme' // String for use in the 'id' attribute of tags. ,'Color Scheme' // Title of the field. ,array($this, 'color_scheme') // Function that fills the field with the desired inputs as part of the larger form. Passed a single argument, the $args array. Name and id of the input should match the $id given to this function. The function should echo its output. ,'sample' // The type of settings page on which to show the field (general, reading, writing, ...). ,'sample_section1' // The section of the settings page in which to show the box (default or a section you added with add_settings_section, look at the page in the source to see what the existing ones are.) ,array() // $args - Additional arguments that are passed to the $callback function. The 'label_for' key can be used to give the field a label different from $title. ); } function set_options() { } function color_scheme() { echo ""; } function admin_menu() { add_options_page( __('sample') //page title ,__('sample') //menu title ,'edit_posts' //capability ,'sample' //menu-slug ,array(&$this, 'settings_page') //function callback ); } function settings_page() { ?> 

sample Options

jQuery('.myform input:hidden').prop('type','text');
<?php } } global $simple_sample_plugin; $simple_sample_plugin = new simple_sample_plugin();

Ich habe versucht, das so sauber und einfach wie möglich zu halten, und ich habe versucht, es entsprechend vieler Tutorials und Dokumentation zu tun.

Ich habe auch eine jQuery-Zeile, um versteckte Felder anzuzeigen.

Das einzige Problem ist jedoch, dass dies nicht funktioniert. Das heißt, es fügt eine Beispieloptions-Seite hinzu, aber die Feldwerte sind nicht vorhanden.

Bildschirmfoto:

screenshot-with-shadow.png http://img600.imageshack.us/img600/4526/screenshotwithshadow.png

Hilfe! Was mache ich falsch? Ich habe das jetzt seit 24 Stunden probiert.

Solutions Collecting From Web of "Wie kann ich eine Optionsseite für mein klassenbasiertes Plugin hinzufügen?"