Lanciare una funzione da back end
//creo la pagina di sincronizzazione
add_action('admin_menu', 'wc_plugin_menu');
function wc_plugin_menu(){
add_menu_page('Sincronizza tutto', 'Sincronizza tutto', 'manage_options', 'pagina-sincronizzazione', 'pagina_sincronizzazione');
}
//pagina di sincronizzazione
function pagina_sincronizzazione(){
if(is_user_logged_in()) {
$user_info = get_userdata(get_current_user_id());
$identita = $user_info->roles[0];
if ($identita != 'administrator') {
wp_die( __('Non hai i permessi per accedere a questa pagina.') );
}
// Check whether the button has been pressed AND also check the nonce
if (isset($_POST['sync_button']) && check_admin_referer('sync_button_clicked')) {
// the button has been pressed AND we've passed the security check
cycleAllAndSynk();
echo '<div class="wrap">';
echo '<h1>Funzione lanciata</h1>';
echo '<button class="button button-primary" onclick="goBack()">Torna</button>';
echo '<script>function goBack() { window.history.back();}</script>';
echo '</div>';
} else {
echo '<div class="wrap">';
echo '<form action="options-general.php?page=pagina-sincronizzazione" method="post">';
echo '<h1>Sincronizza tutte le anagrafiche e le offerte manualmente</h1>';
echo '<p>da utilizzare nel caso in cui la sincronizzazione automatica per qualche ragione non sia andata a buon fine</p>';
wp_nonce_field('sync_button_clicked');
echo '<input type="hidden" value="true" name="sync_button" />';
//chiamo un pulsante submit di sistema
submit_button('Sincronizza');
echo '</form>';
echo '</div>';
}
}
}