<?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>aNieto2K &#187; Wordpress</title>
	<atom:link href="http://www.anieto2k.com/category/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.anieto2k.com</link>
	<description>Desarrollo web, Wordpress, y alguna cosilla más</description>
	<lastBuildDate>Sun, 05 Feb 2012 10:15:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Pon la información del FTP en tu wp-config.php</title>
		<link>http://www.anieto2k.com/2011/01/03/pon-la-informacion-del-ftp-en-tu-wp-config-php/</link>
		<comments>http://www.anieto2k.com/2011/01/03/pon-la-informacion-del-ftp-en-tu-wp-config-php/#comments</comments>
		<pubDate>Mon, 03 Jan 2011 09:02:00 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[hacks]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=10151</guid>
		<description><![CDATA[Generalmente cuando actualizamos un plugin o una versión de WordPress (algo que últimamente es demasiado común) podemos optar por la cómoda opción de actualizar automáticamente mediante subida directa del fichero al FTP de tu servidor. Esta opción te solucita los datos de tu servidor para poder realizar la conexión. Si has instalado una versión de [...]]]></description>
			<content:encoded><![CDATA[Generalmente cuando actualizamos un plugin o una versión de WordPress (algo que últimamente es demasiado común) podemos optar por la cómoda opción de actualizar automáticamente mediante subida directa del fichero al FTP de tu servidor. Esta opción te solucita los datos de tu servidor para poder realizar la conexión. Si has instalado una versión de WordPress a alguien que no debe tener esos datos, estás obligado a ir actualizándole tu mismo los plugins, core,...

Para evitar esto, puedes usar <a href="http://www.anieto2k.com/2008/03/23/wp-configphp-un-fichero-para-gobernarlos-a-todos/">el fichero wp-config.php, que como ya vimos hace 2 años</a>, era la piedra angular de la configuración de tu WordPress. En él podrás <a href="http://digwp.com/2010/11/ftp-in-wpconfig/">incluir los datos de tu FTP</a> para que el usuario pueda actualizar sin problemas y sobretodo para que tu puedas vivir un poco más cómodo :D
<h3>Constantes en wp-config.php</h3>
Simplemente tendremos que guardar los datos en variables globales que el propio WordPress usará cuando las necesite.
<pre><code>define('FS_METHOD', 'ftpext'); // Método usado (</code>"direct", "ssh", "ftpext", o "ftpsockets")
<code>define('FTP_BASE', '/var/www/vhosts/chriscoyier.net/httpdocs/'); // Directorio base de tu FTP
define('FTP_USER', 'username'); // Username del FTP
define('FTP_PASS', 'password'); // Password del FTP
define('FTP_HOST', 'host'); // Ruta del Host del FTP
define('FTP_SSL', false); // Activar / Desactivar SSL de la conexión al FTP</code></pre>
Estas son las básicas que tu WordPress necesita para realizar la conexión, aunque disponemos de una serie más para personalizar más aún nuestra conexión:
<pre><code>define('FTP_CONTENT_DIR', '/path/to/wordpress/wp-content/'); // Ruta absoluta del directorio wp-content/ del FTP
define('FTP_PLUGIN_DIR ', '/path/to/wordpress/wp-content/plugins/'); // Ruta absoluta del directorio wp-content/plugins/ del FTP
define('FTP_PUBKEY', '/home/username/.ssh/id_rsa.pub'); // Ruta de las "public key" para conexiones SSH
define('FTP_PRIKEY', '/home/username/.ssh/id_rsa'); // Ruta de las "private key" para conexiones SSH
define('FS_CHMOD_DIR', (0755 &amp; ~ umask())); // Sobreescritura de permisos de directorio
define('FS_CHMOD_FILE', (0644 &amp; ~ umask())); // Sobreescritura de permisos de fichero
</code></pre>
Todo esto <a href="http://codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constants">está definido en Codex de WordPress</a>.<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2007/07/17/%c2%bfcomo-se-filtro-la-informacion-de-ferrari-a-mclaren/" rel="bookmark" title="Permanent Link: ¿Como se filtró la información de Ferrari a McLaren?">¿Como se filtró la información de Ferrari a McLaren?</a></li><li><a href="http://www.anieto2k.com/2008/07/16/reubicar-wp-content-y-wp-configphp-con-wordpress-26/" rel="bookmark" title="Permanent Link: Reubicar wp-content y wp-config.php con WordPress 2.6">Reubicar wp-content y wp-config.php con WordPress 2.6</a></li><li><a href="http://www.anieto2k.com/2008/04/24/anade-un-grado-mas-de-seguridad-a-tu-wordpress-25/" rel="bookmark" title="Permanent Link: Añade un grado más de seguridad a tu WordPress 2.5">Añade un grado más de seguridad a tu WordPress 2.5</a></li><li><a href="http://www.anieto2k.com/2007/11/20/vuelve-bitacoras-com/" rel="bookmark" title="Permanent Link: Vuelve Bitacoras.com!!!">Vuelve Bitacoras.com!!!</a></li><li><a href="http://www.anieto2k.com/2007/12/27/moolabeler-mejora-la-informacion-de-tus-imagenes/" rel="bookmark" title="Permanent Link: mooLabeler, mejora la información de tus imagenes.">mooLabeler, mejora la información de tus imagenes.</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2011/01/03/pon-la-informacion-del-ftp-en-tu-wp-config-php/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>WordPress Transients API, opciones que expiran en el tiempo</title>
		<link>http://www.anieto2k.com/2010/12/24/wordpress-transients-api-opciones-que-expieran-en-el-tiempo/</link>
		<comments>http://www.anieto2k.com/2010/12/24/wordpress-transients-api-opciones-que-expieran-en-el-tiempo/#comments</comments>
		<pubDate>Fri, 24 Dec 2010 18:20:39 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[hacks]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=10138</guid>
		<description><![CDATA[La gente de WordPress nos ofrece una API nueva para almacenar datos transitorios como hacíamos con la Options API pero especificando el tiempo que estos están disponibles. // Graba un transient set_transient($transient, $value, $expiration); // Obtenemos un transient get_transient($transient); // Borramos un transient delete_transient($transient); Básicamente se trata de una serie de funciones que nos permitirá [...]]]></description>
			<content:encoded><![CDATA[La gente de <a href="http://codex.wordpress.org/Transients_API">WordPress nos ofrece una API</a> nueva para almacenar datos transitorios como hacíamos con la <a href="http://codex.wordpress.org/Options_API">Options API</a> pero especificando el tiempo que estos están disponibles.
<pre><code><strong>// Graba un transient</strong>
set_transient($transient, $value, $expiration);

<strong>// Obtenemos un transient</strong>
get_transient($transient);

<strong>// Borramos un transient</strong>
delete_transient($transient);</code>
</pre>
Básicamente se trata de una serie de funciones que nos permitirá cachear datos en nuestras creaciones para WordPress. Una buena herramienta que nos permitirá mejorar el rendimiento de nuestras aplicaciones.
<h3>set_transient()</h3>
<ul>
	<li><strong><code>$transient</code></strong> identificador único de nuestros datos.</li>
	<li><strong><code>$value</code></strong> datos a guardar, estos datos se serializarán.</li>
	<li><strong><code>$expiration</code></strong> número de segundos que esperarán los datos en la caché.</li>
</ul>
<h4>Ejemplo:</h4>
<pre><code>set_transient('special_query_results', $special_query_results, 60*60*12);</code></pre>
<h3>get_transient()</h3>
<ul>
	<li><strong><code>$transient</code></strong> identificador único de nuestros datos.</li>
</ul>
<h4>Ejemplo:</h4>
<pre><code>$value = get_transient("codigodeejemplo");</code></pre>
<h3>delete_transient()</h3>
<ul>
	<li><strong><code>$transient</code></strong> identificador único de nuestros datos.</li>
</ul>
<h4>Ejemplo:</h4>
<pre><code>delete_transient("codigodeejemplo");</code></pre>
<h3>Ejemplo de uso</h3>
En <a href="http://wpengineer.com/2148/simple-cache-with-the-wordpress-transient-api/">WP-Engineer publican un ejemplo de sistema simple de caché con Transients API</a>. En el ejemplo, nos muestra como cachear la nube de tags como ejemplo de uso para cachear datos de nuestras plantillas.
<pre><code>$tag_cloud = get_transient( 'tag_cloud' );
if ( false === $tag_cloud || '' === $tag_cloud ){
   $args = array('echo' =&gt; false);
   $tag_cloud = wp_tag_cloud( $args );
   set_transient( 'tag_cloud', $tag_cloud, 60*60*12 );
}
echo $tag_cloud;</code></pre>
Una herramienta muy útil para suavizar el impacto de nuestros trabajos sobre la base de datos de WordPress.<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2007/08/07/accede-rapidamente-a-todas-las-opciones-de-tu-wordpress/" rel="bookmark" title="Permanent Link: Accede rápidamente a todas las opciones de tu WordPress">Accede rápidamente a todas las opciones de tu WordPress</a></li><li><a href="http://www.anieto2k.com/2012/01/29/twitterweek-2012-01-29/" rel="bookmark" title="Permanent Link: TwitterWeek &#8211; 2012-01-29">TwitterWeek &#8211; 2012-01-29</a></li><li><a href="http://www.anieto2k.com/2008/09/03/wordpress-mu-261-ha-visto-la-luz/" rel="bookmark" title="Permanent Link: WordPress MU 2.6.1 ha visto la luz">WordPress MU 2.6.1 ha visto la luz</a></li><li><a href="http://www.anieto2k.com/2008/04/20/wordpress-25-como-si-estuvieras-en-primero/" rel="bookmark" title="Permanent Link: WordPress 2.5 como si estuvieras en primero">WordPress 2.5 como si estuvieras en primero</a></li><li><a href="http://www.anieto2k.com/2006/03/07/wordpress-202/" rel="bookmark" title="Permanent Link: WordPress 2.0.2">WordPress 2.0.2</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/12/24/wordpress-transients-api-opciones-que-expieran-en-el-tiempo/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>“La España Fantasma” Un libro solidario.</title>
		<link>http://www.anieto2k.com/2010/12/07/%e2%80%9cla-espana-fantasma%e2%80%9d-el-largo-y-tortuoso-camino-para-crear-un-libro-solidario/</link>
		<comments>http://www.anieto2k.com/2010/12/07/%e2%80%9cla-espana-fantasma%e2%80%9d-el-largo-y-tortuoso-camino-para-crear-un-libro-solidario/#comments</comments>
		<pubDate>Tue, 07 Dec 2010 14:03:21 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[Actualidad]]></category>
		<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[de la red]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=10125</guid>
		<description><![CDATA[Hace ya unos meses que la Roja se convirtió en Campeones del Mundo. Un hecho que nos han vendido una y otra vez, hasta la saciedad. Mientras yo, como el 90% de los españoles estábamos pegados delante de un televisor viendo el partido en el que De Jong practicó la patada de Chuck Norris y mi [...]]]></description>
			<content:encoded><![CDATA[Hace ya unos meses que <strong>la Roja se convirtió en Campeones del Mundo</strong>. Un hecho que nos han vendido una y otra vez, hasta la saciedad. Mientras yo, como el 90% de los españoles estábamos pegados delante de un televisor viendo el partido en el que <em>De Jong practicó la patada de Chuck Norris</em> y<em> mi tocayo Andrés Iniesta colocaba a la selección en lo más alto</em>, otros tantos estaban haciendo fotos de la "España fantasma".
<p style="text-align: center;"><a rel="lightbox" href="http://www.anieto2k.com/wp-content/uploads/2010/12/libro-copia221.jpg"><img src="http://www.anieto2k.com/wp-content/uploads/2010/12/libro-copia221.jpg" alt="libro-copia221" /></a>
<a href="http://www.anieto2k.com/wp-content/uploads/2010/12/libro-copia221.jpg"><small>(Ver Imagen)</small></a></p>
La idea inicial llegó de la mano de <em>Kurioso.es</em>, que usando las redes sociales logró que una gran cantidad de fotógrafos (+321)  salieran a las calles a inmortalizar la España parada por el mundial. Esa cantidad de información ha dado lugar a un libro de 132 páginas que puedes<a href="http://www.bubok.es/libro/detalles/193145/La-Espana-Fantasma"> comprar en<strong> Bubok por 18€</strong>, de los cuales 6,1€ irán destinados al beneficio de la obra social Save the Children</a>.

<strong>Kurioso.es </strong>además <a href="http://kurioso.es/2010/11/23/la-espana-fantasma-el-largo-y-tortuoso-camino-para-crear-un-libro-solidario/">publica de forma transparente (algo que se debería hacer cada vez más) los costes y el proceso</a>, arduo proceso, para conseguir que dicho libro pueda llegar a tus manos.

Yo ya he pedido el mio, ¿a que esperas para <a href="http://www.bubok.es/libro/detalles/193145/La-Espana-Fantasma">pedir el tuyo</a>?<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2008/06/29/espana-eurocampeona/" rel="bookmark" title="Permanent Link: España, eurocampeona!!">España, eurocampeona!!</a></li><li><a href="http://www.anieto2k.com/2006/07/20/davinci-code-theme-para-wordpress/" rel="bookmark" title="Permanent Link: DaVinci Code Theme para WordPress">DaVinci Code Theme para WordPress</a></li><li><a href="http://www.anieto2k.com/2005/12/10/promesas-para-el-ano-que-viene/" rel="bookmark" title="Permanent Link: Promesas para el año que viene">Promesas para el año que viene</a></li><li><a href="http://www.anieto2k.com/2009/03/16/mapas-vectoriales-de-los-municipios-de-espana/" rel="bookmark" title="Permanent Link: Mapas vectoriales de los municipios de España">Mapas vectoriales de los municipios de España</a></li><li><a href="http://www.anieto2k.com/2006/01/20/frase-13/" rel="bookmark" title="Permanent Link: Frase #13">Frase #13</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/12/07/%e2%80%9cla-espana-fantasma%e2%80%9d-el-largo-y-tortuoso-camino-para-crear-un-libro-solidario/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Mejorando las búsquedas en WordPress con SearchEverything</title>
		<link>http://www.anieto2k.com/2010/11/22/mejorando-las-busquedas-en-wordpress-con-searcheverything/</link>
		<comments>http://www.anieto2k.com/2010/11/22/mejorando-las-busquedas-en-wordpress-con-searcheverything/#comments</comments>
		<pubDate>Mon, 22 Nov 2010 08:07:20 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[plugins]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=10113</guid>
		<description><![CDATA[Seamos francos, el motor de búsqueda no es el punto fuerte de WordPress, por defecto está limitado a búsquedas en el contenido de los artículos cuando nos puede interesar buscar en comentarios, tags o categorías, por ello plugins como Search Everything nos hacen la vida más fácil. (Ver Imagen) SearchEveryThing, es un plugin que sobrecarga [...]]]></description>
			<content:encoded><![CDATA[Seamos francos, el motor de búsqueda no es el punto fuerte de WordPress, por defecto está limitado a búsquedas en el contenido de los artículos cuando nos puede interesar buscar en comentarios, tags o categorías, por ello plugins como <em>Search Everything</em> nos hacen la vida más fácil.
<p style="text-align: center;"><a rel="lightbox" href="http://www.anieto2k.com/wp-content/uploads/2010/11/search_everything_wordpress.jpg"><img src="http://www.anieto2k.com/wp-content/uploads/2010/11/search_everything_wordpress-600x296.jpg" alt="search_everything_wordpress" /></a>
<a href="http://www.anieto2k.com/wp-content/uploads/2010/11/search_everything_wordpress.jpg"><small>(Ver Imagen)</small></a></p>
<a href="http://wordpress.org/extend/plugins/search-everything/">SearchEveryThing</a>, es un plugin que sobrecarga el motor de búsqueda de WordPress permitiendo realizar búsqueda más avanzadas en diferentes contextos que podremos configurar:
<ul>
	<li>Buscar en cada página.</li>
	<li>Buscar es cada etiqueta (tag).</li>
	<li>Buscar en cada categoría.</li>
	<li>Restringir la búsqueda a sólo páginas que no estén protegidas por contraseñas.</li>
	<li>Buscar en cada comentario.</li>
	<li>Buscar en sólo los comentarios aprobados.</li>
	<li>Buscar en cada borrador.</li>
	<li>Buscar en lo resúmenes (excerpt).</li>
	<li>Buscar en cada adjunto.</li>
	<li>Buscar en los campos personalizados (metadata).</li>
	<li>Excluir post de las búsqueda.</li>
	<li>Excluir categorías de las búsquedas.</li>
	<li>Resaltar el resultado de búsqueda en nuestros artículos (mediante color o CSS personalizado)</li>
</ul>
Disponible en múltiples idiomas y compatible con versiones superiores a WordPress 2.1. <a href="http://wordpress.org/extend/plugins/search-everything/">Descargar</a><h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2007/10/27/wordpress-231-final/" rel="bookmark" title="Permanent Link: WordPress 2.3.1 Final">WordPress 2.3.1 Final</a></li><li><a href="http://www.anieto2k.com/2006/01/03/wp-resalta-busqueda-12/" rel="bookmark" title="Permanent Link: WP-Resalta Busqueda 1.2">WP-Resalta Busqueda 1.2</a></li><li><a href="http://www.anieto2k.com/2007/05/17/isolated-theme-para-wordpress/" rel="bookmark" title="Permanent Link: Isolated Theme para WordPress">Isolated Theme para WordPress</a></li><li><a href="http://www.anieto2k.com/2006/04/05/cosillas-para-wordpress/" rel="bookmark" title="Permanent Link: Cosillas para WordPress">Cosillas para WordPress</a></li><li><a href="http://www.anieto2k.com/2007/10/04/problema-con-tags-y-wordpress-23/" rel="bookmark" title="Permanent Link: Problema con tags y WordPress 2.3">Problema con tags y WordPress 2.3</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/11/22/mejorando-las-busquedas-en-wordpress-con-searcheverything/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Shortcode para crear contenido que expira</title>
		<link>http://www.anieto2k.com/2010/11/03/shortcode-para-crear-contenido-que-expira/</link>
		<comments>http://www.anieto2k.com/2010/11/03/shortcode-para-crear-contenido-que-expira/#comments</comments>
		<pubDate>Wed, 03 Nov 2010 08:46:09 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[plugins]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=10103</guid>
		<description><![CDATA[Expiring Content Shortcode es un plugin que nos permite disponer de un shortcode para hacer que parte del contenido de nuestros artículos desaparezca al llegar a una fecha indicada previamente. Esto es ideal para campañas o concursos que realizamos en nuestros blogs. (Ver Imagen) Modo de uso Al igual que todos los shortcodes, simplemente tendremos [...]]]></description>
			<content:encoded><![CDATA[<a href="http://crowdfavorite.com/wordpress/plugins/expiring-content-shortcode/">Expiring Content Shortcode</a> es un plugin que nos permite disponer de un <em>shortcode</em> para hacer que parte del contenido de nuestros artículos desaparezca al llegar a una fecha indicada previamente. Esto es ideal para campañas o concursos que realizamos en nuestros blogs.
<p style="text-align: center;"><a rel="lightbox" href="http://www.anieto2k.com/wp-content/uploads/2010/11/Screen-shot-2010-11-02-at-2.04.26-PM.png"><img src="http://www.anieto2k.com/wp-content/uploads/2010/11/Screen-shot-2010-11-02-at-2.04.26-PM.png" alt="Screen-shot-2010-11-02-at-2.04.26-PM" /></a>
<a href="http://www.anieto2k.com/wp-content/uploads/2010/11/Screen-shot-2010-11-02-at-2.04.26-PM.png"><small>(Ver Imagen)</small></a></p>

<h3>Modo de uso</h3>
Al igual que <a href="http://www.anieto2k.com/2009/02/04/usando-shortcodes-como-profesionales/">todos los shortcodes</a>, simplemente tendremos que llamarlo desde el contenido de nuestros artículos, para ello usaremos la siguiente construcción:
<pre><code>[expires on="FECHA"]Contenido a expirar[/expires]</code></pre>
¿Sencillo verdad? Pues además, como ya <a href="http://www.anieto2k.com/2010/09/14/usando-shortcodes-en-nuestro-theme/">vimos como usar shortcodes en nuestro theme</a>, nos permite realizar cosas interesantes no solo a nivel de contenido. Las limitaciones las pones tu :D

<a href="http://alexking.org/blog/2010/11/02/expiring-content-shortcode">Via</a><h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2008/04/13/shortcode-generator-para-wordpress/" rel="bookmark" title="Permanent Link: ShortCode generator para WordPress">ShortCode generator para WordPress</a></li><li><a href="http://www.anieto2k.com/2008/03/31/shortcode-api-otra-novedad-de-wordpress-25/" rel="bookmark" title="Permanent Link: ShortCode API, otra novedad de WordPress 2.5">ShortCode API, otra novedad de WordPress 2.5</a></li><li><a href="http://www.anieto2k.com/2006/07/11/contenido-centrado-con-css/" rel="bookmark" title="Permanent Link: Contenido Centrado con CSS">Contenido Centrado con CSS</a></li><li><a href="http://www.anieto2k.com/2009/02/04/usando-shortcodes-como-profesionales/" rel="bookmark" title="Permanent Link: Usando Shortcodes como profesionales">Usando Shortcodes como profesionales</a></li><li><a href="http://www.anieto2k.com/2010/09/14/usando-shortcodes-en-nuestro-theme/" rel="bookmark" title="Permanent Link: Usando Shortcodes en nuestro theme">Usando Shortcodes en nuestro theme</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/11/03/shortcode-para-crear-contenido-que-expira/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Convierte las rutas de tu WordPress en relativas</title>
		<link>http://www.anieto2k.com/2010/10/26/convierte-las-rutas-de-tu-wordpress-en-relativas/</link>
		<comments>http://www.anieto2k.com/2010/10/26/convierte-las-rutas-de-tu-wordpress-en-relativas/#comments</comments>
		<pubDate>Tue, 26 Oct 2010 07:55:56 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[hacks]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=10080</guid>
		<description><![CDATA[456 Berea St publica un pequeño script para convertir las url's absolutas de nuestro WordPress en relativas. El script se basa en el uso de una expresión regular que elimina el protocolo y el dominio y nos deja la url recortada allá donde la usemos. function make_href_root_relative($input) { return preg_replace('!http(s)?://' . $_SERVER['SERVER_NAME'] . '/!', '/', [...]]]></description>
			<content:encoded><![CDATA[<a href="http://www.456bereastreet.com/archive/201010/how_to_make_wordpress_urls_root_relative/">456 Berea St publica un pequeño script para convertir las url's absolutas de nuestro WordPress en relativas</a>. El script se basa en el uso de una expresión regular que elimina el protocolo y el dominio y nos deja la url recortada allá donde la usemos.
<pre><code>function make_href_root_relative($input) {
    return preg_replace('!http(s)?://' . $_SERVER['SERVER_NAME'] . '/!', '/', $input);
}</code></pre>
Esta función nos permitirá convertir cualquier url que le pasemos como parámetro, si además usamos el filtro asociado a <code>the_permalink()</code>, esto se propagará por la aplicación y reemplazará la mayoría de url's que usen este método.
<pre><code>function root_relative_permalinks($input) {
    return make_href_root_relative($input);
}
add_filter( 'the_permalink', 'root_relative_permalinks' );</code></pre>
Una forma rápida de relativizar tus url's :D<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2007/08/14/convierte-tu-wordpress-en-un-tumblelog/" rel="bookmark" title="Permanent Link: Convierte tu WordPress en un Tumblelog">Convierte tu WordPress en un Tumblelog</a></li><li><a href="http://www.anieto2k.com/2008/09/29/ficheros-de-configuracion-dependientes-del-servidor/" rel="bookmark" title="Permanent Link: Ficheros de configuración dependientes del servidor">Ficheros de configuración dependientes del servidor</a></li><li><a href="http://www.anieto2k.com/2008/03/25/leopress-convierte-tu-wordpress-en-leopard/" rel="bookmark" title="Permanent Link: Leopress, convierte tu WordPress en Leopard">Leopress, convierte tu WordPress en Leopard</a></li><li><a href="http://www.anieto2k.com/2006/08/21/con-font-todo-sera-mas-corto/" rel="bookmark" title="Permanent Link: Con font todo será más corto.">Con font todo será más corto.</a></li><li><a href="http://www.anieto2k.com/2007/04/17/vimperator-convierte-tu-firefox-en-vim/" rel="bookmark" title="Permanent Link: Vimperator, convierte tu Firefox en VIM">Vimperator, convierte tu Firefox en VIM</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/10/26/convierte-las-rutas-de-tu-wordpress-en-relativas/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Usando Shortcodes en nuestro theme</title>
		<link>http://www.anieto2k.com/2010/09/14/usando-shortcodes-en-nuestro-theme/</link>
		<comments>http://www.anieto2k.com/2010/09/14/usando-shortcodes-en-nuestro-theme/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 10:12:58 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/2010/09/14/usando-shortcodes-en-nuestro-theme/</guid>
		<description><![CDATA[Desde la versión 2.5, WordPress dispone de una funcionalidad que nos permite definir código que podrá ser ejecutado desde los artículos mediante código similares al BBCode. Esta funcionalidad la llamaron Shorcodes. Ya vimos como funcionaban los shortcodes y como implementarlos en nuestros WordPress. Ahora en WPEngineer publican una interesante artículo en el que nos explican [...]]]></description>
			<content:encoded><![CDATA[<a href="http://www.anieto2k.com/2008/03/31/shortcode-api-otra-novedad-de-wordpress-25/">Desde la versión 2.5, WordPress dispone de una funcionalidad</a> que nos permite definir código que podrá ser ejecutado desde los artículos mediante código similares al <a href="http://es.wikipedia.org/wiki/BBCode">BBCode</a>. Esta funcionalidad la llamaron Shorcodes.

Ya <a href="http://www.anieto2k.com/2009/02/04/usando-shortcodes-como-profesionales/">vimos como funcionaban los shortcodes y como implementarlos en nuestros WordPress</a>. Ahora en<a href="http://wpengineer.com/2051/use-wordpress-shortcodes-outside-the-editor/"> WPEngineer publican una interesante artículo</a> en el que nos explican como usar shortcodes en nuestros themes sin necesidad de encontrarnos dentro del contenido de los artículos.
<pre><code>&lt;?php echo do_shortcode('[myshortcode]'); ?&gt;</code></pre>
Gracias a <code><a href="http://codex.wordpress.org/Function_Reference/do_shortcode">do_shortcode()</a></code> podemos ejecutar nuestros propios shortcodes en donde queramos del código de nuestro theme. Muy útil :D<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2010/11/03/shortcode-para-crear-contenido-que-expira/" rel="bookmark" title="Permanent Link: Shortcode para crear contenido que expira">Shortcode para crear contenido que expira</a></li><li><a href="http://www.anieto2k.com/2009/05/13/ocultar-contenido-a-los-usuarios-no-registrados/" rel="bookmark" title="Permanent Link: Ocultar contenido a los usuarios no registrados">Ocultar contenido a los usuarios no registrados</a></li><li><a href="http://www.anieto2k.com/2008/04/13/shortcode-generator-para-wordpress/" rel="bookmark" title="Permanent Link: ShortCode generator para WordPress">ShortCode generator para WordPress</a></li><li><a href="http://www.anieto2k.com/2009/02/04/usando-shortcodes-como-profesionales/" rel="bookmark" title="Permanent Link: Usando Shortcodes como profesionales">Usando Shortcodes como profesionales</a></li><li><a href="http://www.anieto2k.com/2009/02/04/ejecutar-php-en-tus-posts-con-shortcodes/" rel="bookmark" title="Permanent Link: Ejecutar PHP en tus posts con shortcodes">Ejecutar PHP en tus posts con shortcodes</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/09/14/usando-shortcodes-en-nuestro-theme/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>WordPress y el Fatal Memory Error</title>
		<link>http://www.anieto2k.com/2010/08/30/wordpress-y-el-fatal-memory-error/</link>
		<comments>http://www.anieto2k.com/2010/08/30/wordpress-y-el-fatal-memory-error/#comments</comments>
		<pubDate>Mon, 30 Aug 2010 15:58:10 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[Asides]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/2010/08/30/wordpress-y-el-fatal-memory-error/</guid>
		<description><![CDATA[Uno de los principales problemas de WordPress es el consumo de memoria, este consumo no siempre puede reducirse y poco a poco (versión a versión) parece que la funcionalidad básica va consumiendo más memoria de nuestro sistema. Para intentar reservar más memoria disponible en nuestro sistema la gente de WeblogToolsCollection.com publica un artículo recopilatorio de [...]]]></description>
			<content:encoded><![CDATA[Uno de los principales problemas de WordPress es el consumo de memoria, este consumo no siempre puede reducirse y poco a poco (versión a versión) parece que la funcionalidad básica va consumiendo más memoria de nuestro sistema. Para intentar reservar más memoria disponible en nuestro sistema la gente de <a href="http://weblogtoolscollection.com/archives/2010/08/29/wordpress-and-the-fatal-memory-error/">WeblogToolsCollection.com publica un artículo recopilatorio</a> de soluciones al famoso <em>“Fatal error: Allowed memory size of 33554432 bytes exhausted.”</em><h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2009/09/08/reduce-el-consumo-de-memoria-de-tu-wordpress/" rel="bookmark" title="Permanent Link: Reduce el consumo de memoria de tu WordPress">Reduce el consumo de memoria de tu WordPress</a></li><li><a href="http://www.anieto2k.com/2005/12/04/problema-con-ajaxregulus/" rel="bookmark" title="Permanent Link: Problema con ajaxRegulus">Problema con ajaxRegulus</a></li><li><a href="http://www.anieto2k.com/2005/11/28/ajaxregulus-10/" rel="bookmark" title="Permanent Link: AjaxRegulus 1.0">AjaxRegulus 1.0</a></li><li><a href="http://www.anieto2k.com/2009/06/18/wp-memory-usage-y-wp-sytem-health-controla-el-estado-de-tu-wordpress/" rel="bookmark" title="Permanent Link: WP Memory Usage y WP Sytem Health, controla el estado de tu WordPress">WP Memory Usage y WP Sytem Health, controla el estado de tu WordPress</a></li><li><a href="http://www.anieto2k.com/2005/12/07/problemas-con-utf-8/" rel="bookmark" title="Permanent Link: Problemas con UTF-8">Problemas con UTF-8</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/08/30/wordpress-y-el-fatal-memory-error/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Perdiendole el miedo a la API XML-RPC de WordPress</title>
		<link>http://www.anieto2k.com/2010/08/26/perdiendole-el-miedo-a-la-api-xml-rpc-de-wordpress/</link>
		<comments>http://www.anieto2k.com/2010/08/26/perdiendole-el-miedo-a-la-api-xml-rpc-de-wordpress/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 21:17:06 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[Programacion]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/2010/08/26/perdiendole-el-miedo-a-la-api-xml-rpc-de-wordpress/</guid>
		<description><![CDATA[Una de las características de WordPress desde casi sus comienzos es la capacidad de publicar artículos de forma remota. Inicialmente se introdujo la posibilidad de usar una dirección de correo a la que los artículos llegarían y automáticamente estos se publicarían. Después, con la llegada del protocolo XML-RPC, se añadió la opción de recibir peticiones [...]]]></description>
			<content:encoded><![CDATA[Una de las características de WordPress desde casi sus comienzos es <a href="http://codex.wordpress.org/XML-RPC_Support">la capacidad de publicar artículos de forma remota</a>. Inicialmente se introdujo la posibilidad de usar una dirección de correo a la que los artículos llegarían y automáticamente estos se publicarían.<br />
<br />
Después, con la llegada del <a href="http://es.wikipedia.org/wiki/XML-RPC">protocolo XML-RPC</a>, se añadió la opción de recibir peticiones mediante él y extender así las opciones de los clientes externos para publicar remotamente. Ahora, unos años después, la API es bastante completa y nos permite generar un interfaz remoto, ya sea en nuestro escritorio (Windows/Linux/Mac) o i<a href="http://deepestsender.mozdev.org/installation.html">ncluso nuestro navegador,</a> para administrar nuestro blog sin necesidad de acceder al panel administrador.<br />
<br />
<a href="http://blog.5ubliminal.com/posts/remote-control-wordpress-blog-xmlrpc-api/">5ubliminal.com publica un pequeño artículo sobre las opciones más interesantes del API</a>, que nos puede servir de guía si nos interesa esta funcionalidad o necesitamos extender la forma de acceder a nuestro blog.<h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2005/12/27/mala-men/" rel="bookmark" title="Permanent Link: Mala Men">Mala Men</a></li><li><a href="http://www.anieto2k.com/2006/06/12/%c2%bfte-atreves/" rel="bookmark" title="Permanent Link: ¿Te atreves?">¿Te atreves?</a></li><li><a href="http://www.anieto2k.com/2006/01/30/template-k2-para-wordpress/" rel="bookmark" title="Permanent Link: Template K2 para WordPress">Template K2 para WordPress</a></li><li><a href="http://www.anieto2k.com/2007/11/03/wordpress-cheat-sheet-y-se-acabo-el-panico/" rel="bookmark" title="Permanent Link: WordPress Cheat Sheet, y se acabó el pánico">WordPress Cheat Sheet, y se acabó el pánico</a></li><li><a href="http://www.anieto2k.com/2006/08/21/scarlett-johansson-los-anos-la-estan-mejorando/" rel="bookmark" title="Permanent Link: Scarlett Johansson, los años la están mejorando">Scarlett Johansson, los años la están mejorando</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/08/26/perdiendole-el-miedo-a-la-api-xml-rpc-de-wordpress/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WordPress 3.0: Exprimiendo los Custom Post Types</title>
		<link>http://www.anieto2k.com/2010/06/19/wordpress-3-0-exprimiendo-los-custom-post-types/</link>
		<comments>http://www.anieto2k.com/2010/06/19/wordpress-3-0-exprimiendo-los-custom-post-types/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 11:21:11 +0000</pubDate>
		<dc:creator>aNieto2k</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.anieto2k.com/?p=9949</guid>
		<description><![CDATA[Una de las funcionalidades incluidas en WordPress 3.0 es la posibilidad de definir tipos de posts personalizados. Esto que parece que ha pasado desapercibido por la comunidad de desarrolladores es realmente interesante y ofrece una gran capacidad para extender cualquier WordPress fácilmente. ¿Que son los Custom Post Types? Hasta la versión 2.9.x de WordPress disponíamos [...]]]></description>
			<content:encoded><![CDATA[Una de las funcionalidades <a href="http://www.anieto2k.com/2010/06/19/wordpress-3-0-%E2%80%9Cthelonious%E2%80%9D-por-fin-ve-la-luz/">incluidas en WordPress 3.0</a> es la posibilidad de definir tipos de posts personalizados. Esto que parece que ha pasado desapercibido por la comunidad de desarrolladores es realmente interesante y ofrece una gran capacidad para extender cualquier WordPress fácilmente.
<h3>¿Que son los Custom Post Types?</h3>
Hasta la versión 2.9.x de WordPress disponíamos de unos pocos tipos de posts disponibles para identificar nuestros artículos. Estos tipos de posts, indicaban el estado del mismo (<code>draft</code>, <code>revision</code>,...) o el tipo de usado (<code>attachment</code>, <code>page</code>,...).

Ahora con la nueva versión de WordPress, la 3.0, la posibilidad de definir tipos de posts personalizados abre un abanico de posibilidades.
<h3>¿Como definir un nuevo Custom Post Type?</h3>
La API de WordPress está muy bien documentada en <a href="http://codex.wordpress.org">WordPress Codex</a> y allí podemos <a href="http://codex.wordpress.org/Custom_Post_Types">encontrar como definir un Post Type fácilmente</a>.

Todo pasa por la función <a href="http://codex.wordpress.org/Function_Reference/register_post_type"><code>register_post_type()</code></a>, que se encarga de registrar un nuevo tipo con una serie de características personalizadas.
<pre><code>add_action( 'init', 'create_post_type' );
function create_post_type() {
  register_post_type( 'super',
    array(
      'labels' =&gt; array(
        'name' =&gt; __( 'Supers' ),
        'singular_name' =&gt; __( 'Super' )
      ),
      'public' =&gt; true,
    )
  );
}</code></pre>
Como vemos, debemos crear una función que se ejecutará en el action "<code>init</code>" de WordPress y que registrará el nuevo tipo. Disponemos de muchos parámetros que podemos usar para personalizar el nuevo tipo, pero los veremos más adelante.
<p style="text-align: center;"><a rel="lightbox" href="http://www.anieto2k.com/wp-content/uploads/2010/06/post_type_wordpress_3.jpg"><img src="http://www.anieto2k.com/wp-content/uploads/2010/06/post_type_wordpress_3-552x300.jpg" alt="post_type_wordpress_3" /></a>
<a href="http://www.anieto2k.com/wp-content/uploads/2010/06/post_type_wordpress_3.jpg"><small>(Ver Imagen)</small></a></p>
Introduciendo este código en, por ejemplo, el fichero <code>functions.php </code>de tu theme o en un plugin. Obtendremos un resultado similar al que vemos en la imagen. Se trata de un nuevo menú con el nuevo tipo registrado.

En el nuevo menú descubrimos que podemos mostrar un listado de artículos del nuevo tipo o crear uno nuevo, siempre asociado al <code>post-type</code> definido previamente.
<h3>Detalles de <code>register_post_type()</code></h3>
Los parámetros que esta función reciba condicionarán el panel de administración de nuestro nuevo post_type.
<h4>Labels</h4>
<ul>
	<li><code>name</code>: El plural del nuevo tipo (películas).</li>
	<li><code>singular_name</code>: Singular del nuevo tipo (película)</li>
	<li><code>add_new</code>: Etiqueta de "Añadir nuevo"</li>
	<li><code>add_new_item</code>: Cabecera del panel "Añadir nuevo"</li>
	<li><code>edit</code>: Etiqueta de "Editar"</li>
	<li><code>edit_item</code>: Cabecera del panel "Editar"</li>
	<li><code>new_item</code>: Muestra en el menú favoritos</li>
	<li><code>view</code>: Se utiliza como texto en un enlace para ver el post.</li>
	<li><code>view_item</code>:Se muestra junto con  el enlace permanente en la pantalla de edición posterior</li>
	<li><code>search_items</code>: Botón de texto para  el cuadro de búsqueda en la pantalla de edición de mensajes</li>
	<li><code>not_found</code>: Texto para cuando no encuentre items</li>
	<li><code>not_found_in_trash</code>:Texto para cuando no encuentre items en la papelera.</li>
	<li><code>parent</code>: Se utiliza para definir el tipo padre. Solo útil en tipos heredados.</li>
</ul>
<h4>Ejemplo</h4>
<pre><code>'labels' =&gt; array(
	'name' =&gt; __( 'Super Dupers' ),
	'singular_name' =&gt; __( 'Super Duper' ),
	'add_new' =&gt; __( 'Add New' ),
	'add_new_item' =&gt; __( 'Add New Super Duper' ),
	'edit' =&gt; __( 'Edit' ),
	'edit_item' =&gt; __( 'Edit Super Duper' ),
	'new_item' =&gt; __( 'New Super Duper' ),
	'view' =&gt; __( 'View Super Duper' ),
	'view_item' =&gt; __( 'View Super Duper' ),
	'search_items' =&gt; __( 'Search Super Dupers' ),
	'not_found' =&gt; __( 'No super dupers found' ),
	'not_found_in_trash' =&gt; __( 'No super dupers found in Trash' ),
	'parent' =&gt; __( 'Parent Super Duper' ),
),</code></pre>
<h4>description</h4>
La descripción, es usada para explicar de que trata el nuevo tipo.
<h4>Ejemplo</h4>
<pre><code>'description' =&gt; __( 'A super duper is a type of content that is the most wonderful content in the world. There are no alternatives that match how insanely creative and beautiful it is.' ),</code></pre>
<h4>public</h4>
Se trata de un parámetro que permite personalizar todo lo referente al comportamiento público del nuevo tipo. En caso de estar activo (<code>true</code>) nos permitirá usar otros parámetros para personalizar nuestro <code>post_type</code>.
<ul>
	<li><code>show_ui</code>: Mostrar en las pantallas de Administración</li>
	<li><code>publicly_queryable</code>: Permitir que las consultas por este tipo estén disponibles a los usuarios.</li>
	<li><code>exclude_from_search</code>: Eliminar de la lista de resultados de búsquedas.</li>
</ul>
<pre><code>'public' =&gt; true,
'show_ui' =&gt; true,
'publicly_queryable' =&gt; true,
'exclude_from_search' =&gt; false,</code></pre>
<h4>capability_type / capabilities</h4>
El tema de permisos es algo que también está reflejado en los Custom Post Types, permitiendo definir que capacidades tiene cada perfil de usuarios sobre el tipo.

Para ello usaremos el atributo "<code>capabilities</code>":
<ul>
	<li><code>edit_post</code>: Alguien puede crear y editar un post específico</li>
	<li><code>edit_posts</code>: Capacidad de guardar  los mensajes que permite la edición de este tipo de posts</li>
	<li><code>edit_others_posts</code>: Capacidad  que permite la edición de los posts de los demás.</li>
	<li><code>publish_posts</code>: Capacidad  de la concesión de la publicación de este tipo de posts.</li>
	<li><code>read_post</code>: Capacidad que controla la lectura de un  puesto específico de este tipo de posts.</li>
	<li><code>read_private_posts</code>: Capacidad  para permitir la lectura de los mensajes privados.</li>
	<li><code>delete_post</code>: Capacidad que otorga el privilegio de la supresión de posts.</li>
</ul>
<h4>Ejemplo</h4>
<pre><code>/* Global control over capabilities. */
'capability_type' =&gt; 'super_duper',

/* Specific control over capabilities. */
'capabilities' =&gt; array(
	'edit_post' =&gt; 'edit_super_duper',
	'edit_posts' =&gt; 'edit_super_dupers',
	'edit_others_posts' =&gt; 'edit_others_super_dupers',
	'publish_posts' =&gt; 'publish_super_dupers',
	'read_post' =&gt; 'read_super_duper',
	'read_private_posts' =&gt; 'read_private_super_dupers',
	'delete_post' =&gt; 'delete_super_duper',
),</code></pre>
<h4>supports</h4>
Permite definir que cajas van a estar visibles a la hora de crear/editar un nuevo post del tipo definido. Para ello pasaremos un listado con los nombres de las mismas.
<ul>
	<li><code>title</code>: Caja de título</li>
	<li><code>editor</code>: Editor donde va el contenido del post</li>
	<li><code>comments</code>: Posibilidad de activar/desactivar los comentarios</li>
	<li><code>trackbacks</code>: Capacidad de activar/desactivar los trackbacks</li>
	<li><code>revisions</code>: Permitir ver las revisiones</li>
	<li><code>author</code>: Caja para definir el autor</li>
	<li><code>excerpt</code>: Caja de excerpt.</li>
	<li><code>thumbnail</code>: Caja para definir la miniatura del post.</li>
	<li><code>custom-fields</code>: Caja de Custom Fields</li>
	<li><code>page-attributes</code>: Atributos de páginas</li>
</ul>
<h4>Ejemplo</h4>
<pre><code>'supports' =&gt; array( 'title', 'editor', 'excerpt', 'custom-fields', 'thumbnail' ),</code></pre>
<h4>rewrite</h4>
La URL también puede ser personalizada mediante un simple parámetro que especificará el enlace usado. Para ello debemos especificar estos parámetros:
<ul>
	<li><code>slug</code>: El prefijo del post</li>
	<li><code>with_front</code>:  Si el prefijo ha de estar en el frontend.</li>
</ul>
<h3>Más información</h3>
<ul>
	<li><a href="http://codex.wordpress.org/Custom_Post_Types">Custom Post Types &lt;&lt; WordPress Codex</a></li>
	<li><a href="http://justintadlock.com/archives/2010/04/29/custom-post-types-in-wordpress">Custom Post Types in WordPress</a></li>
	<li><a href="http://kovshenin.com/archives/custom-post-types-in-wordpress-3-0/">Custom Post Types in WordPress 3.0</a></li>
	<li><a href="http://kovshenin.com/archives/extending-custom-post-types-in-wordpress-3-0/">Extending Custom Post Types in WordPress 3.0</a></li>
	<li><a href="http://codex.wordpress.org/Function_Reference/register_post_type">register_post_type() &lt;&lt; WordPress Codex</a></li>
</ul>
<h3>Actualización</h3>
<ol>
	<li><a href="http://wordpress.org/extend/plugins/custom-post-type-ui/">Custom Post Types UI</a>, plugin que nos genera un cómodo interface web donde personalizar nuestros tipos de posts. <a href="http://ayudawordpress.com/custom-post-types-para-humanos/">Via</a>.</li>
	<li><a href="http://magicfields.org/">Magic Fields</a>, plugin que permite generar interfaces amigables para todas las opciones de WordPress, inlcuye la opción de Custom Post Types.Via <a href="http://ishkarioth.com/blog/">judas</a>.</li>
</ol><h3>Artículos relacionados</h3>
<ul><li><a href="http://www.anieto2k.com/2010/06/19/wordpress-3-0-%e2%80%9cthelonious%e2%80%9d-por-fin-ve-la-luz/" rel="bookmark" title="Permanent Link: WordPress 3.0 “Thelonious” por fin ve la luz">WordPress 3.0 “Thelonious” por fin ve la luz</a></li><li><a href="http://www.anieto2k.com/2009/09/21/como-usar-los-custom-fields-en-wordpress/" rel="bookmark" title="Permanent Link: Como usar los custom fields en WordPress">Como usar los custom fields en WordPress</a></li><li><a href="http://www.anieto2k.com/2010/11/02/mime-type-javascript-soportados/" rel="bookmark" title="Permanent Link: MIME Type Javascript soportados">MIME Type Javascript soportados</a></li><li><a href="http://www.anieto2k.com/2007/06/28/haz-que-todos-tus-posts-sean-diferentes/" rel="bookmark" title="Permanent Link: Haz que todos tus posts sean diferentes">Haz que todos tus posts sean diferentes</a></li><li><a href="http://www.anieto2k.com/2009/12/02/wordpress-2-9-beta-2/" rel="bookmark" title="Permanent Link: WordPress 2.9 beta 2">WordPress 2.9 beta 2</a></li></ul><p><a href="http://www.anieto2k.com" id="38.107.179.236"><img rel="38.107.179.236" src="http://www.anieto2k.com/favicon.ico" alt="aNieto2k" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.anieto2k.com/2010/06/19/wordpress-3-0-exprimiendo-los-custom-post-types/feed/</wfw:commentRss>
		<slash:comments>31</slash:comments>
		</item>
	</channel>
</rss>

