<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2italianfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>.::  Maurizio Pelizzone ::.</title>
	
	<link>http://maurizio.mavida.com</link>
	<description>#WordPress Lover</description>
	<lastBuildDate>Tue, 01 May 2012 21:00:00 +0000</lastBuildDate>
	<language>it</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/mauriziopelizzone" /><feedburner:info uri="mauriziopelizzone" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>45.061456</geo:lat><geo:long>7.933414</geo:long><creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/2.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by-nc-sa/2.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><feedburner:emailServiceId>mauriziopelizzone</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>CloudFlare: una CDN facile (e gratis)</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/1pzyQ6yWevc/</link>
		<comments>http://maurizio.mavida.com/2012/04/25/cloudflare-una-cdn-facile-e-gratis/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 14:13:35 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[featured]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[cdn]]></category>
		<category><![CDATA[cloudflare]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[post_thumbnail_html]]></category>
		<category><![CDATA[reverse proxy]]></category>
		<category><![CDATA[script_loader_src]]></category>
		<category><![CDATA[the_content]]></category>
		<category><![CDATA[widget_text]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=4060</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comArgomento un po&#8217; complesso per cui preferisco partire con la definizione di CDN: Le Content Delivery Network (CDN, Rete per la consegna di contenuti) &#8230; sono un sistema di computer collegati in rete attraverso Internet che collaborano in maniera trasparente, sotto forma di sistema distribuito, per distribuire contenuti agli utenti finali. &#8230; [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Argomento un po&#8217; complesso per cui preferisco partire con la definizione di <a href="http://maurizio.mavida.com/">CDN</a>:</p>
<p>Le <em>Content Delivery Network</em> (<strong>CDN</strong>, Rete per la consegna di contenuti) &#8230; sono un sistema di computer collegati in rete attraverso Internet che collaborano in maniera trasparente, sotto forma di sistema distribuito, per distribuire contenuti agli utenti finali.<br />
&#8230;<br />
L&#8217;obiettivo di una <strong>CDN</strong> è di instradare una richiesta di contenuto sul nodo che viene individuato come ottimale. Se ottimizzate per le prestazioni, il nodo ottimale è quello che può soddisfare la richiesta nel minor tempo possibile: si può determinare per esempio scegliendo quello geograficamente o topograficamente (nel contesto di rete, minor numero di hops o minor ping) più vicino alla locazione del richiedente, oppure quello con un minor carico di lavoro (in inglese, load average).</p>
<p><a href="http://500px.com/photo/5362490"><img class="alignnone size-large wp-image-4071" title="wordpress-cloudflare" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/wordpress-cloudflare.jpg" alt="" /></a></p>
<p>Detto in modo più concreto si tratta di un sistema per ottimizzare e risparmiare carico server facendo in modo che alcuni contenuti (es. le immagini e/o i file statici come js e css) vengano erogati da server differenti ottimizzando la distribuzione a livello geografico in modo che sia il server più vicino a noi ad occuparsi del trasferimento.</p>
<p>Mi sono chiesto più volte in quale modo la nostra infrastuttura potesse beneficiare di questo tecnologia ma guardando le specifiche di <a href="http://www.akamai.com/">Akamai</a> e/o <a href="http://aws.amazon.com/cloudfront/">Amazon</a> (che sono forse tra le più importanti realtà in questo settore) mi sono reso conto che i prezzi per la gestione di piccoli siti sono abbastanza proibitivi.</p>
<p>Poi, come sempre succede in queste cose, &#8220;<em><a href="http://it.wikipedia.org/wiki/Serendipità">la figlia del contadino</a></em>&#8221; mi ha parlato di <strong><a href="https://www.cloudflare.com/plans">CloudFlare</a></strong> e del suo piano gratuito.</p>
<p>Ho deciso quindi di provare l&#8217;integrazione su questa pagine limitando però l&#8217;uso alle immagini e ai file javascript e css.<br />
Questo, in breve, quello che ho fatto.</p>
<ol>
<li>Comprato un nuovo dominio &#8220;<strong>mavidacdn.in</strong>&#8221; su <a href="http://www.whois.com/">whois.com</a> (in offerti in questi giorni a 3.88 dollari).</li>
<li>Ho girato i name server sui server di <strong>Cloudflare</strong></li>
<li>Impostato un nuovo sottominio <strong>static.mavidacdn.in</strong> in modo che punti sul mio ip</li>
<li>Configurato Apache per indirizzare correttamente. (sia maurizio.mavida.com che static puntano adesso allo stesso sito)</li>
<li>Scritto un microplugin per fare in modo che l&#8217;indirizzo delle immagini pubblicare su queste pagine punti sul sottodominio CDN.</li>
<li>Modificato nella pagina nelle impostazioni dei media il &#8220;Percorso URL completa ai file&#8221; con il sottodominio configurato su <strong>CloudFlare</strong> (http://static.mavidacdn.in/wp-content/uploads)</li>
</ol>
<p>In questo modo <strong>CloudFlare</strong> oltre a fare da <strong>CDN</strong> svolge anche un lavoro come <strong>Reverse Proxy</strong> facendo <strong>cache</strong> dei contenuti. Quando viene chiesta un&#8217;immagine, o un file javascript/css <strong>CloudFlare</strong> verifica se è già nella sua cache e solo nel caso non lo sia la chiede al mio server. I benefici nel mio caso sono molto limitati in quanto il traffico generato è relativamente piccolo ma in situazioni più complesse una soluzione come questa potrebbe ridurre notevolemente il traffico.</p>
<p>Questo è il risparmio di banda (e di richieste) ottenuto in 5 giorni di utilizzo:</p>
<p><img class="alignnone size-full wp-image-4076" title="cloudflare-stas" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/cloudflare-stas.jpg" alt="" width="480" height="98" /></p>
<p>Adesso qualche dettaglio tecnico:<br />
Qui sotto potete vedere il modo in cui vado ad effettuare la <em>sostituzione dei link alle immagini</em> che viene usata su filtri: &#8216;the_content&#8217;, &#8216;post_thumbnail_html&#8217; e &#8216;widget_text&#8217;.</p>
<pre>

function CloudFlareImageReplace ( $content ) {

$pattern="/(" .$this-&gt;blog_url . ")(\/wp-content\/)(.*)(png|gif|jpg)/";
$replacement = $this-&gt;cf_cdnurl. "$2$3$4";

return preg_replace($pattern, $replacement,$content );

}
</pre>
<p>Mentre questa quella per js e css che viene attiva dal filtro su &#8220;script_loader_src&#8221;.</p>
<pre>
function CloudFlareScriptReplace ( $src ) {

$pattern="/(" . $this->blog_url . ")(\/wp-content\/)(.*)(js|css)/";
$replacement = $this->CloudFlareUrl . "$2$3$4";

// remove Query Strings From Static Resources
$src_parts = explode('?', $src);
return preg_replace($pattern, $replacement, $src_parts[0] );

}
</pre>
<p>Su <strong>GitHub</strong> potete trovare il sorgente <a href="https://gist.github.com/2437025">versione completa</a> (ancora in versione beta) ma se volte installarlo potete usare quella che ho pubblicato sul codex: <a href="http://wordpress.org/extend/plugins/cloudflare-url-replacement/">http://wordpress.org/extend/plugins/cloudflare-url-replacement/</a>.</p>
<p>Anche in quato caso sono graditi consigli e suggerimenti.</p>
<p>&#8212;<br />
image credits: <a href="http://500px.com/photo/5362490">Derek Heisler</a></p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/04/25/cloudflare-una-cdn-facile-e-gratis/">CloudFlare: una CDN facile (e gratis)</a> was first posted on aprile 25, 2012 at 3:13 pm.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/q82UHbAxhH23wOsONqHMiKChMyQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/q82UHbAxhH23wOsONqHMiKChMyQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/q82UHbAxhH23wOsONqHMiKChMyQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/q82UHbAxhH23wOsONqHMiKChMyQ/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=1pzyQ6yWevc:Wf3rnyBh8Rc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=1pzyQ6yWevc:Wf3rnyBh8Rc:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/1pzyQ6yWevc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/04/25/cloudflare-una-cdn-facile-e-gratis/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/04/25/cloudflare-una-cdn-facile-e-gratis/</feedburner:origLink></item>
		<item>
		<title>WordPress: qualità e quantità</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/Ilgv44_A0WY/</link>
		<comments>http://maurizio.mavida.com/2012/04/20/wordpress-qualita-e-quantita/#comments</comments>
		<pubDate>Fri, 20 Apr 2012 13:01:52 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[pensieri ... e parole]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[source code]]></category>
		<category><![CDATA[web developer]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3246</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.com[polemica on] Da qualche giorno sto seguendo le conversationi su twitter con il tag #wordpress e sinceramente mi aspettavo un po&#8217; più di qualità. Moltissime segnalazioni portano ad articoli veramente banali. E non parlo solo delle migliaia di raccolte plugins che titolano robe tipo &#8220;I migliori plugin per &#8230;&#8221; (che spesso portano [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>[polemica on]<br />
Da qualche giorno sto seguendo le conversationi su twitter con il tag <a href="https://twitter.com/#!/search/%23wordpress">#wordpress</a> e sinceramente mi aspettavo un po&#8217; più di qualità.</p>
<p>Moltissime segnalazioni portano ad articoli veramente banali. E non parlo solo delle migliaia di raccolte plugins che titolano robe tipo &#8220;<strong><em>I migliori plugin per &#8230;</em></strong>&#8221; (che spesso portano a roba vecchia e superata), ma in generale la comunità è povera di contenuti di qualità.<br />
[polemica off]</p>
<p>Ovviamente mi rendo conto che questo non è un problema che possa essere riferito solo <strong>WordPress</strong> ma che affligge un po&#8217; tutta la rete.</p>
<p>Nonostante questo vedere decine di articoli &#8220;fotocopia&#8221; dopo <a href="http://wordpress.org/news/2012/04/wordpress-3-4-beta-2/">l&#8217;annuncio delle beta2</a> mi ha fatto un po&#8217; tristezza (senza contare il fatto che la fonte nella maggior parte dei casi non era nemmeno citata).</p>
<p><a href="http://500px.com/photo/6588623"><img src="http://static.mavidacdn.in/wp-content/uploads/2012/04/wordpress-qualita-quantita.jpg" alt="" title="wordpress-qualita-quantita" width="480" height="320" class="alignnone size-full wp-image-4049" /></a></p>
<p>La selezione di siti che seguo tramite rss va leggermente meglio anche se il numero di articoli e/o snippets interessanti è un po&#8217; in calo.<br />
Ovviamente in tutto questo ci sono le eccezioni e sia su questo sito che sul mio <strong><a href="https://twitter.com/#!/miziomon">twitter</a></strong> cerco di segnalare quello che a mio giudizio può essere interessante da condividere.</p>
<p>Pochi comunque rimangono gli articoli tecnici di approfondimento e come dice <strong><a href="http://scribu.net/wordpress/how-to-become-a-wordpress-guru.html">scribu</a></strong> per diventare &#8220;guru&#8221; bisogna imparare a leggere il sorgente del core.</p>
<p>In generale è curioso vedere come a questo appiattimento dei contenuti si affianchi invece una <em><a href="http://royal.pingdom.com/2012/04/11/wordpress-completely-dominates-top-100-blogs/">continua crescita</a></em> della popolarità ed utilizzo in ambito business.<br />
Forse anche in questo campo vale la regole che dice &#8220;l&#8217;importante è parlarne&#8221;&#8230;</p>
<p>&#8212;&#8212;&#8212;&#8212;<br />
Image from: <a href="http://500px.com/photo/6588623">Garrett Meyers</a></p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/04/20/wordpress-qualita-e-quantita/">WordPress: qualità e quantità</a> was first posted on aprile 20, 2012 at 2:01 pm.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/3yrGfeEauzKlv2QPhXwkQFi7AMQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/3yrGfeEauzKlv2QPhXwkQFi7AMQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/3yrGfeEauzKlv2QPhXwkQFi7AMQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/3yrGfeEauzKlv2QPhXwkQFi7AMQ/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=Ilgv44_A0WY:4Z0yf3vETpE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=Ilgv44_A0WY:4Z0yf3vETpE:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/Ilgv44_A0WY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/04/20/wordpress-qualita-e-quantita/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/04/20/wordpress-qualita-e-quantita/</feedburner:origLink></item>
		<item>
		<title>Estendere il server XML-RPC di WordPress</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/Es0zxSTCbFk/</link>
		<comments>http://maurizio.mavida.com/2012/04/19/estendere-il-server-xml-rpc-di-wordpress/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 21:14:13 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[featured]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[webservice]]></category>
		<category><![CDATA[wordpress plugin]]></category>
		<category><![CDATA[xml-rpc]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3809</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comLeggere, scrivere e/o modificare i contenuti su WordPress non sempre può essere fatto da un&#8217;interfaccia di amministrazione (sia questa web, mobile o app). Ci possono essere esigenze in cui è necessario automatizzare alcuni processi appoggiandosi a strumenti esterni. WordPress ci viene incontro con &#8220;una cosa&#8221; nota come XML-RPC. In pratica si tratta [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Leggere, scrivere e/o modificare i contenuti su <strong>WordPress</strong> non sempre può essere fatto da un&#8217;interfaccia di amministrazione (sia questa web, mobile o app). Ci possono essere esigenze in cui è necessario automatizzare alcuni processi appoggiandosi a strumenti esterni.</p>
<p><strong>WordPress</strong> ci viene incontro con &#8220;<em>una cosa</em>&#8221; nota come <strong><a href="http://scripting.com/davenet/1998/07/14/xmlRpcForNewbies.html">XML-RPC</a></strong>.</p>
<p><img src="http://static.mavidacdn.in/wp-content/uploads/2012/04/wordpress-xmlrpc.jpg" alt="" title="wordpress-xmlrpc" width="480" height="302" class="alignnone size-full wp-image-4039" /></p>
<p>In pratica si tratta di un componente che ci permette di dialogare secondo un protocollo standard attraverso internet. In questo modo un sito e/o applicazione esterna potrebbe pilotare la nostra installazione facendogli fare qualsiasi cosa.</p>
<p>In realtà &#8220;qualsiasi cosa&#8221; non è ancora prevista ma dalla nuova versione 3.4 ne saranno <a href="http://codex.wordpress.org/XML-RPC_WordPress_API">aggiunte parecchie</a>. Ricordatevi solo di <a href="http://codex.wordpress.org/XML-RPC_Support#Enabling_XML-RPC">abilitarlo</a> che di default è disattivato.</p>
<p>Il titolo di questo articolo però è &#8220;Estendere il server XML-RPC&#8221; non &#8220;Usare il server XML-RPC&#8221; quindi iniziamo a vedere cosa ci dice il codex: <a href="http://codex.wordpress.org/XML-RPC_Extending">XML-RPC Extending</a></p>
<p><em>Like the rest of <strong>WordPress</strong>, the <strong>XML-RPC API</strong> contains numerous hooks to customize or extend its behavior.</em></p>
<p>Nel caso volessimo estendere il servizio XML-RPC attraverso un plugin in grado di restituire gli ultimi post non dovremo quindi fare altro che aggiugnere una roba come questa:</p>
<pre>
// aggiungo il fitro
add_filter( 'xmlrpc_methods', 'mycustom_methods');

// dichiaro i nuovi metodi
function mycustom_methods( $methods ) {
    $methods['getlastposts'] = 'get_LastPosts';
    return $methods;
}

/*
 * restisuisco gli ultimi n. post in formato serializzato
 */
function get_LastPosts( $params ) {

  $args =  $params[0]
  $defaults = array(
	'numberposts' => 5,
	'post_type' => 'post',
        'post_status'     => 'publish'
	);

  $args = wp_parse_args( $args, $defaults );
  $posts = get_posts( $args );

  // restituisco l'oggetto serializzato
  return serialize($posts);
}
</pre>
<p>Questo invece un esempio di come poter usare il vostro &#8220;nuovo&#8221; metodo usando il client offerto dalla <em><a href="http://framework.zend.com/manual/en/zend.xmlrpc.client.html">libreria Zend</a></em></p>
<pre>
 $client = new Zend_XmlRpc_Client('http://tuosito.com/xmlrpc.php');
 $response = $client->call('getlastposts');
 $posts = deserialize($response)

 //con passaggio di parametri
 $client = new Zend_XmlRpc_Client('http://tuosito.com/xmlrpc.php');

 $args = array(
	'numberposts' => 3,
	'post_type' => 'page'
	);

 $response = $client->call('getlastposts' , array( $args));
 $posts = deserialize($response)
</pre>
<p>Le cose nella pratica non sono così semplici e potrebbe servire un sistema di autenticazione.<br />
Poi dato che spesso parlo di performance male non farebbe un piccolo sistema di cache.</p>
<p>Ecco quindi una <em>nuova</em> versione di &#8220;get_LastPosts&#8221; che accetta come parametri $blog_id, $username, $password e poi array con gli argomenti necessari a getposts.</p>
<pre>
function get_LastPosts( $params ) {

  $blog_id  =  $params[0]
  $username =  $params[1]
  $password =  $params[2]

  $args     =  $params[3]

  $defaults = array(
	'numberposts' => 5,
	'post_type' => 'post',
        'post_status'     => 'publish'
	);

  $args = wp_parse_args( $args, $defaults );
  extract( $args, EXTR_SKIP );

  if ( !$user = $this->login($username, $password) ) {
     // user o password non validi
     return false;

  } else {

  // creo una chiave univoca per la cache
  $cache_key = "_xmlrpc_" . $username. md5( $numberposts . $post_type);

  $posts = get_transient( $cache_key );

  if (false === $posts) {
     $posts = get_posts( $args );
     set_transient( $cache_key , $posts, 60*60*4 );
  }

  // restituisco l'oggetto serializzato, compresso, ed in base64
  // per ripristinarlo: unserialize(gzuncompress(base64_decode($posts)));
  return base64_encode(gzcompress(serialize($posts)));
 }

}
</pre>
<p>Bene, adesso potete fare un po&#8217; di prove e se nel fare copia e incolla ho sbagliato qualche cosa ditemlo che lo correggo.</p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/04/19/estendere-il-server-xml-rpc-di-wordpress/">Estendere il server XML-RPC di WordPress</a> was first posted on aprile 19, 2012 at 10:14 pm.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/Fg6kw6Q0NHakTU2lQFsVwNtClNI/0/da"><img src="http://feedads.g.doubleclick.net/~a/Fg6kw6Q0NHakTU2lQFsVwNtClNI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Fg6kw6Q0NHakTU2lQFsVwNtClNI/1/da"><img src="http://feedads.g.doubleclick.net/~a/Fg6kw6Q0NHakTU2lQFsVwNtClNI/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=Es0zxSTCbFk:ZvlcqlvwKFA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=Es0zxSTCbFk:ZvlcqlvwKFA:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/Es0zxSTCbFk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/04/19/estendere-il-server-xml-rpc-di-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/04/19/estendere-il-server-xml-rpc-di-wordpress/</feedburner:origLink></item>
		<item>
		<title>WordPress: Evitare “brute force” via .htaccess</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/h4msXNMa5rs/</link>
		<comments>http://maurizio.mavida.com/2012/04/18/wordpress-evitare-brute-force-e-nasconde-il-login-via-htaccess/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 16:06:18 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[featured]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[better security]]></category>
		<category><![CDATA[hide login]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=4006</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comSempre più spesso dando un&#8217;occhiata ai log di sistema vedo attacchi &#8220;brute force&#8221; sulle pagina di login standard (wp-login.php) di WordPress. Su alcuni sito sono arrivato ad avere centinaia di tentativi al giorno ma fortunatamente avendo password alfanumeriche da 12 caratteri e non usando l&#8217;utente &#8220;admin&#8221; di default non mi sono mai [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Sempre più spesso dando un&#8217;occhiata ai log di sistema vedo attacchi &#8220;<strong><a href="http://it.wikipedia.org/wiki/Metodo_forza_bruta">brute force</a></strong>&#8221; sulle pagina di <strong>login</strong> standard (<em>wp-login.php</em>) di <strong>WordPress</strong>.<br />
Su alcuni sito sono arrivato ad avere centinaia di tentativi al giorno ma fortunatamente avendo <strong>password alfanumeriche da 12 caratteri</strong> e <em>non usando</em> l&#8217;utente &#8220;admin&#8221; di default non mi sono mai preoccupato più di tanto.</p>
<p><a href="http://500px.com/photo/3901251"><img src="http://static.mavidacdn.in/wp-content/uploads/2012/04/brute-force-htaccess-480x300.jpg" alt="" title="brute-force-htaccess" width="480" height="300" class="alignnone size-large wp-image-4055" /></a></p>
<p>Nel tempo però mi sono reso conto di <strong>due grossi problemi</strong> problemi:</p>
<ol>
<li><strong>Banda e sovraccarico del server</strong>: in questo caso e stato semplice intervenire e plugin come <a href="http://wordpress.org/extend/plugins/simple-login-lockdown/screenshots/"><strong>Simple Login Lockdow</strong>n</a> hanno reso la cosa molto semplice. In pratica dopo un numero configurabile di tentativi falliti, per un periodo di tempo altrettanto configurabile, viene bloccato l&#8217;IP impedendo l&#8217;accesso alla pagina.<br />Io lo avevo configurato in modo che dopo 3 tentativi venisse bannato per 4 ore.</li>
<li><strong>Utenti Utonti</strong>: Questo è stato il problema più grave. Dato che nella maggior parte dei casi non sono io l&#8217;utilizzatore del sito ma il mio lavoro termina creado le credenziali per gli utenti che andranno ad operare, succede che per alcuni una password alfanumerica sia troppo complicata. Ecco quindi che di loro iniziativa la modificano con delle robe tipo &#8220;la data di nascita del figlio&#8221; perchè così <strong><em>è più facile da ricordare</em></strong>. La soluzione a questa &#8220;<strong>esigenza imprescindibile</strong>&#8221; l&#8217;ho trovata modificando e nascondendo l&#8217;url della pagina di login.<br />
Inizialmente ho usato &#8220;<strong><a href="http://wordpress.org/extend/plugins/hide-login/">hide login</a></strong>&#8221; e successivamente anche &#8220;<strong><a href="http://wordpress.org/extend/plugins/better-wp-security/">better security</a></strong>&#8221; ma alla fine ho preferito preparare uno snippet (che trovatre qui sotto) da mettere manualmente nel file <strong>.htaccess</strong> evitando in questo modo che il plugin possa essere disattivato.</li>
</ol>
<p>Se volte implementarlo nel nostra installazzione vi lascio solo alcune avvertenze in quanto prima di usarlo vanno modificate alcune variabili che sono dipendenti dal vostra configurazione.</p>
<p>[key] = chiave di controllo per il login &#8211; es. &#8220;0agw7&#8243; (4 sostituzioni)<br />
[nomesito] = l&#8217;url del vostro sito &#8211; es. &#8220;http://maurizio.mavida.com (6 sostituzioni)<br />
[login] = nuovo url per la pagina di login &#8211; es. &#8220;custom-login&#8221; (2 sostituzioni)<br />
[admin] = nuovo url per la pagina di admin &#8211; es. &#8220;custom-admin&#8221; (2 sostituzioni) </p>
<p>Attenzione: Prima di metterlo in produzione vi consiglio di provarlo localmente <strong>e di fare un backup del vostro precedente .htaccess</strong>. (non mi assumo responsabilità).</p>
<pre>
# CUSTOM RULES
RewriteEngine On
RewriteBase /
RewriteRule ^[login] wp-login.php?hide_in_key=[key]&#038;redirect_to=/wp-admin/ [R,L]
RewriteRule ^[admin] wp-admin/?hide_admin_key=[key] [R,L]

RewriteCond %{HTTP_REFERER} !^[nomesito]/wp-admin
RewriteCond %{HTTP_REFERER} !^[nomesito]/wp-login\.php
RewriteCond %{HTTP_REFERER} !^[nomesito]/[login]
RewriteCond %{HTTP_REFERER} !^[nomesito]/[admin]
RewriteCond %{QUERY_STRING} !^hide_in_key=[key]
RewriteCond %{QUERY_STRING} !^hide_admin_key=[key]
RewriteRule ^wp-login\.php [nomesito] [R,L]

RewriteCond %{QUERY_STRING} ^loggedout=true
RewriteRule ^wp-login\.php [nomesito] [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END CUSTOM RULES</pre>
<p>Rimango comunque disponibile nel caso doveste avere problemi o vogliate segnalarmi come migliorarlo.</p>
<p>&#8212;<br />
Image credits: <a href="http://500px.com/photo/3901251">shintaro s</a></p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/04/18/wordpress-evitare-brute-force-e-nasconde-il-login-via-htaccess/">WordPress: Evitare &#8220;brute force&#8221; via .htaccess</a> was first posted on aprile 18, 2012 at 5:06 pm.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/c2fkBjgYs1zMU5kdXrjvbk88YnQ/0/da"><img src="http://feedads.g.doubleclick.net/~a/c2fkBjgYs1zMU5kdXrjvbk88YnQ/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/c2fkBjgYs1zMU5kdXrjvbk88YnQ/1/da"><img src="http://feedads.g.doubleclick.net/~a/c2fkBjgYs1zMU5kdXrjvbk88YnQ/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=h4msXNMa5rs:gjLXX6SK-hE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=h4msXNMa5rs:gjLXX6SK-hE:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/h4msXNMa5rs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/04/18/wordpress-evitare-brute-force-e-nasconde-il-login-via-htaccess/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/04/18/wordpress-evitare-brute-force-e-nasconde-il-login-via-htaccess/</feedburner:origLink></item>
		<item>
		<title>WordPress in numeri – aprile 2012</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/nsjluaIiQvY/</link>
		<comments>http://maurizio.mavida.com/2012/04/16/wordpress-in-numeri-aprile-2012/#comments</comments>
		<pubDate>Mon, 16 Apr 2012 20:12:21 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[infographic]]></category>
		<category><![CDATA[statistiche]]></category>
		<category><![CDATA[yoast]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3998</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comYoast ha pubblicato oggi un&#8217;interssante infografica relativa alla diffusione di WordPress ed ai numeri pubblicati qualche giorno da da pingdom. Cita anche un pensiero di Matt Mullenweg dove leggo con piagere che la più grande sfida dei prossimi due anni sarà l&#8217;evolvere della dashboard per essere più veloce e più accessibile (soprattutto [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p><a href="http://yoast.com">Yoast</a> ha pubblicato oggi un&#8217;interssante <strong><a href="http://maurizio.mavida.com/tags/infographic/">infografica</a></strong> relativa alla diffusione di <strong>WordPress</strong> ed ai numeri pubblicati qualche giorno da da <strong><a href="http://royal.pingdom.com/2012/04/11/wordpress-completely-dominates-top-100-blogs/">pingdom</a></strong>.</p>
<p><a href="http://cdn.yoast.com/wp-content/uploads/2012/04/wordpress-stats-infographic-yoast-full.jpg"><img src="http://static.mavidacdn.in/wp-content/uploads/2012/04/wordpress-stats-infographic-yoast.jpg" alt="" title="wordpress-stats-infographic-yoast" width="480" height="306" class="alignnone size-full wp-image-4000" /></a></p>
<p>Cita anche un pensiero di <a href="http://ma.tt/2012/04/wordpress-and-the-top-100/">Matt Mullenweg</a> dove leggo con piagere che la più grande sfida dei prossimi due anni sarà l&#8217;evolvere della dashboard per essere più veloce e più accessibile (soprattutto per dispositivi touch).</p>
<p>In una delle <a href="http://maurizio.mavida.com/2012/03/21/php-to-start-2012/">mie ultime slide</a>, riferendomi alla <em>diffusione</em> di <strong>WordPress</strong> riportavo:</p>
<ul>
<li>72 mln di installazioni nel mondo (circa 50% wordpress.com)</li>
<li>53.7 % del mercato dei CMS</li>
<li>+ 18,800 plugins (Marzo 2012)</li>
<li>+ 1.500 themes (Marzo 2011)</li>
<li>+ 11 mln di download WordPress 3.3 (dicembre 2012 / marzo 2012)</li>
</ul>
<p><a href="http://royal.pingdom.com/2012/04/11/wordpress-completely-dominates-top-100-blogs/">Questa bellissima infografica</a> completa ed estende qui numeri.</p>
<p>Update:<br />
Trovo anche molto interessante e <strong>significativo</strong> l&#8217;incredibile quantitità di richieste di lavoro &#8220;<strong>WordPress</strong>&#8221; pibblicate su piattaforme come <a href="https://www.odesk.com/trends/WordPress">oDesk</a> e <a href="http://www.freelancer.com/hire/Wordpress">Freelancer</a>.<br />
Se qualcuno le ha già provate sarei curioso di conoscere il suo parere&#8230;</p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/04/16/wordpress-in-numeri-aprile-2012/">WordPress in numeri &#8211; aprile 2012</a> was first posted on aprile 16, 2012 at 9:12 pm.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/DR5NXATBrWT1yIKT6E6J8wBgehE/0/da"><img src="http://feedads.g.doubleclick.net/~a/DR5NXATBrWT1yIKT6E6J8wBgehE/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/DR5NXATBrWT1yIKT6E6J8wBgehE/1/da"><img src="http://feedads.g.doubleclick.net/~a/DR5NXATBrWT1yIKT6E6J8wBgehE/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=nsjluaIiQvY:1i1saoy4bZY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=nsjluaIiQvY:1i1saoy4bZY:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/nsjluaIiQvY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/04/16/wordpress-in-numeri-aprile-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/04/16/wordpress-in-numeri-aprile-2012/</feedburner:origLink></item>
		<item>
		<title>Torino Comics 2012 – Cosplay e BoardGame</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/072-CWS1hRU/</link>
		<comments>http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/#comments</comments>
		<pubDate>Mon, 16 Apr 2012 08:47:50 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[pensieri ... e parole]]></category>
		<category><![CDATA[segnalazioni]]></category>
		<category><![CDATA[cosplay]]></category>
		<category><![CDATA[torinocomics]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3973</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comDopo due giorni passati dentro ieri sera ero veramente devastato, ma la fiera ogni anno è sempre più piccola e se non fosse per la torneistica personalmente non credo che spederi 10 euri per entrare. Le cose da vedere sono sepre le solite: qualche fumetto, vestiti e accessori per cosplay, pupazzi, videogiochi [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Dopo due giorni passati dentro ieri sera ero veramente devastato, ma la fiera ogni anno è sempre più piccola e se non fosse per la torneistica personalmente non credo che spederi 10 euri per entrare.</p>
<p><img class="alignnone size-full wp-image-3994" title="torino-comics-2012" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012.jpg" alt="" width="480" height="273" /></p>
<p>Le cose da vedere sono sepre le solite: qualche fumetto, vestiti e accessori per cosplay, pupazzi, videogiochi usati e qualche stand con giochi di ruolo e giochi da tavolo.</p>
<p>Dal mio personali punto di vista (torneistica a parte) l&#8217;unica cosa interessante sono i <a href="http://www.grifone.org/torino-comics/">tavoli con le dimostrazioni</a>&#8230;</p>
<p>Sotto un piccola selezione del panorama cosplay presente alla manifestrazione</p>

<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-01/' title='torino-comics-2012-01'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-01-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-01" title="torino-comics-2012-01" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-02/' title='torino-comics-2012-02'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-02-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-02" title="torino-comics-2012-02" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-03/' title='torino-comics-2012-03'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-03-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-03" title="torino-comics-2012-03" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-04/' title='torino-comics-2012-04'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-04-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-04" title="torino-comics-2012-04" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-05/' title='torino-comics-2012-05'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-05-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-05" title="torino-comics-2012-05" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-06/' title='torino-comics-2012-06'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-06-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-06" title="torino-comics-2012-06" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-07/' title='torino-comics-2012-07'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-07-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-07" title="torino-comics-2012-07" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-09/' title='torino-comics-2012-09'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-09-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-09" title="torino-comics-2012-09" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-10/' title='torino-comics-2012-10'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-10-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-10" title="torino-comics-2012-10" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-11/' title='torino-comics-2012-11'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-11-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-11" title="torino-comics-2012-11" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-12/' title='torino-comics-2012-12'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-12-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-12" title="torino-comics-2012-12" /></a>
<a href='http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/torino-comics-2012-13/' title='torino-comics-2012-13'><img width="100" height="100" src="http://static.mavidacdn.in/wp-content/uploads/2012/04/torino-comics-2012-13-100x100.jpg" class="attachment-thumbnail" alt="torino-comics-2012-13" title="torino-comics-2012-13" /></a>

<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/">Torino Comics 2012 &#8211; Cosplay e BoardGame</a> was first posted on aprile 16, 2012 at 9:47 am.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/EbGh59VI-eaGPKetYZCcA1YS8G0/0/da"><img src="http://feedads.g.doubleclick.net/~a/EbGh59VI-eaGPKetYZCcA1YS8G0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/EbGh59VI-eaGPKetYZCcA1YS8G0/1/da"><img src="http://feedads.g.doubleclick.net/~a/EbGh59VI-eaGPKetYZCcA1YS8G0/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=072-CWS1hRU:hcOUVT46lE0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=072-CWS1hRU:hcOUVT46lE0:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/072-CWS1hRU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/04/16/torino-comics-2012-cosplay-e-boardgame/</feedburner:origLink></item>
		<item>
		<title>WordPress: strumenti per il Debug</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/OIIYyyy_DBg/</link>
		<comments>http://maurizio.mavida.com/2012/03/23/wordpress-strumenti-per-il-debug/#comments</comments>
		<pubDate>Fri, 23 Mar 2012 08:51:10 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[develop]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3656</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comInizio citando me stesso: &#8220;E&#8217; molto semplice iniziare a sviluppare template e plugin per WordPress ma è altrettando semplice scrivere del codice sporco e poco performante&#8221; &#160; Questo per dire che oltre alle &#8220;best practice&#8221; come il disaccoppiamento, l&#8217;utilizzo della cache o l&#8217;inclusione di file solo necessari spesso serve un aiuto per [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Inizio citando me stesso: &#8220;<em>E&#8217; molto semplice iniziare a sviluppare template e plugin per WordPress ma è altrettando semplice scrivere del codice sporco e poco performante</em>&#8221;</p>
<p><img class="alignnone size-large wp-image-3949" title="wordpress-strumenti-debug" src="http://static.mavidacdn.in/wp-content/uploads/2012/03/wordpress-strumenti-debug-480x155.png" alt="" width="480" height="155" /></p>
<p>&nbsp;</p>
<p>Questo per dire che oltre alle &#8220;best practice&#8221; come il disaccoppiamento, l&#8217;utilizzo della cache o l&#8217;inclusione di file solo necessari spesso serve un aiuto per capire dove stiamo sbagliano e/o possiamo migliorare.</p>
<p>Questo è il motivo per il quale nella mia &#8220;cassetta degli <del>attrezzi</del> plugins&#8221; ci sono alcuni plugin che in più di un&#8217;occasione si sono rivelati molto molto utili.</p>
<p>Se non li conoscete ancora installate e provate (nb. provateli in locale o comunque sul vostro ambiente di sviluppo e non  produzione perchè ovviamente aggiungono ulteriore <a href="http://it.wikipedia.org/wiki/Overhead"><strong>overhead</strong></a> )</p>
<ul>
<li><a href="http://wordpress.org/extend/plugins/debug-bar/">DebugBar</a></li>
<li><a href="http://wordpress.org/extend/plugins/debug-bar-extender/">Debug Bar Extender</a></li>
<li><a href="http://wordpress.org/extend/plugins/debug-queries/">Debug Queries</a></li>
<li><a href="http://wordpress.org/extend/plugins/debug-objects/">Debug Objects</a></li>
<li><a href="http://wordpress.org/extend/plugins/wp-system-health/">System health</a></li>
</ul>
<p>&nbsp;</p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/03/23/wordpress-strumenti-per-il-debug/">WordPress: strumenti per il Debug</a> was first posted on marzo 23, 2012 at 9:51 am.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/Ta_2g_la_9UFl09Mz9Sqs1Wygtk/0/da"><img src="http://feedads.g.doubleclick.net/~a/Ta_2g_la_9UFl09Mz9Sqs1Wygtk/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Ta_2g_la_9UFl09Mz9Sqs1Wygtk/1/da"><img src="http://feedads.g.doubleclick.net/~a/Ta_2g_la_9UFl09Mz9Sqs1Wygtk/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=OIIYyyy_DBg:GCDFwIFE_6E:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=OIIYyyy_DBg:GCDFwIFE_6E:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/OIIYyyy_DBg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/03/23/wordpress-strumenti-per-il-debug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/03/23/wordpress-strumenti-per-il-debug/</feedburner:origLink></item>
		<item>
		<title>Modena Play 2012</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/eveamm1V9oI/</link>
		<comments>http://maurizio.mavida.com/2012/03/22/modena-play-2012/#comments</comments>
		<pubDate>Thu, 22 Mar 2012 13:29:02 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[segnalazioni]]></category>
		<category><![CDATA[cosplay]]></category>
		<category><![CDATA[dominion]]></category>
		<category><![CDATA[giochi da tavolo]]></category>
		<category><![CDATA[modena play]]></category>
		<category><![CDATA[stone age]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3935</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comDa qualche tempo la mia vita sociale &#8220;extralavorativa&#8221; si è arricchita di stimolanti passatemi quali sono i giochi da tavolo &#8220;moderni&#8221; (vedi Dominion, Puerto Rico, Stone Age). Non potevamo quini rinunciare ad un viaggetto verso Modena per provare le novità che verranno presentate alla PLAY 2012. Tra Cosplay e dimostrazioni varie, questa [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Da qualche tempo la mia vita sociale &#8220;<em>extralavorativa</em>&#8221; si è arricchita di stimolanti passatemi quali sono i giochi da tavolo &#8220;<em>moderni</em>&#8221; (vedi <a href="http://boardgamegeek.com/boardgame/36218/dominion"><strong>Dominion</strong></a>, <a href="http://boardgamegeek.com/boardgame/3076/puerto-rico"><strong>Puerto Rico</strong></a>, <a href="http://boardgamegeek.com/boardgame/34635/stone-age"><strong>Stone Age</strong></a>).</p>
<p>Non potevamo quini rinunciare ad un viaggetto verso <strong>Modena</strong> per provare le novità che verranno presentate alla <a href="http://www.play-modena.it/"><strong>PLAY 2012. </strong></a></p>
<p><a href="http://www.play-modena.it/"><img class="alignnone  wp-image-3938" title="modena-play-2012-banner" src="http://static.mavidacdn.in/wp-content/uploads/2012/03/modena-play-2012-banner.jpg" alt="" width="480" height="85" /></a></p>
<p>Tra <strong><a href="http://it.wikipedia.org/wiki/Cosplay">Cosplay</a></strong> e dimostrazioni varie, questa volta parteciperemo anche al <a href="http://www.play-modena.it/?eventi=torneo-dominion-homo-ludens">torneo</a> di qualificazione di <strong>Dominion</strong>. Si accettano scomesse.</p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/03/22/modena-play-2012/">Modena Play 2012</a> was first posted on marzo 22, 2012 at 2:29 pm.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/iVp0PouN0uDezyL0-x3rFoLUWxU/0/da"><img src="http://feedads.g.doubleclick.net/~a/iVp0PouN0uDezyL0-x3rFoLUWxU/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/iVp0PouN0uDezyL0-x3rFoLUWxU/1/da"><img src="http://feedads.g.doubleclick.net/~a/iVp0PouN0uDezyL0-x3rFoLUWxU/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=eveamm1V9oI:bwMP6B16V8M:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=eveamm1V9oI:bwMP6B16V8M:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/eveamm1V9oI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/03/22/modena-play-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/03/22/modena-play-2012/</feedburner:origLink></item>
		<item>
		<title>PHP.TO.START 2012</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/GeBwqNsw640/</link>
		<comments>http://maurizio.mavida.com/2012/03/21/php-to-start-2012/#comments</comments>
		<pubDate>Wed, 21 Mar 2012 11:17:50 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[segnalazioni]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[PHP.TO.START]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3899</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comIl PHP.TO.START è una conferenza sul linguaggio open source PHP che si tiene ogni anno a Torino. La conferenza è organizzata dall&#8217;associazione Indigeni Digitali, dal PHP User Group Torino e da Skuola.net Alle 16.00 presento un talk: &#8220;WordPress &#8211; l&#8217;abc per gli sviluppatori&#8221;. Queste le slide: update: è bello vedere che qualcuno [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Il <strong>PHP.TO.START</strong> è una conferenza sul linguaggio <em>open source</em> <a href="http://www.php.net/">PHP</a> che si tiene ogni anno a Torino. La conferenza è organizzata dall&#8217;associazione <a href="http://blog.indigenidigitali.com/">Indigeni Digitali</a>, dal <a href="http://torino.grusp.org/">PHP User Group Torino</a> e da <a href="http://www.skuola.net/">Skuola.net</a></p>
<p><img class="alignnone size-full wp-image-3902" title="php-to-start-2012" src="http://static.mavidacdn.in/wp-content/uploads/2012/03/php-to-start-2012.png" alt="" width="480" height="129" /></p>
<p>Alle 16.00 <a href="http://www.phptostart.it/programma.html">presento</a> un talk: &#8220;<strong>WordPress</strong> &#8211; l&#8217;abc per gli sviluppatori&#8221;.</p>
<p>Queste le slide:</p>
<p><iframe src="http://www.slideshare.net/slideshow/embed_code/12102584" width="480" height='400' frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe> </p>
<p><strong>update:</strong><br />
è bello vedere che qualcuno ha addirittura preso appunti su quanto detto&#8230;<br />
su <a href="http://www.gianarb.it/blog/php-to-start-wordpress-per-sviluppatori/">gianarb.it</a> un piccolo riassunto delle cose dette</p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2012/03/21/php-to-start-2012/">PHP.TO.START 2012</a> was first posted on marzo 21, 2012 at 12:17 pm.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/qG18PPd7i8H9D-c7a8v4afuVSBA/0/da"><img src="http://feedads.g.doubleclick.net/~a/qG18PPd7i8H9D-c7a8v4afuVSBA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/qG18PPd7i8H9D-c7a8v4afuVSBA/1/da"><img src="http://feedads.g.doubleclick.net/~a/qG18PPd7i8H9D-c7a8v4afuVSBA/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=GeBwqNsw640:7OzqC2bc_HY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=GeBwqNsw640:7OzqC2bc_HY:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/GeBwqNsw640" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2012/03/21/php-to-start-2012/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2012/03/21/php-to-start-2012/</feedburner:origLink></item>
		<item>
		<title>Finalmente è arrivato WordPress 3.1</title>
		<link>http://feedproxy.google.com/~r/mauriziopelizzone/~3/zlErEeTQhlY/</link>
		<comments>http://maurizio.mavida.com/2011/02/24/finalmente-e-arrivato-wordpress-3-1/#comments</comments>
		<pubDate>Wed, 23 Feb 2011 23:49:10 +0000</pubDate>
		<dc:creator>Maurizio Pelizzone</dc:creator>
				<category><![CDATA[wordpress]]></category>
		<category><![CDATA[capability_type]]></category>
		<category><![CDATA[custom post type]]></category>
		<category><![CDATA[show_in_menu]]></category>
		<category><![CDATA[wordpress taxonomies]]></category>

		<guid isPermaLink="false">http://maurizio.mavida.com/?p=3816</guid>
		<description><![CDATA[Leggi l'originale su http://maurizio.mavida.comDa poche ore è disponibile il download dell&#8217;ultima versione stabile di WordPress. Parecchie le novità ad anche se c&#8217;è chi dice che non sia nulla di rivoluzionario io non la penso così.. Il changelog è bello corposo ed una lettura attenta evidenza che per chi sviluppa con Custom Post Type e tassonomie [...]]]></description>
			<content:encoded><![CDATA[<p>Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><p><br /><p>Da poche ore è disponibile il <strong><a href="http://wordpress.org/download/">download</a></strong> dell&#8217;ultima versione stabile di <strong><a href="http://maurizio.mavida.com/categorie/wordpress/">WordPress</a></strong>.<br />
Parecchie le novità ad anche se c&#8217;è chi dice che <a href="http://blog.html.it/15/02/2011/le-novita-di-wordpress-31/">non sia nulla di rivoluzionario</a> io non la penso così..</p>
<p><a href="http://wordpress.org/download/"><img class="alignnone size-full wp-image-3817" title="wordpress-3.1" src="http://static.mavidacdn.in/wp-content/uploads/2011/02/wordpress-3.1.gif" alt="" width="480" height="180" /></a></p>
<p>Il <strong><a href="http://codex.wordpress.org/Version_3.1">changelog</a></strong> è bello corposo ed una lettura attenta evidenza che per chi sviluppa con <a href="http://maurizio.mavida.com/2010/08/25/wordpress-usare-meglio-i-custom-post-types/"><strong>Custom Post Type</strong></a> e <strong>tassonomie</strong> i miglioramenti sono parechi.</p>
<p>In particolare avremo la possibilità di fare <a href="http://codex.wordpress.org/Function_Reference/query_posts#Taxonomy_Parameters">query con tassonomie multiple</a> (cosa che prima era possibile solo con <a href="http://wordpress.org/extend/plugins/query-multiple-taxonomies/">questo plugin</a>) e di definire permessi, menu ed etichette durante la <a href="http://codex.wordpress.org/Function_Reference/register_post_type">registrazione di un nuovo Custom Post Type</a> (parametri capability_type, show_in_menu e menu_name ).</p>
<p>Altra grossa novità sono i <strong><a href="http://codex.wordpress.org/Post_Formats">post_format</a></strong> che ci permetteranno di personalizzare la visualizzazione dei contenuti.</p>
<p>Per tutto il resto leggete <a href="http://codex.wordpress.org/Version_3.1">qui</a>, <a href="http://wordpress.org/news/2011/02/threeone/">qui</a> e <a href="http://www.wpbeginner.com/news/whats-coming-in-wordpress-3-1-features/">qui</a>.</p>
<p>Bene, adesso fate un bel respiro ad andate ad fare l&#8217;update&#8230;</p>
<hr style="border-top:black solid 1px" />Leggi l'originale su <a href="http://maurizio.mavida.com">http://maurizio.mavida.com</a><br /><a href="http://maurizio.mavida.com/2011/02/24/finalmente-e-arrivato-wordpress-3-1/">Finalmente è arrivato WordPress 3.1</a> was first posted on febbraio 24, 2011 at 12:49 am.<br />
<p><a href="http://feedads.g.doubleclick.net/~a/IZs2m9fjwCmUs6oZfiWQH6YzUY0/0/da"><img src="http://feedads.g.doubleclick.net/~a/IZs2m9fjwCmUs6oZfiWQH6YzUY0/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/IZs2m9fjwCmUs6oZfiWQH6YzUY0/1/da"><img src="http://feedads.g.doubleclick.net/~a/IZs2m9fjwCmUs6oZfiWQH6YzUY0/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=zlErEeTQhlY:ajJVF_KcJAo:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/mauriziopelizzone?a=zlErEeTQhlY:ajJVF_KcJAo:ANkz6nJbUoM"><img src="http://feeds.feedburner.com/~ff/mauriziopelizzone?d=ANkz6nJbUoM" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/mauriziopelizzone/~4/zlErEeTQhlY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://maurizio.mavida.com/2011/02/24/finalmente-e-arrivato-wordpress-3-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://maurizio.mavida.com/2011/02/24/finalmente-e-arrivato-wordpress-3-1/</feedburner:origLink></item>
	</channel>
</rss>

