<?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>CMS Italia [BETA] &#187; Tutorial &amp; How To</title>
	<atom:link href="http://www.cms-italia.org/category/come-fare-per/feed" rel="self" type="application/rss+xml" />
	<link>http://www.cms-italia.org</link>
	<description>Theme Free &#38; PRO for WordPress, Frog CMS, Joomla</description>
	<lastBuildDate>Thu, 13 Oct 2011 13:48:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Come Limitare il Numero di Parole in un Post</title>
		<link>http://www.cms-italia.org/come-fare-per/come-limitare-il-numero-di-parole-in-un-post-169.html</link>
		<comments>http://www.cms-italia.org/come-fare-per/come-limitare-il-numero-di-parole-in-un-post-169.html#comments</comments>
		<pubDate>Mon, 03 Jan 2011 06:00:49 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[Tutorial & How To]]></category>
		<category><![CDATA[blog multi autore]]></category>
		<category><![CDATA[limitare parole]]></category>

		<guid isPermaLink="false">http://www.cms-italia.org/?p=169</guid>
		<description><![CDATA[Una utile funzione da inserire nel functions.php del template utilizzato per limitare il numero di parole da poter far pubblicare su un singolo post per gli autori che scrivono sul tuo blog. function maxWord($content){ global $post; $num = 100; //indica il numero massimo di parole da utilizzare sul singolo post $content = $post-&#62;post_content; if (str_word_count($content) [...]]]></description>
			<content:encoded><![CDATA[<p>Una utile funzione da inserire nel <strong>functions.php</strong> del template utilizzato per limitare il numero di parole da poter far pubblicare su un singolo post per gli autori che scrivono sul tuo blog.</p>
<pre class="brush: php; title: ;">
function maxWord($content){
 global $post;
 $num = 100; //indica il numero massimo di parole da utilizzare sul singolo post
 $content = $post-&gt;post_content;
 if (str_word_count($content) &gt;  $num)
 wp_die( __('Errore: your post is below the minimum word count.') );
}
add_action('publish_post', 'maxWord');
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.cms-italia.org/come-fare-per/come-limitare-il-numero-di-parole-in-un-post-169.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Personalizzare il Login Senza Plugin</title>
		<link>http://www.cms-italia.org/come-fare-per/personalizzare-il-login-senza-plugin-161.html</link>
		<comments>http://www.cms-italia.org/come-fare-per/personalizzare-il-login-senza-plugin-161.html#comments</comments>
		<pubDate>Sun, 02 Jan 2011 01:09:49 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[Tutorial & How To]]></category>
		<category><![CDATA[custom login]]></category>
		<category><![CDATA[image login]]></category>
		<category><![CDATA[tips wordpress]]></category>
		<category><![CDATA[wordpress custom]]></category>
		<category><![CDATA[wordpress login]]></category>

		<guid isPermaLink="false">http://www.cms-italia.org/?p=161</guid>
		<description><![CDATA[Esistono svariati plugin che permettono di personalizzare la schermata di accesso al pannello di controllo di WordPress. Senza appesantire WordPress dovendo installare nuovi plugin, si può cambiare l&#8217; immagine attraverso una funzione da inserire nel functions.php del template che stiamo utilizzando (se tal file non esiste basta crearlo e caricarlo nella directory del template in [...]]]></description>
			<content:encoded><![CDATA[<p>Esistono svariati plugin che permettono di personalizzare la schermata di accesso al pannello di controllo di WordPress.</p>
<div id="attachment_164" class="wp-caption aligncenter" style="width: 365px"><img class="size-full wp-image-164" title="WordPress Custom Login" src="http://www.cms-italia.org/wp-content/uploads/2010/12/login_wordpress.png" alt="WordPress Login Page" width="355" height="342" /><p class="wp-caption-text">WordPress Login</p></div>
<p>Senza appesantire WordPress dovendo installare nuovi plugin, si può cambiare l&#8217; immagine attraverso una funzione da inserire nel functions.php del template che stiamo utilizzando (se tal file non esiste basta crearlo e caricarlo nella directory del template in uso):</p>
<pre class="brush: php; title: ;">
function my_custom_login_logo() {
    echo '&lt;style type=&quot;text/css&quot;&gt;
        h1 a { background-image:url('.get_bloginfo('template_directory').'/images/custom-login-logo.gif) !important; }
    &lt;/style&gt;';
}

add_action('login_head', 'my_custom_login_logo');
</pre>
<p>Nello script è indicato <strong><em>&#8220;/images/custom-login-logo.gif&#8221;</em></strong></p>
<ul>
<li>/images/ è la sotto directory che si trova all&#8217; interno della directory del template in uso;</li>
<li>custom-login-logo.gif : è il nome dell&#8217; immagine che preventivamente bisognerà caricare;</li>
</ul>
<p>NOTA: L&#8217; immagine del logo WordPress nella pagina del login è di 310*70 pixel</p>
]]></content:encoded>
			<wfw:commentRss>http://www.cms-italia.org/come-fare-per/personalizzare-il-login-senza-plugin-161.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Come Creare Automaticamente Post WordPress Senza Aggregatore</title>
		<link>http://www.cms-italia.org/come-fare-per/come-creare-automaticamente-post-wordpress-senza-aggregatore-154.html</link>
		<comments>http://www.cms-italia.org/come-fare-per/come-creare-automaticamente-post-wordpress-senza-aggregatore-154.html#comments</comments>
		<pubDate>Sat, 15 May 2010 17:33:41 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[Tutorial & How To]]></category>
		<category><![CDATA[automatic post]]></category>
		<category><![CDATA[contenuti automatici]]></category>
		<category><![CDATA[creare contenuti]]></category>
		<category><![CDATA[php post wp. wordpress post]]></category>
		<category><![CDATA[post]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.cms-italia.org/?p=154</guid>
		<description><![CDATA[Come popolare di post un WordPress completamente vuoto? E&#8217; stata una richiesta (indiretta) fattami recentemente da un Cliente. Riformulo meglio la richiesta per far capire il problema che mi si è posto. Problema Il Cliente aveva quasi due migliaia di foto che voleva ripubblicare in maniera da avere: i post dovevano essere inglobati in una [...]]]></description>
			<content:encoded><![CDATA[<p>Come popolare di post un WordPress completamente vuoto? E&#8217; stata una richiesta (indiretta) fattami recentemente da un Cliente.</p>
<p>Riformulo meglio la richiesta per far capire il problema che mi si è posto.</p>
<p><strong>Problema</strong></p>
<p>Il Cliente aveva quasi due migliaia di foto che voleva ripubblicare in maniera da avere:</p>
<ul>
<li>i post dovevano essere inglobati in una data categoria;</li>
<li>1 post al giorno;</li>
<li>5 foto per post;</li>
<li>titolo uguale per tutti i post con  l&#8217; agginta del numero sequenziale di ogni post;</li>
<li>contenuto testual standard per ogni post;</li>
<li>i post devono essere programmati e iniziati a pubblicare da una certa data (a partire da gg/mm/AAAA);</li>
</ul>
<p><strong>Soluzione creativa</strong></p>
<p>Mi è venuto in soccorso la funzionalità <strong>Importa</strong> di <strong>WordPress</strong> (<em>Strumenti -&gt; Importa</em>)</p>
<p>Prima di tutto mi sono &#8220;procurato&#8221; un modello su cui creare il nuovo Feed da importare e quindi ho utilizzato la funzione <strong>Esporta</strong> da un blog già attivo ed ho trovato la struttura su cui creare ed implementare i contenuti automaticamente creati con il codice php seguente.</p>
<p>Ho creato un file php che dato i seguenti valori alle relative variabili:</p>
<ul>
<li><em>url</em> del blog alla variabile <strong>$url</strong>;</li>
<li><em>numero di foto</em> alla variabile <strong>$fototot</strong>;</li>
<li><em>data di inizio pubblicazione</em> alla variabile <strong>$startdate</strong>;</li>
<li><em>url dell&#8217; archivio immagini</em> alla variabile <strong>$dirimg</strong>;</li>
</ul>
<p>&#8230;quando lancio lo script, alla fine dello stesso c&#8217;è il comando che vada a scrivere il tutto su un file chiamato <strong>autoxml.xml</strong></p>
<p><strong>NOTA</strong>: leggere attentamente ANCHE le annotazioni all&#8217; interno del file php.</p>
<p><span style="color: #800000;">(mi serviva una soluzione veloce e pratica quindi lo script seguente è altamente grezzo e migliorabile ma la sua sporca funzione l&#8217; ha fatta &#8211; esempio di implementazione utile: aggiunta delle variabili globali come per il &#8220;titolo del blog&#8221; o quello della &#8220;categoria&#8221;&#8230; che nel seguente codice bisognerà editare manualmente su varie parti dello script)</span></p>
<p><span style="color: #800000;">Visto lo script &#8220;altamente primitivo&#8221; non mi assumo nessuna responsabilità sull&#8217; uso improprio o eventuali provblemi dati dallo stesso.</span></p>
<pre class="brush: php; title: ;">

&lt;?php
//Global var

 $url = &quot;www.mio-dominio.com/blog&quot;; // non va aggiunto lo slash in ultimo
 $startdate = strtotime(&quot;20-05-2010&quot;); // la data è nel formato giorno-mese-anno
 $fototot = 1500; // questo è la quantità di foto totale da pubblicare - ci pensa lo script a suddividerli in tot post
 $dirimg = &quot;http://www.mio-dominio.com/wp-content/galleria/foto-&quot;; // il path + il prefisso del nome delle singole foto - le singole foto dovranno essere nominate come foto-0000.jpg

 echo &quot;&lt;?xml version=\&quot;1.0\&quot; encoding=\&quot;UTF-8\&quot;?&gt;&quot;;
?&gt;

&lt;!-- generator=&quot;WordPress/2.9.2&quot; created=&quot;2010-05-12 13:54&quot;--&gt;
&lt;rss version=&quot;2.0&quot;
 xmlns:excerpt=&quot;http://wordpress.org/export/1.0/excerpt/&quot;
 xmlns:content=&quot;http://purl.org/rss/1.0/modules/content/&quot;
 xmlns:wfw=&quot;http://wellformedweb.org/CommentAPI/&quot;
 xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot;
 xmlns:wp=&quot;http://wordpress.org/export/1.0/&quot;
&gt;

&lt;channel&gt;
 &lt;title&gt;Titolo del tuo blog&lt;/title&gt;
 &lt;link&gt;http://&lt;?php echo $url; ?&gt;&lt;/link&gt;
 &lt;description&gt;Qui viene segnalato la descrizione del blog&lt;/description&gt;
 &lt;pubDate&gt;Tue, 11 May 2010 19:44:20 +0000&lt;/pubDate&gt;
 &lt;generator&gt;http://wordpress.org/?v=2.9.2&lt;/generator&gt;
 &lt;language&gt;en&lt;/language&gt;
 &lt;wp:wxr_version&gt;1.0&lt;/wp:wxr_version&gt;
 &lt;wp:base_site_url&gt;http://&lt;?php echo $url; ?&gt;&lt;/wp:base_site_url&gt;
 &lt;wp:base_blog_url&gt;http://&lt;?php echo $url; ?&gt;&lt;/wp:base_blog_url&gt;
 &lt;wp:category&gt;&lt;wp:category_nicename&gt;archivio-foto&lt;/wp:category_nicename&gt;&lt;wp:category_parent&gt;&lt;/wp:category_parent&gt;&lt;wp:cat_name&gt;&lt;![CDATA[Archivio foto]]&gt;&lt;/wp:cat_name&gt;&lt;/wp:category&gt;

&lt;?php
 $conta = 0;
?&gt;

&lt;item&gt;
 &lt;title&gt;Foto che sto pubblicando oggi - puntata n° 0&lt;/title&gt;
 &lt;link&gt;http://&lt;?php echo $url .&quot;/?p=&quot;. (15000); ?&gt;&lt;/link&gt;
 &lt;pubDate&gt;&lt;?php echo (date('D, d M Y', ($startdate))); ?&gt; 11:00:00 +0000&lt;/pubDate&gt;
 &lt;dc:creator&gt;&lt;![CDATA[Davide Tommasin]]&gt;&lt;/dc:creator&gt;
 &lt;category&gt;&lt;![CDATA[Archivio foto]]&gt;&lt;/category&gt;
 &lt;category domain=&quot;category&quot; nicename=&quot;archivio-foto&quot;&gt;&lt;![CDATA[Archivio foto]]&gt;&lt;/category&gt;

 &lt;guid isPermaLink=&quot;false&quot;&gt;http://&lt;?php echo $url .&quot;/?p=&quot;. (15000); ?&gt;&lt;/guid&gt;
 &lt;description&gt;&lt;/description&gt;
 &lt;content:encoded&gt;

 Ecco le &lt;b&gt;5 foto&lt;/b&gt; di oggi: (qui potresti pensare di inserire tranquillamente codice html senza problemi)

&lt;?php
 for ($num=0; $num&lt;$fototot; $num++)
 {
 if ($conta == 5) // questo numero dividerà il valore della variabile fototot e quindi si saprà quanti post verranno creati
 {
 $giorno++;
?&gt;
 &lt;/content:encoded&gt;
 &lt;excerpt:encoded&gt;&lt;/excerpt:encoded&gt;
 &lt;wp:post_id&gt;&lt;?php echo  (15000+$giorno-1); ?&gt;&lt;/wp:post_id&gt;

 &lt;wp:post_date&gt;&lt;?php echo (date('Y-m-d', ($startdate+86400*$giorno-1))); ?&gt; 11:00:06&lt;/wp:post_date&gt;
 &lt;wp:post_date_gmt&gt;&lt;?php echo (date('Y-m-d', ($startdate+86400*$giorno-1))); ?&gt; 10:00:06&lt;/wp:post_date_gmt&gt;
 &lt;wp:comment_status&gt;open&lt;/wp:comment_status&gt;
 &lt;wp:ping_status&gt;open&lt;/wp:ping_status&gt;
 &lt;wp:post_name&gt;Foto che sto pubblicando oggi - &lt;?php echo ($giorno-1); ?&gt;&lt;/wp:post_name&gt;
 &lt;wp:status&gt;publish&lt;/wp:status&gt;
 &lt;wp:post_parent&gt;0&lt;/wp:post_parent&gt;
 &lt;wp:menu_order&gt;0&lt;/wp:menu_order&gt;
 &lt;wp:post_type&gt;post&lt;/wp:post_type&gt;
 &lt;wp:post_password/&gt;
 &lt;wp:is_sticky&gt;0&lt;/wp:is_sticky&gt;

 &lt;wp:postmeta&gt;
 &lt;wp:meta_key&gt;_edit_last&lt;/wp:meta_key&gt;
 &lt;wp:meta_value&gt;1&lt;/wp:meta_value&gt;
 &lt;/wp:postmeta&gt;
&lt;/item&gt;

&lt;item&gt;
 &lt;title&gt;Foto che sto pubblicando oggi - &lt;?php echo $giorno; ?&gt;&lt;/title&gt;
 &lt;link&gt;http://&lt;?php echo $url .&quot;/?p=&quot;. (15000+$giorno); ?&gt;&lt;/link&gt;
 &lt;pubDate&gt;&lt;?php echo (date('D, d M Y', ($startdate+86400*$giorno))); ?&gt; 11:00:00 +0000&lt;/pubDate&gt;
 &lt;dc:creator&gt;&lt;![CDATA[Davide Tommasin]]&gt;&lt;/dc:creator&gt;
 &lt;category&gt;&lt;![CDATA[Archivio foto]]&gt;&lt;/category&gt;
 &lt;category domain=&quot;category&quot; nicename=&quot;archivio-foto&quot;&gt;&lt;![CDATA[Archivio foto]]&gt;&lt;/category&gt;
 &lt;guid isPermaLink=&quot;false&quot;&gt;http://&lt;?php echo $url .&quot;/?p=&quot;. (15000+$giorno); ?&gt;&lt;/guid&gt;
 &lt;description&gt;&lt;/description&gt;
 &lt;content:encoded&gt;
&lt;pre&gt; Ecco le &lt;b&gt;5 foto&lt;/b&gt; di oggi: (qui potresti pensare di inserire tranquillamente codice html senza problemi)&lt;/pre&gt;
&lt;?php
 $conta = 0;
 }

 ($num+1);
?&gt;

 &lt;a href=&quot;&lt;?php echo $dirimg; if ($num&lt;10) echo ('000'); elseif ($num&lt;100) echo ('00'); elseif ($num&lt;1000) echo ('0'); echo $num; ?&gt;.jpg&quot; title=&quot;Foto di Davide Tommasin&quot;&gt;
 &lt;img src=&quot;&lt;?php echo $dirimg; if ($num&lt;10) echo ('000'); elseif ($num&lt;100) echo ('00'); elseif ($num&lt;1000) echo ('0'); echo $num; ?&gt;.jpg&quot; alt =&quot;Foto di Davide Tommasin&quot; /&gt;
 &lt;/a&gt;
&lt;?php
 $conta++;
 }
?&gt;
 &lt;/content:encoded&gt;
 &lt;excerpt:encoded&gt;&lt;/excerpt:encoded&gt;
 &lt;wp:post_id&gt;15299&lt;/wp:post_id&gt;

 &lt;wp:post_date&gt;2011-03-07 11:00:06&lt;/wp:post_date&gt;
 &lt;wp:post_date_gmt&gt;2011-03-07 10:00:06&lt;/wp:post_date_gmt&gt;
 &lt;wp:comment_status&gt;open&lt;/wp:comment_status&gt;
 &lt;wp:ping_status&gt;open&lt;/wp:ping_status&gt;
 &lt;wp:post_name&gt;Foto pubblicate oggi&lt;/wp:post_name&gt;
 &lt;wp:status&gt;publish&lt;/wp:status&gt;
 &lt;wp:post_parent&gt;0&lt;/wp:post_parent&gt;
 &lt;wp:menu_order&gt;0&lt;/wp:menu_order&gt;
 &lt;wp:post_type&gt;post&lt;/wp:post_type&gt;
 &lt;wp:post_password/&gt;
 &lt;wp:is_sticky&gt;0&lt;/wp:is_sticky&gt;

 &lt;wp:postmeta&gt;
 &lt;wp:meta_key&gt;_edit_last&lt;/wp:meta_key&gt;
 &lt;wp:meta_value&gt;1&lt;/wp:meta_value&gt;
 &lt;/wp:postmeta&gt;
&lt;/item&gt;

&lt;/channel&gt;
&lt;/rss&gt;

&lt;?php
 // popolo la var autoxml.xml con il loop
 $myFile = &quot;autoxml.xml&quot;;
 $fh = fopen($myFile, 'a');
 fwrite($fh, $somecontent);
?&gt;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.cms-italia.org/come-fare-per/come-creare-automaticamente-post-wordpress-senza-aggregatore-154.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Aggiornare Post Slug Con Query e Script PHP</title>
		<link>http://www.cms-italia.org/come-fare-per/aggiornare-post-slug-con-query-e-script-php-145.html</link>
		<comments>http://www.cms-italia.org/come-fare-per/aggiornare-post-slug-con-query-e-script-php-145.html#comments</comments>
		<pubDate>Thu, 08 Apr 2010 00:24:05 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[Tutorial & How To]]></category>
		<category><![CDATA[database update]]></category>
		<category><![CDATA[import wordpress]]></category>
		<category><![CDATA[permalink]]></category>
		<category><![CDATA[query]]></category>
		<category><![CDATA[slug]]></category>
		<category><![CDATA[update slug]]></category>

		<guid isPermaLink="false">http://www.cms-italia.org/?p=145</guid>
		<description><![CDATA[Come ricostruire i permalink se lo slug dei singoli post se questo non esiste? Iniziando a fare un po di luce vado a spiegare una situazione in cui mi sono ritrovato. Tempo fa ho dovuto passare 4 anni di contenuti e news da un database creato su misura importandoli attraverso varie query nella struttura del [...]]]></description>
			<content:encoded><![CDATA[<p>Come ricostruire i <a title="Primi su Google con WordPress" href="http://www.wordpress-it.it/wiki/Main/UsingPermalink">permalink</a> se lo <a title="WordPress post slug" href="http://codex.wordpress.org/Glossary#Post_Slug">slug</a> dei singoli post se questo non esiste?</p>
<p>Iniziando a fare un po di luce vado a spiegare una situazione in cui mi sono ritrovato.</p>
<p>Tempo fa ho dovuto passare 4 anni di contenuti e news da un database creato su misura importandoli attraverso varie query nella struttura del database di WordPress, visto che nella nuova versione del sito avevo concordato con il Cliente di utilizzare WordPress per vari motivi.</p>
<p>Dopo aver messo online il sito ed attivato i permalink su WordPress, ecco che qualche tempo dopo i <a title="Strumenti SEO Google" href="www.google.com/webmasters/tools?hl=it">tool per webmaster di Google</a> mi segnalavano che c&#8217;era un buon 80% di link che indirizzavano sulla pagina 404 ovvero risorsa non trovata.</p>
<p>Dopo una rapida occhiata al <a title="Gerarchia database wordpress" href="http://codex.wordpress.org/Database_Description">database di WP</a>, precisamente alla tabella <strong>wp_posts</strong>, mi sono accorto che proprio quel&#8217; 80% dei post avevano il campo <strong>post_name</strong> vuoto.</p>
<p><strong>NOTA</strong>: il post_name è il campo che permette la creazione del link per raggiungere un certo post e se questo campo è vuoto il permalink a quel dato post risulterà errato e redirezionerà appunto a una pagina 404.</p>
<p>Mi sono accorto che c&#8217; erano più di 2 migliaia di articoli e news con il campo nullo e iniziare a manina a passarmi uno per uno a personalizzare lo slug sarebbe stato una cosa da pazzi ed ecco che mi viene in soccorso uno script php che si interfaccia al database, va in cerca di tutti i post con il campo post_name nullo, cioè vuoto, e lo riempie automaticamente&#8230; in meno di 1 secondo ho ripristinato la situazione e l&#8217; indicizzazione su Google è tornata alla normalità.</p>
<p><span style="color: #800000;">Prima di utilizzare lo script seguente accertati di avere il BACKUP del database per evitare spiacevoli inconvenienti.</span></p>
<p>Ecco lo script php da richiamare attraverso il browser:</p>
<pre class="brush: php; title: ;">&lt;?php
$dbhost = 'localhost';
$dbuser = 'utente';
$dbpass = 'password';
$dbname = 'nome_database';

$sql = 'SELECT ID, post_title
 FROM wp_posts
 WHERE post_status = &quot;publish&quot;
 and post_name = &quot; &quot;
 order by ID asc';

$db = mysql_connect($dbhost, $dbuser, $dbpass) or die('Could not connect: ' . mysql_error());
mysql_select_db($dbname);

$result = mysql_query($sql) or die('Query failed: ' . mysql_error());
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
 $id = $row['ID'];
 $title = $row['post_title'];

 $title = trim($title);
 $title = strtolower($title);
 $title = str_replace(&quot; &quot;, &quot;-&quot;, $title);
 $title = ereg_replace(&quot;[^a-z0-9-]&quot;, &quot;&quot;, $title);
 $title = ereg_replace(&quot;[-]+&quot;, &quot;-&quot;, $title);

 echo &quot;ID :{$row['ID']} &lt;br&gt;&quot; .
 &quot;post_title : {$row['post_title']} &lt;br&gt;&quot; .
 &quot;post_title : {$title} &lt;br&gt;&quot;;

 $sql_u = 'UPDATE `wp_posts` SET post_name = &quot;' . $title .'&quot;'
 .'WHERE ID = ' . $id;
 echo '&lt;br&gt;'.$sql_u;
 mysql_query($sql_u) or die('Query failed: ' . mysql_error());
}

mysql_close($db);

?&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.cms-italia.org/come-fare-per/aggiornare-post-slug-con-query-e-script-php-145.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Post In Rilievo Con Campi Personalizzati</title>
		<link>http://www.cms-italia.org/come-fare-per/post-in-rilievo-con-campi-personalizzati-140.html</link>
		<comments>http://www.cms-italia.org/come-fare-per/post-in-rilievo-con-campi-personalizzati-140.html#comments</comments>
		<pubDate>Sun, 04 Apr 2010 01:46:44 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[Tutorial & How To]]></category>
		<category><![CDATA[custom field]]></category>
		<category><![CDATA[customized loop]]></category>
		<category><![CDATA[loop personalizzato]]></category>
		<category><![CDATA[post in rilievo]]></category>
		<category><![CDATA[query wordpress]]></category>
		<category><![CDATA[wordpress loop]]></category>

		<guid isPermaLink="false">http://www.cms-italia.org/?p=140</guid>
		<description><![CDATA[Grazie alle query personalizzate ed alla personalizzazione del loop su WordPress è possibile far visualizzare i post di una data categoria che vogliamo mettere in rilievo utilizzando l&#8217; aggiunta di un campo personalizzato. Prendiamo per assunto che: la categoria abbia ID 5; al campo personalizzato daremo il nome di &#8220;rilievo&#8221; e il valore che dovrà [...]]]></description>
			<content:encoded><![CDATA[<p>Grazie alle query personalizzate ed alla personalizzazione del loop su WordPress <strong>è possibile far visualizzare i post di una data categoria che vogliamo mettere in rilievo</strong> utilizzando l&#8217; aggiunta di un <strong>campo personalizzato</strong>.</p>
<p>Prendiamo per assunto che:</p>
<ol>
<li> la <strong>categoria</strong> abbia <strong>ID 5</strong>;</li>
<li>al <strong>campo personalizzato</strong> daremo il nome di <strong>&#8220;rilievo&#8221;</strong> e il valore che dovrà assumere sarà <strong>&#8220;si&#8221;</strong> o <strong>&#8220;no&#8221;</strong>;</li>
<li>vogliamo far visualizzare gli ultimi 10 post con le su citate caratteristiche;</li>
</ol>
<p>Il loop da inserire per esmpio creando un template personalizzato da fornire ad una pagina ingloberà questa query:</p>
<pre class="brush: php; title: ;">&lt;?php global $wpdb;
global $post;
$querystr = &quot;
SELECT *
FROM $wpdb-&gt;posts as wpp
 INNER JOIN $wpdb-&gt;postmeta wpostmeta ON wpp.ID = wpostmeta.post_id
 INNER JOIN $wpdb-&gt;term_relationships ON (wpp.ID = $wpdb-&gt;term_relationships.object_id)
 INNER JOIN $wpdb-&gt;term_taxonomy ON ($wpdb-&gt;term_relationships.term_taxonomy_id = $wpdb-&gt;term_taxonomy.term_taxonomy_id)
 WHERE wpostmeta.meta_key = 'rilievo'
 AND wpp.post_status = 'publish'
 AND wpostmeta.meta_value = 'si'
 AND $wpdb-&gt;term_taxonomy.taxonomy = 'category'
 AND $wpdb-&gt;term_taxonomy.term_id IN(5)
 ORDER BY wpp.ID
 LIMIT 10&quot;;
 $pageposts = $wpdb-&gt;get_results($querystr);
?&gt;</pre>
<p>Il codice del loop che andremo ad utilizzare verrà inserito subito dopo alla query sopra citata:</p>
<pre class="brush: xml; title: ;">&lt;?php if ($pageposts): ?&gt;
&lt;?php foreach ($pageposts as $post): ?&gt;
&lt;?php setup_postdata($post); ?&gt;

 &lt;div&gt;
 &lt;h2&gt;&lt;a href=&quot;&lt;?php the_permalink() ?&gt;&quot; rel=&quot;bookmark&quot;&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h2&gt;
 &lt;p&gt;&lt;?php print string_limit_words(get_the_excerpt(), 16); ?&gt;...&lt;/p&gt;
 &lt;/div&gt;

 &lt;?php endforeach; ?&gt;
&lt;?php endif; ?&gt;</pre>
<p>Sia chiaro che con questo post non voglio dare la soluzione, ma una delle possibili idee per risolvere il problema e quindi se qualcuno volesse commentare o dire la sua i commenti sono aperti <img src='http://www.cms-italia.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><strong>NOTA</strong>: il codice è stato testato su <strong>WordPress 2.9.1</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.cms-italia.org/come-fare-per/post-in-rilievo-con-campi-personalizzati-140.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

