Laravel, una apuesta segura para grandes desarrollos

Por Tamara Osona
Developer en OpenSistemas

Laravel es un framework de código abierto, bajo licencia MIT, para desarrollar apliaciones PHP de un modo mucho más rápido, ágil y sobre todo de calidad. En Laravel se emplea el más que conocido patrón de diseño MVC.

Es fácil de aprender y ofrece una interesante propuesta, especialmente para los desarrolladores que estén buscando una herramienta eficiente y de rápido aprendizaje en el desarrollo web. Además, incorpora el gestor de paquetes Composer que nos permite tener al día nuestras librerías.

Estos son los puntos más importantes:

· Rasgos generales: el framework se compone de los elementos básicos de un MVC, como los modelos, las vistas y los controladores. Igualmente, incluye otros componentes como sistema de enrutamiento (Router), templatización (Blade), gestión y versionado de base de datos (migraciones)…

· Comando Artisan: cliente de consola que nos permite ejecutar comandos propios del framework. Es muy versátil, potente e incluso nos permite extenderlo creando nuestras propias tareas para que estén disponibles desde este cliente.

· Composer: es el gestor de dependencias de PHP por excelencia. Aprender a utilizarlo es de vital importancia, ya no solo para Laravel, sino para el desarrollo de aplicaciones modernas, con él, podemos añadir, actualizar o eliminar módulos de nuestra aplicación con un sencillo fichero json.

· Migraciones: ¿Quién no ha deseado alguna vez tener más control sobre los cambios que se hacen sobre nuestra base de datos? Gracias a las migraciones de Laravel podemos crear nuestra base de datos mediante un sencillo código PHP. De este modo, tenemos registrado a través de nuestro control de versiones (git, svn,…) todos y cada uno de los cambios que se han llevado a cabo sobre nuestra BB. DD. Esto, unido a un fantástico gestor de semillas, hace que sea fácil crear nuestra base de datos y rellenarla con datos de prueba en cuestión de minutos.

· Eloquent ORM: nos permite interactuar con nuestra base de datos como si cada tabla fuera un Modelo, respetando más fielmente la división MVC. Es muy sencillo de usar, tanto, que la creación de un modelo consta de lo siguiente:

<?php
 class User extends Eloquent{}
?>

Y ¡voilá! Ya podemos acceder a nuestra tabla users haciendo uso de los métodos que proporciona Eloquent. Esto es solo una pequeña parte de todo lo que nos puede proporcionar este framework, que tiene una amplia documentación online en la página oficial y github, así que solo tenéis que descargar e instalar. WordPress y Laravel Todos sabemos lo fácil que resulta trabajar con un panel de administración como el de WordPress, el sistema de taxonomía, la autenticación, los usuarios, la gestión de la base en sí. Para nosotros, los fans de WordPress, fusionar ambos puede resultar muy útil. En Laravel, el proceso para la integración de WordPress es básicamente el mismo: – Deshabilita la funcionalidad tematización e incluye el archivo wp-blog-header.php de WordPress para incluir funcionalidad y características del core de WordPress en nuestro public/index.php

<?php
define('WP_USE_THEMES', false);
require realpath(__DIR__.'/wordpress/wp-blog-header.php');
?>

– Ahora podemos utilizar las funciones propias de WordPress en nuestro desarrollo.

– A la hora de mostrar posts o pages, las llamadas serían algo como:

<?php // Todos los Posts
$posts = Post::published()->get();
$posts = Post::status('publish')->get();
// Un post por ID
$post = Post::find(31);
echo $post->post_title;
// Mostrar Página por  slug
$page = Post::type('page')->slug('principal')->first();
echo $page->post_title;
?>

Este es un breve ejemplo de cómo podemos explotar esta “mezcla”. También para trabajar con post types, custom meta fields… De esta manera, podemos utilizar este framework más para nuestro frontend y WordPress para el backend. Usar uno, otro, o ambos, ya es cuestión de gustos y de las preferencias de cada uno. Y tú, ¿te atreverás a probarlo?