Guest User

Theme Gaius57

a guest
Dec 23rd, 2012
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.49 KB | None | 0 0
  1. <?php
  2.  
  3. function werk_register_settings() {
  4.     register_setting('werk_theme_options', 'werk_options');
  5. }
  6.  
  7. add_action('admin_init', 'werk_register_settings');
  8.  
  9.  
  10.  
  11. $werk_options = array(
  12.     array('name' => 'Téléphone',
  13.         'desc' => 'Renseignez ici le téléphone',
  14.         'id' => $shortname . '_telephone',
  15.         'type' => 'text',
  16.         'std' => '0123456789'),
  17. //un textarea
  18.     array('name' => 'Mon textarea',
  19.         'desc' => 'Renseignez ici l\'adresse',
  20.         'id' => $shortname . '_adresse',
  21.         'type' => 'textarea',
  22.         'std' => ''),
  23. //une checkbox
  24.     array('name' => 'Afficher l\'adresse',
  25.         'desc' => 'Cochez cette case pour afficher l\'adresse sur la page d\'accueil',
  26.         'id' => $shortname . '_afficher_adresse',
  27.         'type' => 'checkbox'),
  28. //un select
  29.     array('name' => 'Nombres de news',
  30.         'desc' => 'Choississez le nombre de news à afficher en page d\'accueil',
  31.         'id' => $shortname . '_nb_news',
  32.         'type' => 'select',
  33.         'options' => array('gauche' => 'Gauche', 'droite' => 'Droite'),
  34.         'std' => '10 news'),
  35. );
  36.  
  37. function werk_theme_options() {
  38.     add_menu_page('Nos Options', 'Nos Options', 'edit_theme_options', 'werk_theme_options', 'werk_theme_options_page');
  39. }
  40.  
  41. add_action('admin_menu', 'werk_theme_options');
  42.  
  43. function werk_theme_options_page() {
  44.     // On inclut nos tableaux globaux
  45.     global $werk_options;
  46.  
  47.     // Valide la soumission du formulaire
  48.     if (!isset($_REQUEST['settings-updated']))
  49.         $_REQUEST['settings-updated'] = false;
  50.     ?>
  51.  
  52.     <div class="wrap">
  53.  
  54.         <?php
  55.         // Affiche le nom de la page et son icone si celle-ci a été définie
  56.         screen_icon();
  57.         echo "<h2>" . get_current_theme() . __(' Nos Options') . "</h2>";
  58.         ?>
  59.  
  60.         <?php
  61.         // Si le formulaire vient juste d'etre soumis, affiche une notification
  62.         if (false !== $_REQUEST['settings-updated']) :
  63.             ?>
  64.             <div class="updated fade">
  65.                 <p><strong><?php _e('Options sauvegardées'); ?></strong></p>
  66.             </div>
  67.         <?php endif; ?>
  68.  
  69.         <form method="post" action="options.php">
  70.  
  71.             <?php $settings = get_option('werk_options', $werk_options);
  72.             print_r($settings);
  73.             ?>
  74.  
  75.             <?php
  76.             // Cette fonction retourne plusieurs champs cachés requis par le formulaire,
  77.             // parmis lesquels un nonce ("number used once"), un nombre unique utilisé
  78.             // pour s'assurer que le formulaire n'ait été envoyé que depuis la page
  79.             // d'administration. Très important pour la sécurité.
  80.             settings_fields('werk_theme_options');
  81.             ?>
  82.  
  83.  
  84.             <table class="form-table"><!-- Désolé pour les tables ^.^ -->
  85.                 <?php foreach ($settings as $values) { ?>   <!--  <= PAS CERTAIN -->
  86.                                 <tr valign="top">
  87.                                     <th scope="row">
  88.                                         <label ... > ... </label>
  89.                                     </th>
  90.                                     <td>
  91.                                         <input ... />
  92.                                     </td>
  93.                                 </tr>
  94.                 <?php } ?>
  95.             </table>
  96.  
  97.             <p class="submit"><input type="submit" class="button-primary"
  98.                                      value="Enregistrer" /></p>
  99.         </form>
  100.  
  101.     </div>
  102.  
  103.     <?php
  104. }
Advertisement
Add Comment
Please, Sign In to add comment