luinuxscl / wordpress-laravel-integration
Package para integrar WordPress con Laravel
Package info
github.com/luinuxscl/wordpress-laravel-integration
pkg:composer/luinuxscl/wordpress-laravel-integration
Requires
- php: >=8.2
- illuminate/support: ^12.0
Requires (Dev)
- orchestra/testbench: ^10.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
📌 Introducción
Este package permite integrar una aplicación Laravel con un sitio WordPress, facilitando la administración de posts, categorías, etiquetas y medios a través de la API REST de WordPress.
🚀 Instalación
Puedes instalar este package usando Composer:
composer require luinuxscl/wordpress-laravel-integration
Si deseas publicar las configuraciones y vistas del package en tu aplicación Laravel, ejecuta:
php artisan vendor:publish --tag=wordpress-config php artisan vendor:publish --tag=wordpress-views
📄 Configuración
Después de instalar el package, asegúrate de configurar las credenciales en la base de datos. Puedes usar el siguiente comando para ejecutar las migraciones:
php artisan migrate
🔧 Uso del Package
✅ Usando el Facade
Puedes interactuar con la API de WordPress de manera sencilla usando la Facade WordpressIntegration:
use Luinuxscl\WordpressIntegration\Facades\WordpressIntegration; // Crear un nuevo post en WordPress $response = WordpressIntegration::createPost([ 'title' => 'Mi Nuevo Post', 'content' => 'Contenido del post generado desde Laravel.', ]);
✅ Uso con el Service Container
Si prefieres la inyección de dependencias, puedes utilizar el servicio directamente:
use Luinuxscl\WordpressIntegration\Services\WordpressService; $wordpressService = app(WordpressService::class); $wordpressService->createPost([ 'title' => 'Título del Post', 'content' => 'Contenido del post en WordPress.', ]);
🌍 Rutas Disponibles
Este package expone las siguientes rutas:
| Método | Ruta | Acción |
|---|---|---|
POST |
/wordpress/posts |
Crear un nuevo post en WordPress |
GET |
/wordpress/posts/{id} |
Obtener un post específico |
Ejemplo de uso con AJAX:
fetch('/wordpress/posts', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ title: 'Post desde JS', content: 'Contenido enviado desde JavaScript.', }), }).then(response => response.json()).then(data => console.log(data));
✅ Uso del Componente Livewire
Este package incluye un componente Livewire para gestionar credenciales de WordPress de manera interactiva.
📌 Cómo usarlo
- Asegúrate de que Livewire está instalado en tu proyecto:
composer require livewire/livewire
- Usa el componente en cualquier vista Blade:
<livewire:wordpress-credentials-form /> - El componente mostrará un formulario interactivo para agregar credenciales de WordPress.
✅ Pruebas
Este package incluye pruebas con PHPUnit y Orchestra Testbench. Para ejecutarlas, usa:
vendor/bin/phpunit
🎯 Contribuciones
Si deseas mejorar este package, envía un Pull Request en GitHub.
📄 Licencia
Este package está disponible bajo la licencia MIT.
Licencia
MIT © Luis Sepúlveda. Ver LICENSE.