MODx es lo que se llamarÃa un CMF (Content Management Framework), una mezcla entre CMS (Content Management System)y framework. Realizado en PHP, permite realizar aplicaciones de forma sencilla, validando código XHTML, con layouts CSS y con utilización de Ajax.
A parte de tener en cuenta los estándares web y tratar con Ajax (gracias a script.aculo.us), hay que añadir que en los navegadores más comunes, dispone de un instalador paso a paso, hace uso de FCKeditor, diferencia entre las sesiones de usuarios y de gestores de la aplicación, y exporta a formatos como PDF o Word, entre otras cosas. MODx
Gracias Bentejuy por el aviso.
En Developer.com han realizado un tutorial que explica cómo desarrollar tu primera aplicación para Android (ejecutado en un intérprete PHP de tu móvil)…
Ahora viene la parte más complicada, y digo complicada porque sinceramente he tenido que mirar el código porque algo me fallaba cuando seguía lo que decía la documentación.
El nombre del fichero JSON tiene el siguiente formato [dominio de traducción]-[idioma]-[handler del fichero].json, total nada.
Dominio será el que usemos para traducir, en el ejemplo sería mi-plugin:
__( 'Hola que tal', 'mi-plugin' );
Idioma es el código del idioma, en este caso es_ES
Y por último el handler del fichero es el primer parámetro que usamos en wp_enqueue_script
Lo podemos ver todo en un ejemplo final:
wp_enqueue_script(
'mi-plugin-handler', // El handler mencionado anteriormente
$blocks_script, // Nuestro path
[
'wp-i18n', // De referenciar al menos a wp-i18n
],
);
wp_set_script_translations( 'mi-plugin-handler, 'mi-plugin', plugin_dir_path( __FILE__ ) . 'languages' );
Un buen y sencillo ejemplo de cómo crear miniaturas de imágenes (thumbnails) con sombra y borde redondeado usando Imagick. No olvidar que siempre hay que tener en cuenta que la manipulación de imágenes es algo costoso en rendimiento, y más si usamos Imagick en vez de gd, sÃ, permite más funcionalidades pero es más pesado.
El resultado serÃa el siguiente:
<?php
// Parsear la imagen
$im = new Imagick( 'imagen.png' );
// Redimensionar la imagen
$im->thumbnailImage( 200, null );
// Esquinas redondeadas
$im->roundCorners( 5, 5 );
// Clonamos el objeto actual
$shadow = $im->clone();
// Cambiamos el color de la imagen a negro (color de la sombra)
$shadow->setImageBackgroundColor( new ImagickPixel( 'black' ) );
// Creamos la sombra
$shadow->shadowImage( 80, 3, 5, 5 );
// Superponemos la original sobre la sombra
$shadow->compositeImage( $im, Imagick::COMPOSITE_OVER, 0, 0 );
// Mostramos la imagen
header( "Content-Type: image/png" );
echo $shadow;
?>
Yo más diría que se deben conocer, porque algunas suelen ser algo desconocidas.
SimpleXML: parser de XML muy sencillo y potente, ya he hablado de esta librería y la diferencia con el método anterior de parsing de los xml es abismal.
JSON y SOAP: para la comunicación entre aplicaciones, a mí personalmente JSON me encanta y su uso es simple, muy simple.
PDO: capa de abstracción para acceso de la BD que nos permite acceder a MS SQL Server, Sybase, Firebird/Interbase, IBM, Informix, MySQL, Oracle, ODBC y DB2, PostgreSQL, SQLite de forma transparente.
SPL: o Standard PHP Library, permite convertir elementos en arrays y tratarlos con iteradores.
SQLite: librería para poder trabajar con esta base de datos (SQLite).
AJAX Locking es una librerÃa de PHP que nos permite bloquear el acceso a los recursos del servidor a las peticiones AJAX. Ocurre con frecuencia que cuando una aplicación usa AJAX se efectuen muchas llamadas al servidor, accediendo todos a los mismos recuersos, pudiendo obtener resultados no muy deseados.
En estos casos, esta liberÃa es lo más adecuado, ya que bloquea recursos del servidor, previniendo estos errores. AJAX Locking
VÃa / PHP Classes