Skip to content

CommandCreateMetaBox

rogertm edited this page Jun 20, 2025 · 2 revisions

$ php cli/wasp create:meta_box

Descripción

Crea una nueva clase de Meta Box utilizando stubs y la configuración del proyecto.

Uso

create:meta_box [options] [--] <name> <screen> [<project>]

Argumentos

  • name Nombre del Meta Box (ej: "My Custom Field")
  • screen Pantalla donde debe aparecer el Meta Box o slug del Custom Post Type (ej: wasp-book)
  • project Slug del proyecto donde se debe crear el Meta Box (ej: wasp-child). El valor predeterminado es wasp.

Opciones

  • --dry-run Si se especifica, solo simula la creación sin escribir archivos.
  • -h, --help Muestra la ayuda para este comando.

Ejemplo

php cli/wasp create:meta_box "Book Data" "wasp-book"

Crea un archivo en wasp/classes/meta-box/class-wasp-meta-box-book-data.php con la siguiente estructura:

<?php
namespace WASP\Meta_Box;

use WASP\Meta_Box\Meta_Box;

class Meta_Box_Book_Data extends Meta_Box
{
    public function __construct()
    {
        parent::__construct();

        $this->id           = 'wasp-book-data-custom-field';
        $this->title        = __( 'Book Data', 'wasp' );
        $this->screen       = 'wasp-book';
        $this->context      = 'advanced';
        $this->priority     = 'default';
        $this->callback_args= null;
    }

    public function fields()
    {
        $fields = array(
            // Define your custom fields here...
        );

        return apply_filters( 'wasp_book_data_custom_fields', $fields );
    }
}

Se escribe una linea de inicialización de la clase en wasp/inc/classes.php:

new WASP\Meta_Box\Meta_Box_Book_Data;

Clone this wiki locally