2010-11-18 7 views
1

Je souhaite avoir un titre de widget modifiable via le panneau Options dans wp-admin> Apparence> Widgets.La sauvegarde des options du Widget Wordpress ne fonctionne pas

Cela ne semble pas fonctionner, après avoir cliqué sur "SAVE", il restitue toujours la valeur par défaut au lieu d'enregistrer des choses. panneau de commande

Widgets est très simpliste:

function myplugin_control() { 

    echo '<p> 
      <label for="myplugin_title">Title:</label> 
      <input id="myplugin_title" name="myplugin_title" type="text" value="Default title:"/> 
     </p> 
     <p> 
      <label for="myplugin_number">Number of items to show:</label> 
      <input id="myplugin_number" name="myplugin_number" type="text" value="5" size="3"/>'; 

     $myplugin_title = ($_POST["myplugin_title"]); 
     $myplugin_number = ($_POST["myplugin_number"]); 

     update_option('myplugin_widget', $myplugin_number , $myplugin_title); 

} 

Et le plugin va comme:

(...) 
    function widget_myplugin($args) { 
     extract($args); 
     echo $before_widget; 
     echo $before_title . $myplugin_title . $after_title; 
     myplugin(); 
     echo $after_widget;  
    } 

Répondre

0
  1. Je pense que vous utilisez update_option(); incorrectement. Cela ne prend que deux valeurs. Essayez de changer le nom de votre champ de titre pour simplement "titre". Je pense que WP cherche par défaut; voir: http://wordpress.org/support/topic/how-can-i-set-a-widgets-title-in-for-use-in-the-dashboard

  2. Au lieu d'utiliser $ _POST ['title'], utilisez le plus standard $ this-> get_field_id ('title'); et echo $ this-> get_field_name ('title');

Espérons que cela aide! Aussi: vous pouvez trouver le lien suivant utile: http://wpengineer.com/1023/wordpress-built-a-widget/