<?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>Alberto Bustamante &#187; Wordpress</title>
	<atom:link href="http://www.albertobustamante.com/blog/es/category/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.albertobustamante.com/blog/es</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Fri, 03 Feb 2012 16:09:18 +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>Random Sentences, tu primer plugin de WordPress</title>
		<link>http://www.albertobustamante.com/blog/es/2011/01/random-sentences-tu-primer-plugin-de-wordpress/</link>
		<comments>http://www.albertobustamante.com/blog/es/2011/01/random-sentences-tu-primer-plugin-de-wordpress/#comments</comments>
		<pubDate>Sat, 15 Jan 2011 22:27:43 +0000</pubDate>
		<dc:creator>Alberto</dc:creator>
				<category><![CDATA[Lenguajes de programación]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[plugin]]></category>

		<guid isPermaLink="false">http://www.albertobustamante.com/blog/es/?p=87</guid>
		<description><![CDATA[Me entró curiosidad por conocer como desarrollar plugins para WordPress, y el resultado es un plugin muy básico, que permite incluir frases aletorias en un blog. Puede servir, por ejemplo, para mostrar una frase diferente debajo del titulo de un blog cada vez que se accede a él. En un alarde de originalidad, se me [...]]]></description>
			<content:encoded><![CDATA[<p>Me entró curiosidad por conocer como desarrollar plugins para WordPress, y el resultado es un plugin muy básico, que permite incluir frases aletorias en un blog. Puede servir, por ejemplo, para mostrar una frase diferente debajo del titulo de un blog cada vez que se accede a él. En un alarde de originalidad, se me ocurrió llamar a este plugin &#8220;Random Sentences&#8221;.</p>
<p>Primero, creamos un fichero llamado <code>random-sentences.php</code> en nuestro directorio <code>wp-content/plugins</code> y lo rellenamos con la información básica del plugin.</p>
<blockquote>
<pre>&lt;?php
/*
Plugin Name: Random Sentences
Version: 0.1
Plugin URI: http://www.albertobustamante.com
Description: Basic plugin that shows a random sentence
Author: Alberto Bustamante
Author URI: http://www.albertobustamante.com
*/

?&gt;</pre>
</blockquote>
<p>Si todo fue bien, si vamos ahora al escritorio/dashboard de nuestro WordPress, deberíamos ver el plugin.<br />
<img src="http://www.albertobustamante.com/blog/wp-content/uploads/2011/01/plugin.png" alt="" title="plugin" width="500" height="76" class="aligncenter size-medium wp-image-241" /></p>
<p>De momento nuestro plugin no es que haga mucho, asi vamos a escribir la función que devolverá una frase aleatoriamente. La he llamado <code>get_random_sentence()</code>:</p>
<blockquote>
<pre>&lt;?php
/*
Plugin Name: Random Sentences
Version: 0.1
Plugin URI: http://www.albertobustamante.com
Description: Basic plugin that shows a random sentence
Author: Alberto Bustamante
Author URI: http://www.albertobustamante.com
*/

function get_random_sentence(){

	$all_sentences = array(
		1 => array( "sentence" => "This is the sentence 1",
					"author" => "Anonymous 1" ),
		2 => array( "sentence" => "This is the sentence 2",
					"author" => "Anonymous 2" ),
		3 => array( "sentence" => "This is the sentence 3",
					"author" => "Anonymous 3" ),
	);

	$min = 1;
	$max = 3;
	$index = rand($min,$max);

	$output =
		'&lt;div id="RS_div">
			&lt;p id="RS_sentence">'
				.$all_sentences[$index]["sentence"].
			'&lt;/p>
			&lt;p id="RS_author">'
				.$all_sentences[$index]["author"].
			'&lt;/p>
		&lt;/div>';

	echo $output;
}

?></pre>
</blockquote>
<p>Como puedes ver, es una función muy simple que usa un array para guardar todas las frases y sus autores. En una posible futura actualización, sería interesante usar la base de datos para ello, pero eso vendrá más adelante.<br />
Si quieres usar este código, guarda el fichero, activa el plugin e incluye esta linea donde quieras que aparezcas las frases:</p>
<blockquote><p><code>&lt;?php get_random_sentence(); /></code></p></blockquote>
<div id="crp_related"><h3>Posts relacionados:</h3><ul><li><a href="http://www.albertobustamante.com/blog/es/2009/12/jscrollpane-jtable-y-scroll-horizontal/" rel="bookmark" class="crp_title">JScrollPane, JTable y scroll horizontal</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/12/error-500-en-wordpress/" rel="bookmark" class="crp_title">Error 500 en WordPress</a></li><li><a href="http://www.albertobustamante.com/blog/es/2010/11/resolver-falsos-checkouts-usando-clearcase-y-eclipse/" rel="bookmark" class="crp_title">Resolver falsos checkouts usando ClearCase y Eclipse</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/05/como-editar-la-variable-path-en-mac/" rel="bookmark" class="crp_title">Como editar la variable PATH en Mac</a></li><li><a href="http://www.albertobustamante.com/blog/es/2010/05/reconocimiento-automatico-de-sarcasmo/" rel="bookmark" class="crp_title">Reconocimiento automático de sarcasmo</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.albertobustamante.com/blog/es/2011/01/random-sentences-tu-primer-plugin-de-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Error 500 en WordPress</title>
		<link>http://www.albertobustamante.com/blog/es/2009/12/error-500-en-wordpress/</link>
		<comments>http://www.albertobustamante.com/blog/es/2009/12/error-500-en-wordpress/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 19:16:17 +0000</pubDate>
		<dc:creator>Alberto</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[error 500]]></category>

		<guid isPermaLink="false">http://www.albertobustamante.com/blog/es/?p=35</guid>
		<description><![CDATA[Después de esto, he aprendido que es conveniente desactivar todos los plugins antes de actualizar WordPress automaticamente. No recuerdo cuando hice la última actualización, pero parece que la versión en inglés de este blog ha estado offline desde entonces. Esta mañana quería leer un artículo del blog, y al entrar lo que veía era un [...]]]></description>
			<content:encoded><![CDATA[<p>Después de esto, he aprendido que es conveniente desactivar todos los plugins antes de actualizar WordPress automaticamente. No recuerdo cuando hice la última actualización, pero parece que la versión en inglés de este blog ha estado offline desde entonces.</p>
<p>Esta mañana quería leer un artículo del blog, y al entrar lo que veía era un mensaje de &#8220;Error 500&#8243;. Lo primero que hice fue intentar entrar en WordPress, y no tuve problema. Despues probé a desactivar los plugins, por si alguno estuviera dando problemas, y tampoco funcionó. Lo siguiente que hice fue consultar el log de Apache, y esto fue lo que encontré:</p>
<blockquote><p>SoftException in Application.cpp:252: File &#8220;/home/xxxxx/public_html/blog/index.php&#8221; is writeable by group</p></blockquote>
<p>Ahí estaba: un problema de permisos. Así que usando Cyberduck (aunque cualquier programa de FTP sirve), lo arreglé, eliminando los permisos de escritura para Grupo y Otros:<br />
<center><img src="http://www.albertobustamante.com/blog/es/wp-content/uploads/2009/12/Imagen-5.png" alt="Permisos Cyberduck" title="Permisos Cyberduck" width="390" height="204" class="aligncenter size-full wp-image-37" /></center></p>
<p>Nota: hay que aplicar este cambio a todos los archivos y directorios. En mi caso, marqué la opción &#8220;Aplicar cambios recursivamente&#8221;, pero todas las aplicaciones de FTP tienen que tener una opción similar.</p>
<div id="crp_related"><h3>Posts relacionados:</h3><ul><li><a href="http://www.albertobustamante.com/blog/es/2009/05/arreglando-error-406-de-wordpress/" rel="bookmark" class="crp_title">Arreglando Error 406 de WordPress</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/11/resolviendo-problemas-con-subversion/" rel="bookmark" class="crp_title">Resolviendo problemas con Subversion</a></li><li><a href="http://www.albertobustamante.com/blog/es/2011/01/random-sentences-tu-primer-plugin-de-wordpress/" rel="bookmark" class="crp_title">Random Sentences, tu primer plugin de WordPress</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/11/instalar-erlang-en-mac/" rel="bookmark" class="crp_title">Instalar Erlang en Mac</a></li><li><a href="http://www.albertobustamante.com/blog/es/2011/07/el-futuro-de-los-dispositivos-moviles/" rel="bookmark" class="crp_title">El futuro de los dispositivos móviles</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.albertobustamante.com/blog/es/2009/12/error-500-en-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arreglando Error 406 de WordPress</title>
		<link>http://www.albertobustamante.com/blog/es/2009/05/arreglando-error-406-de-wordpress/</link>
		<comments>http://www.albertobustamante.com/blog/es/2009/05/arreglando-error-406-de-wordpress/#comments</comments>
		<pubDate>Thu, 14 May 2009 19:34:26 +0000</pubDate>
		<dc:creator>Alberto</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.albertobustamante.com/blog/es/?p=3</guid>
		<description><![CDATA[Si has tratado de editar un post o página de tu blog, y has obtenido el error &#8220;Error 406, Not Acceptable. An appropriate representation of the requested resource /wp-admin/post.php could not be found on this server&#8221; (o algo parecido), no te preocupes, es muy fácil de arreglar. Tan sólo tienes que editar el fichero &#8220;.htaccess&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>Si has tratado de editar un post o página de tu blog, y has obtenido el error &#8220;Error 406, Not Acceptable. An appropriate representation of the requested resource /wp-admin/post.php could not be found on this server&#8221; (o algo parecido), no te preocupes, es muy fácil de arreglar.</p>
<p>Tan sólo tienes que editar el fichero &#8220;.htaccess&#8221; que encontrarás en el directorio raiz de tu WordPress. Abrelo y añade esta linea:</p>
<blockquote><p>SecFilterEngine off</p></blockquote>
<p>Tras esto, no deberías tener problema editando el contenido de tu blog.</p>
<div id="crp_related"><h3>Posts relacionados:</h3><ul><li><a href="http://www.albertobustamante.com/blog/es/2009/12/error-500-en-wordpress/" rel="bookmark" class="crp_title">Error 500 en WordPress</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/11/resolviendo-problemas-con-subversion/" rel="bookmark" class="crp_title">Resolviendo problemas con Subversion</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/11/instalar-erlang-en-mac/" rel="bookmark" class="crp_title">Instalar Erlang en Mac</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/05/como-editar-la-variable-path-en-mac/" rel="bookmark" class="crp_title">Como editar la variable PATH en Mac</a></li><li><a href="http://www.albertobustamante.com/blog/es/2009/07/como-arreglar-las-teclas-inicio-y-fin-en-mac/" rel="bookmark" class="crp_title">Como arreglar las teclas Inicio y Fin en Mac</a></li></ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.albertobustamante.com/blog/es/2009/05/arreglando-error-406-de-wordpress/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

