Ha salido un nuevo sitio sobre plugins para WordPress. Entre sus caracterÃsticas tenemos que se pueden votar, nos muestra estadÃsticas sobre el número de veces que se ha descargado, versión, web del plugin, web del autor, tags, descripción, screenshots y comentarios por los usuarios.
Otro sitio más de plugins para WordPress que merece la pena echar un vistazo. WP Plugins
VÃa / dzone
Buen tutorial que explica cómo importar los contenidos de un RSS en nuestro blog sin tener que usar un plugin, que sinceramente, hace bastante busqué un plugin que lo hiciera y no encontré nada que me llegara a gustar.
El tutorial es bastante completo, dividido en tres partes: importar usando WP de forma sencilla y de forma más avanzada, para lo cual utiliza las funciones de WP que hacen uso de Magpie. O utilizando SimplePie, para lo cual no es necesario WP. Import and Display RSS Feeds in WordPress
Vía / Script & Style
Últimamente estoy trabajando bastante con Gutenberg, tiene sus cosas buenas y malas. Sea como sea, es el futuro de WordPress, así que toca aprender.
Lo más interesante de todo es poder usar lo que sabía de webpack, React, HMR, … Y para practicar he hecho un plugin que permite añadir snippets de código en los posts usando los bloques de Gutenberg
Para ello uso la librería highlight.js que permite destacar código de forma sencilla. Aquí un ejemplo
// Import CSS.import'./scss/style.scss';
import'./scss/editor.scss';
import icon from'./icon';
import edit from'./edit';
import save from'./save';
import attributes from'./attributes';
import { __ } from'@wordpress/i18n'; // Import __() from wp.i18nexportconst name = 'sentidoweb/snippet';
exportconst settings = {
// Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.
title: __( 'Snippets editor', 'sw-snippet' ), // Block title.
icon: icon,
category: 'common', // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.
keywords: [
__( 'code', 'sw-snippet' ),
__( 'format', 'sw-snippet' ),
__( 'snippet', 'sw-snippet' ),
],
attributes,
edit,
save,
};
Cuando se exporta la versión de desarrollo de WordPress a otro dominio, nos encontramos con el problema de las URLs. WordPress permite modificar las URLs fácilmente desde el wp-config mediante WP_HOME y WP_SITEURL. Desgraciadamente, WP puede estar lleno de URLs en la BD como en wp_options, o directamente en posts, …
Para solucionar esto existe un script que realizar esta tarea por nosotros directamente sobre la BD.
Algo que casi nunca hago, pero que debería ser obligatorio, es realizar pruebas unitarias de los plugins que realizo en WordPress. Si normalmente casi no tengo tiempo de realizarlos con detalle, imagínate hacer pruebas unitarias.
Para realizar esas pruebas voy a hacer uso de PHPUnit, el cual no voy a explicar cómo usarlo, pero sí voy a poner el bootstrap.php que uso:
// Cargar WP, la ruta supuestamente está en el directorio wp-content/plugins
define('WP_PATH', dirname(__FILE__).'/../../..');
include(WP_PATH.'/wp-load.php');
/**
* Loads/activates a plugin
*/
function run_activate_plugin( $plugin ) {
$current = get_option( 'active_plugins' );
$plugin = plugin_basename( trim( $plugin ) );
if ( !in_array( $plugin, $current ) ) {
$current[] = $plugin;
sort( $current );
do_action( 'activate_plugin', trim( $plugin ) );
update_option( 'active_plugins', $current );
do_action( 'activate_' . trim( $plugin ) );
do_action( 'activated_plugin', trim( $plugin) );
}
return null;
}
// Activa el plugin si no lo está, que no debería al estar en testing...
run_activate_plugin( 'wordpress-nonce-object/class-wp-nonce.php' );
La gente de WordPress ha lanzado la versión 2.0.5, la cual es recomendable su descarga para actualizar la versión que disponamos ya que incluye varias correcciones de seguridad. El total de correcciónes está disponible aquÃ, mientras que un resumen de las actualizaciones se puede leer aquÃ.
Existe para la descarga la versión completa y la posibilidad de actualización de la versión 2.0.4 a la versión 2.0.5.
Como dato curioso, hasta ahora no habÃa caÃdo, el sistema de control de errores que usan es Trac, del cual hablábamos gracias a la colaboración de Albert. WordPress 2.0.5