-
Notifications
You must be signed in to change notification settings - Fork 0
Home
WASP es un starter plugin que facilita el desarrollo con WordPress. Con él podrás crear tus propios plugins de manera rápida, fácil y sencilla. WASP Puede ser usado como framework para crear Custom Post Types, Taxonomías, Meta Boxes, Páginas de administración, Terms Meta, Users Meta, etc.
WASP provee un conjunto de clases a las que solo le debes pasar un grupo de parámetros para crear los elementos que componen tu plugin.
Tan fácil como:
<?php
namespace WASP\Post_Type;
use WASP\Posts\Post_Type;
class Post_Type_Book extends Post_Type
{
public function __construct()
{
parent::__construct();
// CPT slug
$this->post_type = 'wasp-book';
// CPT labels
$this->labels = array(
'name' => _x( 'Book', 'Post type general name', 'wasp' )
);
// CPT arguments
$this->args = array(
'public' => true
);
}
}
new WASP\Post_Type\Post_Type_Book;WASP se instala como cualquier otro plugin de WordPress, para ello debes descargar la última versión, descompactar el archivo .zip y copiar su contenido en el directorio wp-content/plugins/ de tu instalación de WordPress. O subirlo usando el instalador de plugins de WordPress.
Puedes clonar este repositorio directamente desde GitHub.
$ cd /path/to/your/wordpress-site/wp-content/plugins/
$ git clone git@github.com:rogertm/wasp.gitPuedes usar este plugin de dos maneras:
Puedes generar tu propio repositorio a partir de este y usarlo como un template, solo debes pulsar el botón Use this template que aparece en el encabezado de este repositorio.
Es recomendable; pero no obligatorio, cambiar algunas cosas para una mayor facilidad a la hora de trabajar:
-
Namespace: Buscar
WASP\y reemplazar porYour_Namespace\. -
Prefijo de funciones: Buscar
wasp_y reemplazar poryour_function_prefix_. -
Text domain: Buscar
'wasp'(entre comillas simples) y reemplazar por'your-text-domain'. -
Slug: Buscar
wasp-y reemplazar poryour-slug-. -
Comentarios y documentación: Buscar
WASPy reemplazar porYour project name. -
Archivos: Buscar todos los archivos dentro del directorio
/classesy cambiar elslugde cada uno por el que se ha especificado en el paso 4. Ej:class-wasp-admin-page.phpporclass-your-slug-admin-page.php. Hacer lo mismo con el archivowasp.phpen la raíz del plugin. - Editar la cabecera del plugin según sea necesario.
Es importante seguir estos pasos en el mismo orden que se muestran.
Yes, a Child Plugin!
Puedes desarrollar tu propio plugin y heredar a todas las funcionalidades que brinda WASP creando un Child Plugin.
<?php
/**
* Plugin Name: WASP Child 🐝
* Description: Wow! Another starter "Child" plugin
* Plugin URI: https://github.com/rogertm/wasp
* Author: RogerTM
* Author URI: https://rogertm.com
* Version: 1.0.0
* License: GPL2
* Text Domain: wasp-child
* Domain Path: /languages
*/
// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) )
die;
if ( file_exists( WP_PLUGIN_DIR .'/wasp/wasp.php' ) )
require WP_PLUGIN_DIR .'/wasp/wasp.php';
else
wp_die( __( 'This plugin requires WASP', 'wasp-child' ), __( 'Bum! 💣', 'wasp-child' ) );
/** Your code goes here 😎 */Puedes usar WASP desde la línea de comandos para generar clases y crear child plugins. Instala dependencias y verifica la CLI:
cd /path/to/your/wordpress-site/wp-content/plugins/wasp
composer install
php cli/wasp listEjemplo rápido:
php cli/wasp create:post_type "Book"-
project:newCrea un nuevo child plugin que hereda de WASP. -
project:renameRenombra cadenas y archivos en este plugin usando la configuración existente.
-
create:admin_pageCrea una clase para Página de Administración. -
create:admin_subpageCrea una clase para Subpágina de Administración. -
create:setting_fieldsCrea una clase para Setting Fields. -
create:post_typeCrea una clase para Custom Post Type. -
create:meta_boxCrea una clase para Meta Box. -
create:taxonomyCrea una clase para Taxonomy. -
create:term_metaCrea una clase para Term Meta. -
create:user_metaCrea una clase para User Meta. -
create:shortcodeCrea una clase para Shortcode y su template. -
create:custom_columnsCrea una clase para Custom Columns.
Cada comando genera archivos base en el directorio correspondiente y registra la clase en inc/classes.php. Consulta Wasp Cli para ejemplos completos, --dry-run, uso con <project> y autocompletado.
WASP es un programa de código abierto y se distribuye bajo licencia GNU General Public License v2.0.
Happy coding!