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