Aprende a crear bloques de Gutenberg con ACF

Lo primero que necesitarás será comprar el plugin ACF Pro desde su página ofiacial, una vez que lo tengas deberás instalarlo en a pestaña plugins->añadir nuevo.

Una vez instalado y activado le pondrás la licencia obtenida y con eso todo esta listo para comenzar. Pues vamos con ello.

Cargaremos nuestro proyecto en el IDE o cualquier otra programa que uses para este fin. Nos vamos a la carpeta plugins situado en wp-content y creamos un directorio con el nombre que le vayas a dar al plugin de tus bloques, en mi caso manager-block.

Dentro del directorio creamos un archivo con el mismo nombre que el directorio “manager-block.php” y en el le pondremos entre comentarios lo siguiente.

/**
 * Plugin Name: Manager Block
 * Description: Plugin premium para la creación de bloques Gutenberg con ACF y panel de administración.
 * Version: 1.0.0
 * Author: Tu nombre
 * License: GPL2+
 */

defined('ABSPATH') || exit;

Con estas lineas de código nuestro plugin ya deberá de aparecer y podremos activarlo, aunque de momento este vació y no haga nada. La linea defined(‘ABSPATH’) || exit; su propósito principal es impedir el acceso directo a ese archivo PHP desde el navegador.

define('MB_PLUGIN_PATH', plugin_dir_path(__FILE__));
define('MB_PLUGIN_URL', plugin_dir_url(__FILE__));

require_once MB_PLUGIN_PATH . 'includes/class-loader.php';

use ManagerBlock\ManagerBlock;

ManagerBlock::init();

Las dos primeras lineas definen dos constantes globales que apuntan a la ubicación física y la URL de tu plugin. Esto permite que otros archivos dentro de tu plugin carguen recursos sin tener que adivinar las rutas.

  • require_once: Incluye el archivo, y si ya fue incluido, lo ignora.
  • MB_PLUGIN_PATH . 'includes/class-loader.php': Utiliza la constante de ruta definida antes para construir la dirección exacta del archivo, que probablemente contenga la clase principal del plugin o un cargador de clases.
  • use ManagerBlock\ManagerBlock;: Indica que el código usará la clase ManagerBlock que pertenece al espacio de nombres ManagerBlock. Esto evita conflictos de nombres con otras clases de WordPress o de otros plugins.
  • ManagerBlock::init();: Llama a un método estático llamado init() (inicializar) dentro de la clase ManagerBlock. Este método es el punto de entrada principal donde se configuran los hooks de WordPress, se registran los bloques y se pone en marcha toda la funcionalidad del plugin.

Y asi termina nuestro primer archivo para aprender a realizar un plugin para gutenberg con ACF Pro.