php Creazione pagina backend opzioni e salvataggio opzioni du db

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php Creazione pagina backend opzioni e salvataggio opzioni du db相关的知识,希望对你有一定的参考价值。

<?php
function nomeplugin_get_options() {
   //recupero l'array con le opzioni in caso esistano
   $options = get_option( 'nomeplugin_options', array() );

   //imposto i valori di default
   $new_options['nomeplugin_CLIENT_ID'] = 'qui il valore di default';
   $new_options['nomeplugin_PayPal_SECRET'] = 'qui il valore di default';

   //aggiungo all'array
   $merged_options = wp_parse_args( $options, $new_options );
   $compare_options = array_diff_key( $new_options, $options );

   //se questi campi non hanno valore allora li inserisco
   if ( empty( $options ) || !empty( $compare_options ) ) {
      update_option( 'nomeplugin_options', $merged_options );
   }

   return $merged_options;
}


//creo la pagina ESCURSIONI del plugin
add_action( 'admin_menu', 'nomeplugin_opzioni_menu' );
function nomeplugin_opzioni_menu() {
   add_options_page(
      'Titolo di pagina',
      'Titolo di menù', 'manage_options',
      'nomeplugin-opzioni',
      'nomeplugin_pagina_opzioni' );
}
//funzione lanciata per popolare la pagina opzioni
function nomeplugin_pagina_opzioni(){
   // recupero le configuraizoni già esistenti da db
   $options = nomeplugin_get_options();
   ?>
   <h2>Configurazione Plugin</h2>
   <div class="container-fluid">
      <div class="row">
         <div class="col-md-6">
            <form action="admin-post.php" method="post" id="corsi_opt" name="corsi_opt">
               <h3>Configurazione PAYPAL</h3>
               <!-- aggiungo security hidden referrer field -->
               <?php wp_nonce_field( 'chiave_univoca' ); ?>
               <input type="hidden" name="action" value="save_nomeplugin_options" />
               <div class="form-group">
                  <label for="nomeplugin_CLIENT_ID">CLIEND ID Paypal</label>
                  <input type="text" class="form-control" name="nomeplugin_CLIENT_ID" placeholder="PayPal CLIENT ID" value="<?php echo $options['nomeplugin_CLIENT_ID']; ?>">
               </div>
               <div class="form-group">
                  <label for="nomeplugin_PayPal_SECRET">SECRET Paypal</label>
                  <input type="text" class="form-control" name="nomeplugin_PayPal_SECRET" placeholder="PayPal SECRET" value="<?php echo $options['nomeplugin_PayPal_SECRET']; ?>">
               </div>
               <input type="submit" class="btn btn-primary" value="SALVA" name="submit">
            </form>
         </div>
      </div>
   </div>
<?php
}

add_action( 'admin_init', 'nomeplugin_admin_init' );
function nomeplugin_admin_init() {
   add_action( 'admin_post_save_nomeplugin_options', 'process_nomeplugin_options' );
}

function process_nomeplugin_options() {
   // Check that user has proper security level
   if ( !current_user_can( 'manage_options' ) ) {
      wp_die( 'Not allowed' );
   }

   // Check if nonce field configuration form is present
   check_admin_referer( 'chiave_univoca' );

   // Retrieve original plugin options array
   $options = get_option( 'nomeplugin_options', array() );

   // Cycle through all text form fields and store their values
   // in the options array
   foreach ( array( 'nomeplugin_CLIENT_ID' ) as $option_name ) {
      if ( isset( $_POST[$option_name] ) ) {
         $options[$option_name] = sanitize_text_field( $_POST[$option_name] );
      }
   }
   foreach ( array( 'nomeplugin_PayPal_SECRET' ) as $option_name ) {
      if ( isset( $_POST[$option_name] ) ) {
         $options[$option_name] = sanitize_text_field( $_POST[$option_name] );
      }
   }
   foreach ( array( 'nomeplugin_PayPal_BASE_URL' ) as $option_name ) {
      if ( isset( $_POST[$option_name] ) ) {
         $options[$option_name] = sanitize_text_field( $_POST[$option_name] );
      }
   }

   // Store updated options array to database
   update_option( 'nomeplugin_options', $options );

   // Redirect the page to the configuration form
   wp_redirect( add_query_arg( 'page','nomeplugin-opzioni', admin_url( 'options-general.php' ) ) );
   exit;
}

?>

以上是关于php Creazione pagina backend opzioni e salvataggio opzioni du db的主要内容,如果未能解决你的问题,请参考以下文章

php paginacion paginar lista paginas pagina listado

php Testo Bottone Pagina Prodotto

php Pagina de Gracias

php Varios循环en una pagina

php 链接一个pagina后端di un插件

php CF7 - Redireccion a diferentes paginas