Cómo crear un ambiente de desarrollo para WordPress

La clave para iniciar cualquier proyecto en WordPress es contar con un ambiente de desarrollo que nos permita crear, editar, probar y posteriormente publicar nuestro sitio web. En este tutorial te voy a mostrar como crear un ambiente de desarrollo para WordPress.

Antes de continuar, vamos a ver cuáles son los requerimientos de WordPress. De esta forma sabremos que necesitamos y eliminamos el margen de error a la hora de elegir nuestras opciones.

Los requerimientos de WordPress son:

  • PHP 7 o superior
  • MySQL 5.6 or superior o MariaDB 10.0 o superior
  • El módulo Apache mod_rewrite
  • Soporte HTTPS

Por lo tanto, necesitamos que nuestro ambiente de desarrollo cumpla con estos requisitos.

Igualando el servidor de producción

Debemos tener en cuenta también donde terminará publicado nuestro proyecto en WordPress, porque puede ocurrir que lo que nos funciona perfectamente en nuestro ambiente de desarrollo no lo haga al publicar en el servidor que nos ha facilitado el cliente para publicar su siti web. Diferencias como la versión de PHP o determinadas configuraciones pueden echar por tierra nuestros planes de tener una publicación eficiente y rápida.

Cómo crear un ambiente de desarrollo para WordPress con MAMP Pro

Para los que prefieren trabajar con interfaz gráfica o buscan una solución menos experta, existe MAMP que además incluye su versión MAMP Pro que es la que nos interesa en este tutorial.

MAMP Pro es una app muy intuitiva, que si bien nos permite crear ambientes de desarrollo con mucha facilidad y poco conocimiento sobre el tema, tiene la desventaja que su forma de funcionar es bastante diferente a los servidores donde generalmente se alojan los sitios en producción. Aún así es una opción que te servirá en muchos casos, me atrevo a decir, que en la mayoría de los casos.

Importante: MAMP Pro es una app de pago, que ofrece un período de pruebas y del cual puedes beneficiarte para seguir este tutorial. Ofrezco la opción porque es una de las  opciones más utilizadas por los desarrolladores para crear ambientes de desarrollo para WordPress.

Para instalar MAMP debes descargar el instalador eligiendo la opción correspondiente a tu sistema operativo. Personalmente, nunca he utilizado la versión para Windows pero asumo que funciona igual a la versión para macOS.

Una vez instalado, podemos abrir la ventana principal, donde podremos configurar nuestro servidor localhost por defecto, eligiendo la versión de PHP, MySQL e incluso activando Nginx si así lo necesitamos.

Creando una instancia para nuestro sitio web en MAMP Pro

MAMP nos permite crear diferentes instancias que mantienen sus propias preferencias. Esto nos permite tener múltiples configuraciones y de esta forma poder optimizar dicha configuración de la mejor manera posible para nuestro sitio web en desarrollo sin afectar al resto.

Crear instancia MAMP

Haz click en el botón + al final del listado de sitios y completa los datos de nuestro nuevo sitio web de la siguiente forma:

  • Host name: es el dominio local donde tendremos nuestro sitio web. Vamos a poner esta vez nuestrositio.dev.
  • Document root: es donde elegimos la carpeta en la que estará alojado el sito web. Debe ser una carpeta que esté dentro de nuestro directorio raiz para el servidor. En este caso, he elegido /Users/<usuario>/htdocs/wordpress.dev porque mi ruta raiz por defecto para MAMP es /Users/<usuario>/htdocs

El resto de las opciones, vamos a dejarlas de lado porque no las necesitamos en este punto.

Configurar MAMP

Creamos la instancia y ahora solo nos queda configurarla. Puedes elegir la opción de PHP, siendo la versión 7 la recomendada. No obstante, en algunos casos, para mantener compatibilidad con otros servidores, puedes elegir PHP 5.6.30.

Instalando WordPress en MAMP Pro

Extras MAMP

En la pestaña Extras, haz click en el botón [+] y de las opciones elige WordPress. Llena los datos utilizando la imagen como referencia y haz click en Install. Puedes tomar algo de tiempo, pero ten paciencia, MAMP está descargando, instalando y configurando WordPress en el ambiente de desarrollo que haz creado.

Configuración WordPress MAMP

Ya tenemos nuestro sitio web disponible en http://wordpress.dev:8888/. Observa como al final de la dirección aparece el puerto 8888. Es el puerto por defecto de MAMP Pro. Si lo deseas, puedes cambiarlo en las preferencias de la instancia que haz creado.

Prueba WordPress

Creando un ambiente de desarrollo con Vagrant

Si lo que necesitas es crear un ambiente de desarrollo que funcione como lo hace el servidor de producción, entonces necesitas optar por una opción más compleja pero a la vez mas robusta. Existen opciones como Vagrant y Docker, pero solo veremos Vagrant en esta ocasión.

Sitio Web Vagrant

Vagrant es una herramienta para desarrolladores que facilita la creación de entornos virtuales para desarrollo. En Vagrant podemos instalar y configurar software en una máquina virtual de la misma forma en que lo haríamos en el servidor de producción. De esta forma, podemos simular que estamos en el servidor en el que se alojará nuestro sitio web.

Todo el proceso, desde cero es considerablemente más complicado que MAMP Pro pero afortunadamente simplificar muchísimo el proceso utilizando Varying Vagrant Vagrants (VVV). VVV es una configuración lista para instalar y aplicar optimizada para el desarrollo en WordPress.

Instalando Vagrant

Importante: Vagrant requiere el uso extensivo del terminal por lo que si no estás familiarizado será más complejo para ti el proceso.

Para instalar Vagrant debemos utilizar un software de virtualización, como VirtualBox, aunque también sirven Parallels, Hyper-V, VMWare Fusion, y VMWare Workstation. Descarga e instala VirtualBox 5.x, antes de continuar. Descarga e instala también Vagrant 1.x antes de pasar a la creación de nuestro ambiente de desarrollo.

Desde este momento, el comando vagrant estará diponible en el terminal.

Creamos la carpeta donde estará nuestra instalación de WordPress. Para este ejemplo voy a crear la carpeta vagrant y me cambio a dicha carpeta. Quedará entonces en /Users/<usuario>/vagrant.

Instalamos el plugin vagrant-hostsupdater con  $ vagrant plugin install vagrant-hostsupdater

Instalamos el plugin vagrant-triggers con $ vagrant plugin install vagrant-triggers

A continuación, clonamos VVV en nuestro directorio local.

$ git clone -b master git://github.com/Varying-Vagrant-Vagrants/VVV.git wordpress-local

Al finalizar, quedará instalado en /Users/<usuario>/vagrant/wordpress-local.

En el mismo directorio vagrant cambiar a wordpress-local con  $ cd wordpress-local e iniciar VVV con $ vagrant up

Activando Vagrant up

Espera un poco mientras en el terminal se va realizado todo el proceso de descarga y ejecución de la máquina virtual así como la configuración e inicialización de la misma.

Llegado a este punto, puedes ver tus instalaciones de WordPress en http://vvv.dev y las instalaciones de WordPress quedarán en /Users/<usuario>/vagrant/wordpress-local/www.

Panel de Vagrant

¿Cómo sigo con Vagrant y VVV?

Puedes conectarte al servidor via ssh utilizando $ vagrant ssh desde la carpeta wordpress-local.

Para “apagar” el servidor puedes utilizar $ vagrant halt y para iniciarlo puedes utiliza $ vagrant up.

Si necesitas reprovisionar el servidor, luego de cambiar la configuración del mismo, utiliza $ vagrant provision.

En caso de quere eliminar el servidor, utiilza $ vagrant destroy.

Vagrant es excelente para trabajar en equipo

Puedes tomar la carpeta wordpress-local y enviarla a los miembros de tu equipo de desarrollo. Basta con instalar VirtualBox y Vagrant y podrán inicializar el servidor idéntico a como lo tienes tú utilizando $ vagrant up.

Ya puedes comenzar a desarrollar

Sea con MAMP o con Vagrant, ya estás listo para comenzar a desarrollar, utilizando tu IDE o editor de preferencia.

Recursos

1 thought on “Cómo crear un ambiente de desarrollo para WordPress”

  1. En windows, puedes usar XAMPP, el cual es muy útil para realizar la mayoría de lo que aquí se pone. Es básicamente una instalación portatil… por lo cual se puede duplicar muchas veces si se necesita (o si se necesita tenerlo para llevar). Si usas linux, puedes usar cualquier LAMP. Aunque requerirá algunos “tweaks”.

    El que yo no recomiendo para desarrollo WordPress es EasyPHP… en especial si quieres tener funcionalidades de actualización del core y cosas así de forma fácil… estuve lidiando para hacerlo funcionar bien, pero resulta que WordPress requiere de un servidor FTP en el servidor (o cUrl activado) para realizar algunas cosas.

Deja un comentario