Como mover un WordPress con la extensión XCloner

Wordpress

David | 4/11/2011

En este vídeo que publiqué el otro día en el blog de Webempresa se muestra como mover un WordPress de una cuenta de hosting a otra empleando la extensión XCloner. XCloner es una extensión para realizar backups pensada inicialmente para Joomla y que después sus creadores decidieron portarla a WordPress. De hecho si le echas un vistazo a su código verás referencias al mundillo de Joomla por todas partes :) , muchas variables mantienen el nombre del framework de Joomla, el directorio donde se almacenan los backups es administrator/backups, etc..

La extensión también está disponible para Joomla, como ya os he contado, aunque para mi gusto, Akeeba Backup en Joomla es un producto superior.

En cualquier caso se trata de una fabulosa extensión de backup para WordPress.

Podéis ver la documentación del plugin en la wiki de XCloner.


Videotutorial: como hacer un componente de Backend para Joomla 1.5 usando el patrón MVC

Joomla, Programación

David | 17/09/2011

Hace un tiempo hice un vídeo para Webempresa donde hablaba sobre el desarrollo de extensiones usando el patrón MVC en Joomla. También se explicaba como usar partes del Framework de Joomla y hacíamos un ejemplo sobre el ForntEnd de Joomla.

En esta ocasión en el vídeo trata sobre como desarrollar la parte del Backend de la extensión, la metodología es similar, pero hay funciones nuevas que merece la pena ver con más profundidad. Queda todo recojido en un vídeo de unos 50 minutos que podéis ver en el canal de Youtube de Webempresa o aquí debajo.

Podéis descargar el código de ejemplo aquí.

PD: Un saludo para Gnumax que me anima constantemente para que siga escribiendo artículos en el blog.


Videotutorial para programar componente MVC en Joomla 1.5

Joomla

David | 6/06/2011

Llevo ya un tiempo sin escribir nada en el blog, en esta ocasión voy a enlazar este vídeo que hice para Webempresa y que también está colgado en JoomlaSpanish donde se puede ver como programar un componente usando el patrón MVC en Joomla. Creo que puede ser de utilidad para mucha gente que ha programado en PHP para Joomla 1.0 pero aún no ha dado el salto a la programación de Joomla 1.5 usando el patrón MVC..
Ya veréis que no es nada complicado, solamente seguir una serie de pasos para tener el código más ordenado y legible..
Os dejo con el vídeo.


Aprende a usar las Webmaster Tools de Google como un SEO

SEO

David | 23/03/2011

En el blog de las Webmaster tools de Google han colgado un vídeo ( con subtítulos en español, para el que no entienda el inglés ) donde se explica como emplear la información de las Herramientas para Webmasters de Google. Me ha parecido un contenido muy muy interesante para optimizar nuestros sitios de cara a que Google nos posicione mejor. De paso, echarle también un vistazo al artículo de Distilled, donde se explican varios trucos sobre como emplear Excel para SEO. Me ha parecido buena información con la que crearse una metodología de trabajo para realizar optimización SEO en nuestra web.

Vía AdSeok


Cómo usar PHP desde la línea de comandos de Linux

Programación, SysAdmin

David | 20/03/2011


PHP es un lenguaje de programación muy potente, intuitivo y fácil de utilizar. Además tiene gran cantidad de librerías desarrolladas de las que nos podemos aprovechar. Si eres administrador de sistemas y además tienes que realizar labores de administración de sistemas, estoy seguro que te encontrarás en multitud de situaciones donde utilizar PHP será la opción más rápida y comoda para llevar a cabo tus propósitos.
Por ejemplo, imagina que tienes que ejecutar una tarea diaria que involucre acceso a base de datos de una aplicación que está desarrollada en PHP y que dispone de su propia API, como por ejemplo Joomla. Además está tarea tiene que estar integrada dentro de una serie de shell scripts realizados ya, que funcionan bien y no quieres tener que reprogramarlos en PHP. Tienes 3 opciones, implementar las tareas dentro de otros shell scripts o scripts en perl, desaprovechando tus conocimientos de PHP y el API de Joomla, pasar tus scripts de shel Linux a PHP, lo que puede resultar una pérdida de tiempo si ya funcionan correctamente.. o la tercera y por la que me decanto, utilizar PHP desde la línea de comandos y crear un script de PHP que acepte los parámetros necesarios e invocarlo desde otros shell scripts o scripts en perl que ya tengamos implementados. Así que por todo esto vamos a ver como utilizar PHP en el CLI.

En Linux para saber que programa va a interpretar el código del script, se utiliza el shebang, que es una lína que se coloca al principio, que incorpora los caracteres #! seguidos del path al intérprete. Para saber cual es la ruta del interprete de PHP podemos utilizar los comandos


wich php
#o también
whereis php

Por ejemplo, nuestro script, en un SO CentOS, empezaría así:


#!/usr/bin/php

<?php
 #código del script PHP
?>

Después la metodología de codificación es muy similar a la de cualquier script PHP desarrollado para ser ejecutado en Apache, con la diferencia de que ahora los parámetros los recibimos del Array $argv[] en lugar de utilizar los Arrays $_POST, $_GET o $_REQUEST. Deberemos de utilizar las marcas de PHP del mismo modo que en un script de CGI (&gt?php ?<) para que el intérprete de PHP ejecute el código. Por ejemplo, creamos un primer script de ejemplo con el nombre prueba.php y el siguiente código:


#!/usr/bin/php
<?php
print_r($argv);
?>

Si lo invocamos de la siguiente forma, obtendremos la siguiente salida:


./prueba.php argumento1 argumento2

#Salida del comando:

Array
(
[0] => ./prueba.php
[1] => argumento1
[2] => argumento2
)

Como veis, es muy fácil acceder a los parámetros del script utilizando el array $argv, es una buena idea asignar las variables del array a variables con nombres más intuitivos para no liarnos después en la programación. La posición 0 del array $argv siempre contiene el nombre del script desde elq ue se llama, esto es algo habitual, el que haya programado shell script en Bash lo sabrá muy bien. Podemos utilizar la función array_shift($argv) para eliminar el primer parámetro o recorrer el array $argv con un while.

Realizar comprobaciones básicas
En la variable $argc se almacena un entero con el número de parámetros introducidos. Empleando este valor podemos hacer algunas comprobaciones básicas:

#!/usr/bin/php

if ($argc != 3) {
   die("Modo de empleo: prueba.php <num_usuarios> <bloquear> \n");
}

$num_usuarios = $argv[1];
$bloquear = $argv[2];

Comprobar que el valor de entrada es un valor numérico:


if (!is_numeric($param)){
 die("$param no es un número");
}

Acceso a las variables de entorno

Puedes acceder a las variables de entorno del sistema


putenv("EDITOR=/path/al/editor");
echo "Actualmente estás usando el editor por defecto: " . getenv('EDITOR') ;

El resto es cuestión de saber programar en PHP. Por ejemplo, podemos utilizar el API de Joomla si nos lo proponemos si lo incluimos como se indica en la documentación de Joomla.
En próximos artículos veremos algunas funciones muy útiles para emplear en nuestros scripts de CLI en PHP..


K2 Content, módulo multiusos de K2 para mostrar contenido en Joomla

Joomla

David | 20/03/2011

En este vídeo muestro el funcionamiento básico del módulo K2 Content, que acompaña la instalación de K2, y que sirve para mostrar contenido de K2 en varios formatos, utilizando la potencia de los módulos de Joomla, para colocarlo en cualquier parte que nuestra plantilla lo permita. La verdad es que K2 cada día me parece mejor opción, y viendo que su creador no está por la labor de sacarlo para Joomla 1.7 debido a su corto ciclo de vida, pues entiendo a la gente que no confía en Joomla 1.6 y prefiere quedarse con Joomla 15 + K2.. Larga vida a Joomla 1.5 con K2..


Por qué es importante mantener actualizado tu Joomla?

Joomla, SysAdmin

David | 16/03/2011

Pues por que si no te hackean, así de simple :) Ayer estuve grabando un vídeo para Webempresa que cuelgo aquí también.. Se puede ver que es bastante simple hackear un Joomla desactualizado, en el vídeo no se muestra un hackeo 100% completo, pero entiendo que la técnica de robo de sesión queda bastante clara.. Si en lugar de introducir un simple alert en la URL que se aprovecha de la debilidad XSS lográramos introducir un script de BeEf, por ejemplo, pues entonces no solo podrían robarte la sesión, sino que hasta podrían obtener una shell de tu sistema.. Inquietante, eh?? Ya sabeis, toda protección es poca :)

NOTA: Advertir, que esto no sólo pasa en Joomla, te pueden hacer exactamente lo mismo en cualquier CMS que no esté actualizado, se llame Drupal, WordPress, Moodle, DotNetNuke… o como quieras llamarle..


Videotutorial sobre ACL en Joomla 1.6

Mi compañero Jhon Marreros ha grabado un buen videotutorial sobre el funcionamiento de las ACL de Joomla 1.6. Trata el tema en bastante profundidad.
Por : David           Comentarios desactivados