Crear un plugin para WordPress que agregue una etiqueta meta de descripción en el <head>
es un proceso sencillo. Aquí tienes los pasos para hacerlo:
- Crea la estructura básica del plugin:
- En tu carpeta
wp-content/plugins/
, crea un directorio para tu plugin, por ejemplo,custom-meta-description
. - Dentro de este directorio, crea un archivo PHP llamado
custom-meta-description.php
. - Ajusta los propietarios y permisos necesarios.
- En tu carpeta
- Escribe el código del plugin:
- Abre el archivo
custom-meta-description.php
y agrega el siguiente código:
- Abre el archivo
<?php
/*
Plugin Name: Custom Meta Description
Description: Añade una etiqueta meta de descripción al head del sitio.
Version: 1.0
Author: Juan Jose Fernandez Duran
*/
if (!defined('ABSPATH')) {
exit; // Salir si se accede directamente.
}
// Función para imprimir la meta descripción en el head.
function add_custom_meta_description() {
// Puedes usar esta descripción predeterminada o generar una dinámica.
$description = 'Esta es una descripción meta personalizada para tu sitio.';
// Imprimir la etiqueta meta en el head.
echo '<meta name="description" content="' . esc_attr($description) . '">' . "\n";
}
add_action('wp_head', 'add_custom_meta_description');
- Activa el plugin:
- Ve al panel de administración de WordPress.
- Navega a Plugins > Añadir nuevo > Subir plugin.
- Sube el directorio completo o activa el plugin directamente desde la lista.
- Personaliza la descripción:
- Si deseas que la descripción sea dinámica (por ejemplo, basada en la página o publicación actual), puedes usar funciones de WordPress como
get_the_excerpt()
oget_bloginfo()
para adaptarla al contenido actual.
- Si deseas que la descripción sea dinámica (por ejemplo, basada en la página o publicación actual), puedes usar funciones de WordPress como
Ejemplo de descripción dinámica por página:
Reemplaza el contenido de la variable $description
en la función anterior con este código:
if (is_single() || is_page()) {
$description = get_the_excerpt(); // Obtener el extracto de la publicación/página.
} elseif (is_home() || is_front_page()) {
$description = get_bloginfo('description'); // Descripción del sitio.
} else {
$description = 'Esta es una descripción predeterminada.';
}
Ahora el código del plugin ajustado para que agregue la etiqueta meta de descripción solo en páginas de publicaciones individuales (is_single()
).
Código completo del plugin:
<?php
/*
Plugin Name: Custom Meta Description for Single Posts
Description: Añade una etiqueta meta de descripción al head solo en publicaciones individuales.
Version: 1.0
Author: Juan Jose Fernandez Duran
*/
if (!defined('ABSPATH')) {
exit; // Salir si se accede directamente.
}
// Función para imprimir la meta descripción solo en publicaciones individuales.
function add_custom_meta_description_single() {
if (is_single()) { // Verifica si es una publicación individual.
$description = get_the_excerpt(); // Usa el extracto de la publicación como descripción.
// Imprimir la etiqueta meta en el head.
echo '<meta name="description" content="' . esc_attr($description) . '">' . "\n";
}
}
add_action('wp_head', 'add_custom_meta_description_single');
¿Cómo funciona?
is_single()
: La función verifica si la página actual es una publicación individual.get_the_excerpt()
: Obtiene el extracto de la publicación actual. Si no hay un extracto definido, WordPress generará uno automáticamente a partir del contenido de la publicación.esc_attr()
: Asegura que el contenido de la descripción sea seguro para imprimir en HTML.
Instrucciones para usarlo:
- Crea un directorio llamado
custom-meta-description-single
dentro dewp-content/plugins/
. - Guarda el archivo con el nombre
custom-meta-description-single.php
en esa carpeta. - Sube o activa el plugin desde el panel de administración de WordPress.
Cuando visites una publicación individual, verás que la meta descripción personalizada aparece en el <head>
. Para las demás páginas, no se imprimirá nada