Non mi funziona la chiamata asincrona.
Nel file function.php
inserisco:
codice:
function implement_ajax() { include(TEMPLATEPATH .'/implement-ajax.php'); } add_action('wp_ajax_my_special_action', 'implement_ajax'); add_action('wp_ajax_nopriv_my_special_action', 'implement_ajax');
nel file header.php, inserisco:
codice:
<?php wp_enqueue_script('jquery'); ?>//chiamata a jquery prima del tag <?php wp_head(); ?>
<script type="text/javascript">
jQuery(document).ready(function() {
var width='1';
jQuery.ajax({
url:"./wp-adimn/admin-ajax.php",
type:'POST',
data:'action=my_special_action&id='+width, //setto i valori post, il primo è fisso mentre il secondo è la categoria di cui devo recuperare i post
//l'url, definito precedentemente, è nel formato http://mioblog.it/wp-admin/admin-ajax.php
beforeSend: function(){}, //ciò che verrà fatto prima dell'invio dei dati, come mostrare una gif di caricamento
complete: function(){}, //ciò che verrà fatto al completamento del trasferimento, come nascondere la gif di caricamento
success:function(results) //se la trasmissione a successo rielaboro i dati
{
alert(results); //metto i risultati nel mio box
}
});
});
</script>
Poi genero il mio template personalizzato implement-ajax.php
nel quale richiamo la variabile $id=$_POST['id']; e lo associo ad una pagina qualsiasi.
Ovviamente non mi funziona nulla.
Qualcuno mi sa dire dove sbaglio?
Come dovrei fare etc.. etc..