 
 
 <?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>upCreative &#187; php</title>
	<atom:link href="https://www.upcreative.net/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.upcreative.net</link>
	<description>Web Design, grafica,  web application e content web marketing</description>
	<lastBuildDate>Wed, 10 Apr 2019 12:53:28 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.41</generator>
	<item>
		<title>Ajax WordPress: come utilizzarli insieme</title>
		<link>https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/</link>
		<comments>https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/#comments</comments>
		<pubDate>Thu, 06 Mar 2014 08:13:44 +0000</pubDate>
		<dc:creator><![CDATA[upcreative]]></dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Risorse]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.upcreative.net/?p=3379</guid>
		<description><![CDATA[<p>Ajax Wordpress: effettuare chiamate asincrone al server oppure a risorse locali è una delle caratteristiche fondamentali per la creazione di qualsiasi HTML Mobile App e Single Page Application sviluppata in HTML5, CSS3 e Javascript. In questo articolo gli amici di LaboratorioCSS.it ci mostrano come implementarle nella piattaforma CMS più utilizzata al mondo.</p>
<p>The post <a rel="nofollow" href="https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/">Ajax WordPress: come utilizzarli insieme</a> appeared first on <a rel="nofollow" href="https://www.upcreative.net">upCreative</a>.</p>
]]></description>
				<content:encoded><![CDATA[<div class="l-submain"><div class="l-submain-h g-html i-cf"><div class="g-cols"><div class="full-width">
	<div class="wpb_text_column ">
		<div class="wpb_wrapper">
			<em>Questo è un guest post frutto della collaborazione da <a title="Stefano Vollono - Laboratorio CSS" href="http://www.laboratoriocss.it/author/stefano-vollono">Stefano Vollono</a> ed <em><a title="Antonio Polese - Laboratorio CSS" href="http://www.laboratoriocss.it/author/antonio-polese">Antonio Polese</a></em>, fondatori del blog <a title="Laboratorio CSS" href="http://www.laboratoriocss.it/">Laboratorio CSS</a> e gli amici di <a title="Lobaedesign.com" href="http://www.lobaedesign.com/">Lobaedesign.com</a>. Siccome la tecnica <strong>ajax</strong> è una delle caratteristiche fondamentali per la<strong> creazione di qualsiasi <a title="HTML Mobile Accelerato - E-book per imparare a sviluppare mobile app in HTML, CSS3 e Javascript" href="http://www.upcreative.net/html-mobile-accelerato/">HTML Mobile App</a> e single page application sviluppata in HTML5, CSS3 e Javascript</strong> (uno dei temi caldi di questo blog), e siccome <strong>WordPress</strong> è il CMS più utilizzato al mondo, credo possa essere di incredibile aiuto approfondire l&#8217;argomento su <a title="upCreative.net - Blog su web marketing e web design" href="http://www.upCreative.net">upCreative.net</a>. Buona lettura!</em></p>
<section>
<hr />
<p><em>Come implementare #ajax in un sito #wordpress #webdesign #javascript</em><br /><a href='https://twitter.com/share?text=Come+implementare+%23ajax+in+un+sito+%23wordpress+%23webdesign+%23javascript&#038;via=upCreativeIta&#038;related=upCreativeIta&#038;url=https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/' target='_blank'>Click To Tweet</a></p>
<hr /></section>
<section></section>
<section></section>
<section></section>
<section><a ref="magnificPopup" href="http://www.upcreative.net/wp-content/uploads/2014/03/Ajax-Wordpress-come-utilizzarli-insieme.jpg"><img class="size-full wp-image-3390 aligncenter" alt="Ajax-Wordpress--come-utilizzarli-insieme" src="http://www.upcreative.net/wp-content/uploads/2014/03/Ajax-Wordpress-come-utilizzarli-insieme.jpg" width="690" height="400" /></a></section>
<section></section>
<section></section>
<section></section>
<section></section>
<h2></h2>
<h2>Cos’è l&#8217; Ajax?</h2>
<section></section>
<section><span style="line-height: 1.5em;">Per chi ancora non lo sapesse, AJAX, sta per Asynchronous Javascript And Xml ed è una tecnica che ci permette di creare una comunicazione asincrona con i server.</span>In parole semplici e senza grandi tecnicismi, l’Ajax ci permetterà di aggiornare il contenuto delle pagine che visualizziamo, senza doverle ricaricare, come ad esempio avviene con i commenti di Facebook.&nbsp;</p>
</section>
<section>
<h2>Ajax WordPress: implementazione</h2>
<p>Visto che l’Ajax viene già utilizzato nativamente nel backend di WordPress, sarà abbastanza semplice implementarlo.<br />
Tutto quello di cui avremo bisogno sarà già presente nelle funzioni del core di WordPress. Prima di inoltrarci dentro lo scripting dei vari codici, guardiamo un po’ insieme il processo di funzionamento.</p>
<p>Ogni richiesta Ajax gestita dal core di WordPress passerà attraverso i codici del file <em>admin-ajax.php</em>, presente nella cartella wp-admin. Questo file è un po’ complesso, proprio perché fa parte del core di WordPress e non dei file dei temi che siamo soliti adoperare per lo sviluppo del frontend.</p>
<p>Ogni richiesta Ajax avrà sempre la necessità di fornire qualche dato (utilizzando i metodi GET o POST del PHP), questi dati verranno passati grazie a delle azioni che durante il tutorial chiameremo, appunto, <em><strong>action</strong></em>.<br />
Sulla base di questo parametro action, il file <em><strong>admin-ajax.php</strong></em> crea due collegamenti: <em><strong>wp_ajax_my_action</strong></em> e<em><strong>wp_ajax_nopriv_my_action</strong></em>, dove <em><strong>my_action</strong></em> sarà il valore del parametro action passato in GET o in POST.</p>
<p>Creiamo un sistema rudimentale di votazioni online per un veloce esempio: per prima cosa creiamo un plugin vuoto e attiviamolo.<br />
Per creare un nuovo plugin, tutto quello che dovremo fare sarà creare una nuova cartella all’interno della cartella contenente i plugin (<em>nome_del_tema_wp-content/plugins</em>) e nominarla <strong>ajax_plugin</strong>. All’interno di essa, creiamo un file php denominato <em>ajax_plugin.php</em> e copiate al suo interno con un editor di testo o un qualsiasi software per scripting le seguenti informazioni:</p><pre class="crayon-plain-tag">&lt;?php! /*!
Plugin Name: Ajax Plugin
Plugin URI: http://ajax-plugin-url.com! Description: Descrizione Plugin! Version: 1.0
Author: Lobae Design
Author URI: http://lobaedesign.com! License: GPL2
*/
?&gt;</pre><p>
Fatto questo, andiamo a cercare il nostro file single.php e apriamolo.</p>
<hr />
<p><em>Come implementare #ajax in un sito #wordpress #webdesign #javascript</em><br /><a href='https://twitter.com/share?text=Come+implementare+%23ajax+in+un+sito+%23wordpress+%23webdesign+%23javascript&#038;via=upCreativeIta&#038;related=upCreativeIta&#038;url=https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/' target='_blank'>Click To Tweet</a></p>
<hr />
<section>
<h2>Prepariamoci ad inviare la chiamata Ajax</h2>
<p>Creiamo un link che dia la possibilità agli utenti di inserire un apprezzamento, attraverso un pollice alzato, agli articoli del nostro blog. Da qualche parte, all’interno del file <em>single.php</em>, probabilmente vicino al titolo dell’articolo, aggiungiamo il seguente codice:</p><pre class="crayon-plain-tag">&lt;?php
   $votes = get_post_meta($post-&gt;ID, "votes", true)
   $votes = ($votes == "") ? 0 : $votes;
?&gt;
Questo post ha &lt;div id='vote_counter'&gt;&lt;?php echo $votes ?&gt;&lt;/div&gt; voti&lt;br /&gt;
&lt;?php
   $nonce = wp_create_nonce("my_user_vote_nonce");
    $link = admin_url('admin-ajax.php?action=my_user_vote&amp;post_id='.
$post-&gt;ID.'&amp;nonce='.$nonce);
    echo '&lt;a class="user_vote" data-nonce="' . $nonce . '" data-
post_id="' . $post-&gt;ID . '" href="' . $link . ‘"&gt;Vota questo articolo&lt;/ a&gt;';
?&gt;</pre><p>
<h2>Ajax WordPress: modificare il valore action senza JavaScript</h2>
<p>Se adesso proviamo a cliccare il link creato con l’aggiunta del codice inserito sopra, verremo portati allo script nella pagina <em>admin-ajax.php</em>, che renderà un valore in uscita pari a -1, poiché nessuna funzione è ancora stata creata per manipolare il valore di action.</p>
<p>Andiamo quindi nella pagina php del nostro plugin, creiamo una funzione e connettiamo il tutto con l’apposito collegamento:</p><pre class="crayon-plain-tag">add_action("wp_ajax_my_user_vote", "my_user_vote");
add_action("wp_ajax_nopriv_my_user_vote", "my_must_login");

function my_user_vote() {
   if( !wp_verify_nonce( $_REQUEST['nonce'], "my_user_vote_nonce")) {!
        exit("No naughty business please");!
   }

   $vote_count = get_post_meta($_REQUEST["post_id"], "votes", true);
   $vote_count = ($vote_count == '') ? 0 : $vote_count;
   $new_vote_count = $vote_count + 1;
   $vote = update_post_meta($_REQUEST["post_id"], "votes", $new_vote_count);

   if($vote === false){
      $result['type'] = "error";
      $result['vote_count'] = $vote_count;
   }

   else{
        $result['type'] = "success";
        $result['vote_count'] = $new_vote_count;
   }

   if(!empty($_SERVER['HTTP_X_REQUESTED_WITH']) &amp;&amp;
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
       $result = json_encode($result);!
       echo $result;
   }
   else{
       header("Location: ".$_SERVER["HTTP_REFERER"]);!
   }
   die();
}

function my_must_login(){
   echo “Devi essere loggato per votare";
   die();
}</pre><p>
<h2>Aggiungere il JavaScript</h2>
<p>Fino ad adesso abbiamo gestito l’interazione del voto con i sistemi tradizionali, tramite PHP ma volendo fare in modo che ogni funzionalità venga fatta senza il bisogno di ricaricare la pagina, avremmo necessariamente bisogno di utilizzare il JavaScript.<br />
Andiamo quindi ad aggiungere la libreria jQuery e, naturalmente, un collegamento al nostro file JavaScript:<em><strong>ajax-plugin.js</strong></em>.</p><pre class="crayon-plain-tag">add_action( 'init', 'my_script_enqueuer' );
function my_script_enqueuer(){
   wp_register_script( "my_voter_script", WP_PLUGIN_URL.’/ajax_plugin/
   ajax-plugin.js', array('jquery') );
   wp_localize_script( 'my_voter_script', 'myAjax', array( 'ajaxurl' =&gt; admin_url( 'admin-ajax.php' )));
   wp_enqueue_script( 'jquery' );
   wp_enqueue_script( 'my_voter_script' );
}</pre><p>
Questo illustrato sopra è il metodo per inserire file JS con WordPress ed essere sicuri che ogni file venga sempre trovato, naturalmente, dovrete andare a creare un file JS all’interno della vostra cartella plugin, allo stesso indirizzo elencato nel codice: <em><strong>nome_del_tema_wp-content/plugins/ajax_plugin/ajax-plugin.js</strong></em>.</p>
<hr />
<p><em>Come implementare #ajax in un sito #wordpress #webdesign #javascript</em><br /><a href='https://twitter.com/share?text=Come+implementare+%23ajax+in+un+sito+%23wordpress+%23webdesign+%23javascript&#038;via=upCreativeIta&#038;related=upCreativeIta&#038;url=https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/' target='_blank'>Click To Tweet</a></p>
<hr />
<p>All’interno di questo file andrete ad inserire l’ultima porzione di codice JavaScript che servirà, proprio attraverso Ajax, a fare da tramite tra JS e PHP:</p><pre class="crayon-plain-tag">jQuery(document).ready(function(){
   jQuery(".user_vote").click( function(){
      post_id = jQuery(this).attr("data-post_id")
      nonce = jQuery(this).attr("data-nonce")
      jQuery.ajax({
         type:"post",
         dataType:"json",
         url:myAjax.ajaxurl,
         data:{action: "my_user_vote", post_id : post_id, nonce:nonce},
         success:function(response){
            if(response.type == "success"){
               jQuery("#vote_counter").html(response.vote_count)
            }
            else{
               alert("Your vote could not be added")
            } 
         }
      })  
   })
})</pre><p>
<h2>Ajax WordPress: conclusioni</h2>
<section>Con questo termino il mio breve tutorial per implementare le funzionalità AJAX all’interno della vostra piattaforma WordPress, viene da se che questo è solo un esempio e le potenzialità di questo procedimento sono enormi!</section>
<section></section>
<section>Cercate di capire a fondo come funziona ogni passaggio e sperimentate nuovi metodi per migliorare l’interazione dell’utente sulle pagine dei vostri siti internet.</section>
<section><span style="line-height: 1.5em;">Per qualsiasi chiarimento o domanda, non esitate a lasciare un commento!</span>&nbsp;</p>
</section>
</section>
</section>

		</div> 
	</div> <div class="g-cols color_alternate w-actionbox"><div class="one-half">
	<div class="wpb_text_column ">
		<div class="wpb_wrapper">
			
<h5>Crea la tua mobile app in HTML, CSS3 e Javascript</h5>
<p>Utilizzando queste tecniche insieme a molte altre, ho realizzato più di 10 mobile app in HTML, CSS3 e Javascript. Se anche tu vuoi realizzare la tua applicazione in HTML, CSS e javascript da distribuire nei vari store, forse potrebbe interessarti il mio e-book <strong><a title="HTML Mobile Accelerato - Come creare una mobile app in HTML, CSS e Javacript" href="http://www.upcreative.net/html-mobile-accelerato/">HTML Mobile Accelerato</a>.</strong>
		</div> 
	</div> </div><div class="one-half">
	<div class="wpb_single_image wpb_content_element align_center">
		<div class="wpb_wrapper">
			
			<img width="563" height="418" src="http://www.upcreative.net/wp-content/uploads/2013/11/HTML-mobile-accelerato-ebook-cover1.png" class="attachment-full" alt="HTML-mobile-accelerato-ebook-cover" />
		</div> 
	</div> 
	<div class="wpb_text_column ">
		<div class="wpb_wrapper">
			<div class="widget_wysija_cont shortcode_wysija"><div id="msg-form-wysija-shortcode6ab1b477544e1-4" class="wysija-msg ajax"></div><form id="form-wysija-shortcode6ab1b477544e1-4" method="post" action="#wysija" class="widget_wysija shortcode_wysija">
<p class="wysija-paragraph">
    
    
    	<input type="text" name="wysija[user][email]" class="wysija-input validate[required,custom[email]]" title="Inserisci la tua mail" placeholder="Inserisci la tua mail" value="" />
    
    
    
    <span class="abs-req">
        <input type="text" name="wysija[user][abs][email]" class="wysija-input validated[abs][email]" value="" />
    </span>
    
</p>
<input class="wysija-submit wysija-submit-field" type="submit" value="Tienimi aggiornato/a" />

    <input type="hidden" name="form_id" value="4" />
    <input type="hidden" name="action" value="save" />
    <input type="hidden" name="controller" value="subscribers" />
    <input type="hidden" value="1" name="wysija-page" />

    
        <input type="hidden" name="wysija[user_list][list_ids]" value="4,1" />
    
 </form></div>
		</div> 
	</div> </div></div></div></div>
</div></div><p>The post <a rel="nofollow" href="https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/">Ajax WordPress: come utilizzarli insieme</a> appeared first on <a rel="nofollow" href="https://www.upcreative.net">upCreative</a>.</p>
]]></content:encoded>
			<wfw:commentRss>https://www.upcreative.net/ajax-wordpress-come-utilizzarli-insieme/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
