Cómo crear un complemento simple para WordPress

WordPress es el favorito de muchas personas y con razón. Es increíblemente fácil de usar, gratuito (o de código abierto), flexible y, lo mejor de todo, bastante extensible. Gracias a los complementos, puede extender WordPress para agregar prácticamente cualquier funcionalidad que tenga en mente.

Si eres el principiante perfecto, los complementos de WordPress son como las aplicaciones de tu teléfono. Su teléfono funciona muy bien, pero puede agregar más funciones con las aplicaciones. Lo mismo ocurre con el Sistema de gestión de contenido (CMS) de WordPress.

La plataforma de WordPress ya es poderosa, pero puedes lograr mucho más con los complementos. Por ejemplo, los complementos de WordPress le permiten agregar funciones adicionales, como comercio electrónico, SEO, protección contra correo no deseado, formularios avanzados, redes sociales, mejor seguridad, chat en vivo, creación de páginas visuales y más.

Hay miles de complementos gratuitos y premium para WordPress repositorio oficial de plugins para WordPress ¡Solo hay más de 59,000 complementos gratuitos en el momento de escribir este artículo! Otros mercados, como CodeCanyon, ofrecen miles de complementos premium de WordPress.

Esto significa que probablemente haya un complemento para casi todas las funciones que necesita agregar a su sitio de WordPress. Sin embargo, a veces puede necesitar algo inaccesible desde las fuentes de complementos mencionadas anteriormente. En este caso, es posible que deba crear un complemento de WordPress desde cero o modificar (o bifurcar) un complemento existente.

Y en la publicación de hoy, le mostraremos cómo escribir un complemento simple para WordPress, lo cual es bueno si desea crear algo simple o sumergirse en el desarrollo de complementos. Con este preámbulo, comencemos, porque hay mucho que cubrir.

📑 Aquí podrás encontrar 👇

Escribir un complemento simple para WordPress: conceptos básicos

Antes de llegar a la parte divertida, hay algunas cosas básicas que debes saber. Como principiante, puede encontrar que crear complementos para WordPress es un hueso duro de roer. Bueno en realidad no. Cualquiera puede aprender a escribir un complemento, ya sea que tenga un título en informática o no.

Al mismo tiempo, algún conocimiento de la codificación PHP lo ayudará mucho si planea escribir más complementos en el futuro. Esto se debe a que los complementos de WordPress están codificados en el lenguaje de programación PHP. Con este conocimiento comprenderá mejor cómo Funciones PHP trabajo, lo que hace que su trabajo sea mucho más fácil. Sin embargo, estas son cosas fáciles.

Además, dependiendo de las funciones que necesite, su complemento puede contener solo un archivo o varios archivos, incluidas hojas de estilo CSS, scripts de JavaScript y archivos multimedia. Por último, es importante familiarizarse con Estándares de codificación de WordPress y mejores prácticas para permanecer en el lado seguro.

No te preocupes, porque hoy no entraremos en cosas complicadas. Le mostraré cómo escribir un complemento simple y compartiré algunas herramientas y recursos que facilitarán su trabajo. ¿Ya estabas emocionado? Realmente lo espero 🙂

Lo que necesitas para escribir un plugin para WordPress

Necesitará algunas cosas antes de escribir su complemento de WordPress. Para empezar, no pruebe su complemento en su sitio en vivo. Si algo sale mal, corre el riesgo de arruinar su sitio web, lo que puede provocar terribles interrupciones mientras arregla las cosas.

En su lugar, cree un sitio de prueba o muestra localmente o en su servidor. Así es cómo:

Alternativamente, puede usar herramientas como Local from Flywheel o DevKinsta.

También necesitará un editor de texto como Bloc de notas ++, Texto sublime, o átomoAunque no es obligatorio, puede utilizar herramientas como Placa de complemento o Complemento repetitivo para acelerar el desarrollo (más sobre eso más adelante).

Y ahora la parte divertida, escribamos un complemento simple para WordPress Para este tutorial, estoy creando un complemento que agregará un tipo personalizado de publicación a un sitio web imaginario de un restaurante que estoy construyendo.

Para los no iniciados, WordPress admite varios tipos de publicaciones, incluida la página, la publicación, los archivos adjuntos, la revisión y el menú de navegación. Para nuestro script, crearemos un complemento simple que agregue el tipo de publicación Receta personalizada. Con fines ilustrativos, llamaré a mi complemento Hot Recipes.

Buceemos recto.

Cómo escribir un complemento simple para WordPress

Cada complemento de WordPress tiene un archivo base que puede crear manualmente o con herramientas como Plugin Boilerplate o Pluginplate. Para ahorrar tiempo, usemos el Pluginplate (más intuitivo, en mi opinión) para generar el archivo principal y algunos archivos y carpetas adicionales que pueda necesitar más adelante. Sin embargo, por el momento, solo necesitamos el archivo principal.

Crear el archivo base

Dirigirse a Pluginplate.comy haga clic Crea tu complemento botón, como destacamos a continuación.

plugingenerador de complementos de wordpress para complementos personalizados

Luego complete la información para su complemento como se muestra a continuación. En la parte inferior de la página se dará cuenta módulos sección que le permite agregue características adicionales a su complemento. También tenga en cuenta que puede personalizar cada módulo haciendo clic en más (+)como se describe en detalle a continuación. Cuando esté satisfecho, haga clic en Generar enchufar botón:

crear un complemento personalizado

Luego haga clic Descargar y guarde su complemento en su computadora.

Ahora tenemos todos los archivos básicos que necesitamos, incluido el archivo principal. Pero no dejes que entren las burbujas todavía, nuestro complemento no hará nada tal como está. Necesitamos agregar el código que se ejecutará cuando activemos el complemento. Basado en nuestro ejemplo, mi archivo principal es recetas-calientes.php, que es el archivo que editaremos en la siguiente sección.

Agrega características

Descubrir recetas-calientes.php zip, extraiga la carpeta ZIP que descargó de Pluginplate:

Dentro de la carpeta, debería ver su archivo principal, que en nuestro caso, nuevamente, es recetas-calientes.php:

Puede ver un montón de otros archivos dentro de la carpeta de complementos, pero no los necesitamos en este momento. Luego agreguemos algunas características al archivo base. Abra el archivo principal (recetas-calientes.php) en su editor de texto favorito (yo uso Notepad ++).

Verá el siguiente código o algo similar dependiendo de cómo llenó el formulario en el Pluginplate:

<?php
/**
* Hot Recipes
*
* @package HOTRECIPES
* @author Freddy
* @license gplv2-or-later
* @version 1.0.0
*
* @wordpress-plugin
* Plugin Name: Hot Recipes
* Plugin URI: https://vistamedia.me
* Description: The Hot Recipes WordPress plugins adds a custom post type suitable for restaurants.
* Version: 1.0.0
* Author: Freddy
* Author URI: https://vistamedia.me
* Text Domain: hot-recipes
* Domain Path: /languages
* License: GPLv2 or later
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
*
* You should have received a copy of the GNU General Public License
* along with Hot Recipes. If not, see <https://www.gnu.org/licenses/gpl-2.0.html/>.
*/

// Exit if accessed directly.
if ( ! defined( 'ABSPATH' ) ) exit;

// Plugin name
define( 'HOTRECIPES_NAME', 'Hot Recipes' );

// Plugin version
define( 'HOTRECIPES_VERSION', '1.0.0' );

// Plugin Root File
define( 'HOTRECIPES_PLUGIN_FILE', __FILE__ );

// Plugin base
define( 'HOTRECIPES_PLUGIN_BASE', plugin_basename( HOTRECIPES_PLUGIN_FILE ) );

// Plugin Folder Path
define( 'HOTRECIPES_PLUGIN_DIR', plugin_dir_path( HOTRECIPES_PLUGIN_FILE ) );

// Plugin Folder URL
define( 'HOTRECIPES_PLUGIN_URL', plugin_dir_url( HOTRECIPES_PLUGIN_FILE ) );

/**
* Load the main class for the core functionality
*/
require_once HOTRECIPES_PLUGIN_DIR . 'core/class-hot-recipes.php';

/**
* The main function to load the only instance
* of our master class.
*
* @author Freddy
* @since 1.0.0
* @return object|Hot_Recipes
*/
function HOTRECIPES() {
	return Hot_Recipes::instance();
}

HOTRECIPES();

Bien, todo se ve muy bien. El código anterior le indicará a WordPress el nombre del complemento, así como la versión, el autor, la licencia y otros detalles. No necesitas editar nada. Pasemos al siguiente paso.

Justo debajo del código anterior, agregue el siguiente código:

/**
 * Registers the recipes post type.
 */
function hot_recipes_register_post_types() {

	// Set UI labels for the recipes post type.
	$labels = array(
		'name' => _x( 'Recipes', 'Post Type General Name', 'hot-recipes' ),
		'singular_name' => _x( 'Recipe', 'Post Type Singular Name', 'hot-recipes' ),
		'menu_name' => __( 'Recipes', 'hot-recipes' ),
		'parent_item_colon' => __( 'Parent Recipe', 'hot-recipes' ),
		'all_items' => __( 'All Recipes', 'hot-recipes' ),
		'view_item' => __( 'View Recipe', 'hot-recipes' ),
		'add_new_item' => __( 'Add New Recipe', 'hot-recipes' ),
		'add_new' => __( 'Add New', 'hot-recipes' ),
		'edit_item' => __( 'Edit Recipe', 'hot-recipes' ),
		'update_item' => __( 'Update Recipe', 'hot-recipes' ),
		'search_items' => __( 'Search Recipe', 'hot-recipes' ),
		'not_found' => __( 'Not Found', 'hot-recipes' ),
		'not_found_in_trash' => __( 'Not found in Trash', 'hot-recipes' ),
	);

	// Set other arguments for the recipes post type.
	$args = array(
		'label' => __( 'recipes', 'hot-recipes' ),
		'description' => __( 'Recipes.', 'hot-recipes' ),
		'labels' => $labels,
		'supports' => array(
			'title',
			'editor',
			'excerpt',
			'author',
			'thumbnail',
			'comments',
			'revisions',
			'custom-fields',
		),
		'taxonomies' => array(),
		'hierarchical' => false,
		'public' => true,
		'show_ui' => true,
		'show_in_menu' => true,
		'show_in_nav_menus' => true,
		'show_in_admin_bar' => true,
		'menu_position' => 5,
		'can_export' => true,
		'has_archive' => true,
		'exclude_from_search' => false,
		'publicly_queryable' => true,
		'capability_type' => 'post',
		'show_in_rest' => true,
	);

	// Registes the recipes post type.
	register_post_type( 'recipes', $args );

}
add_action( 'init', 'hot_recipes_register_post_types' );

El código anterior simplemente registra nuestras "recetas" personalizadas de tipo publicación con una variedad de opciones. También agrega funciones como soporte para revisiones, campos personalizados, extractos, comentarios, imagen destacada, etc. Estas son las características que verá dentro del editor de publicaciones al agregar una nueva receta.

Oblicuo: Ahora, no me preocuparía demasiado por la sintaxis en este punto como principiante, porque está más allá del alcance de la publicación de hoy. Pero con algún conocimiento de PHP, comprenderá cada parte del código anterior y lo que hace cada parte. Además, hay muchos recursos y códigos para aprender y practicar en Internet.

Comprime tu carpeta con complementos

Guarde todos sus cambios. Comprimir recetas calientes carpeta (esta es la carpeta donde encontraste recetas-calientes.php archivo principal que acabamos de editar) en un recetas-calientes.zip copia de seguridad (en una Mac es tan fácil como hacer clic derecho, comprimir un archivo, y en una PC creo que es muy similar) Solo asegúrese de que su carpeta esté guardada como una extensión .ZIP o el complemento no se instalará.

Luego inicie sesión en su sitio de prueba y vaya a Complementos> Agregar nuevoComo se muestra abajo.

Luego haga clic Subir complemento botón, seleccione la carpeta zip de su complemento desde su computadora y haga clic en Instalar ahora:

El siguiente, activas el complemento:

Ahora, si revisa su menú administrativo de WordPress, notará nuestro nuevo Recepciones tipo de publicación, complementado con la posibilidad de añadir nuevas recetas:

¡Felicitaciones por escribir su primer complemento simple! Con esta introducción puedes ir más allá y jugar con el código para ver qué puedes obtener. También puede explorar el código fuente de otros complementos (todos los complementos de WordPress son de código abierto) para obtener más información.

Ahora todo lo que necesita son algunos recursos más (ver Guía de complementos) y mucha práctica y en poco tiempo codificarás como la leyenda que eres.


Programar y escribir complementos para WordPress puede parecer abrumador al principio, especialmente como principiante con las herramientas adecuadas y algunos recursos de capacitación, puede desarrollar complementos como un jefe en muy poco tiempo. Solo se necesita un poco de codificación y determinación y ya está a mitad de camino.

Espero que este tutorial lo guíe en la dirección correcta cuando se trata de comprender los complementos. Esta publicación debería servir como un paso hacia el desarrollo de complementos sofisticados de WordPress que hagan lo que quieras. No se detenga allí, consulte los recursos que recomendé anteriormente para aumentar su conocimiento sobre el desarrollo de complementos de WordPress.

Si encuentra útil este tutorial o si tiene algo más que agregar, nos encantaría saberlo. Por favor comparte tus pensamientos en la sección de comentarios. ¡Nos vemos!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir