Random Sentences, tu primer plugin de WordPress

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 “Random Sentences”.

Primero, creamos un fichero llamado random-sentences.php en nuestro directorio wp-content/plugins y lo rellenamos con la información básica del plugin.

<?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
*/

?>

Si todo fue bien, si vamos ahora al escritorio/dashboard de nuestro WordPress, deberíamos ver el plugin.

De momento nuestro plugin no es que haga mucho, asi vamos a escribir la función que devolverá una frase aleatoriamente. La he llamado get_random_sentence():

<?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 =
		'<div id="RS_div">
			<p id="RS_sentence">'
				.$all_sentences[$index]["sentence"].
			'</p>
			<p id="RS_author">'
				.$all_sentences[$index]["author"].
			'</p>
		</div>';

	echo $output;
}

?>

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.
Si quieres usar este código, guarda el fichero, activa el plugin e incluye esta linea donde quieras que aparezcas las frases:

<?php get_random_sentence(); />

Error 500 en WordPress

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 mensaje de “Error 500″. 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é:

SoftException in Application.cpp:252: File “/home/xxxxx/public_html/blog/index.php” is writeable by group

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:

Permisos Cyberduck

Nota: hay que aplicar este cambio a todos los archivos y directorios. En mi caso, marqué la opción “Aplicar cambios recursivamente”, pero todas las aplicaciones de FTP tienen que tener una opción similar.

Arreglando Error 406 de WordPress

Si has tratado de editar un post o página de tu blog, y has obtenido el error “Error 406, Not Acceptable. An appropriate representation of the requested resource /wp-admin/post.php could not be found on this server” (o algo parecido), no te preocupes, es muy fácil de arreglar.

Tan sólo tienes que editar el fichero “.htaccess” que encontrarás en el directorio raiz de tu WordPress. Abrelo y añade esta linea:

SecFilterEngine off

Tras esto, no deberías tener problema editando el contenido de tu blog.

Powered by WordPress with GimpStyle Theme design by Horacio Bella.
Entries and comments feeds. Valid XHTML and CSS.