Cómo Crear un Plugin Personalizado y Acelerar la Velocidad de WordPress

Los Beneficios de un Plugin Personalizado por un Experto en WordPress

Uno de los principales beneficios del plugin personalizado es la capacidad de personalizar completamente la funcionalidad de un sitio web. Como experto en WordPress, puedo adaptar estos plugins a las necesidades específicas de mis clientes, lo que no es posible con plugins genéricos.

A continuación, te guiaré a través de los pasos para crear tu propio plugin:

Paso 1: Preparación

Antes de comenzar, asegúrate de tener acceso a tu servidor web y a los archivos de tu sitio de WordPress. Puedes hacer esto a través de FTP o el administrador de archivos proporcionado por tu proveedor de alojamiento.

Paso 2: Creación de la Carpeta del Plugin Personalizado

  1. Accede a la carpeta de tu sitio de WordPress en el servidor.
  2. Dirígete a la siguiente ubicación: wp-content/plugins.
  3. Crea una nueva carpeta con un nombre descriptivo para tu plugin. Por ejemplo, «mi-plugin-acelerador».

Paso 3: Creación del Archivo Principal del Plugin

  1. En la carpeta que acabas de crear, crea un archivo PHP con el mismo nombre que la carpeta. Por ejemplo, «mi-plugin-acelerador.php«.
  2. Abre este archivo en un editor de texto o un entorno de desarrollo.

Paso 4: Estructura Básica del Plugin

Dentro del archivo PHP de tu plugin, agrega la estructura básica del plugin:

<?php
/*
Plugin Name: Mi Plugin Acelerador
Description: Un plugin personalizado para acelerar WordPress.
Version: 1.0
Author: Tu Nombre
*/

// Aquí irán las funciones personalizadas para acelerar WordPress.
?>

Paso 5: Agregar Funciones Personalizadas

A continuación, puedes agregar las funciones personalizadas que desees para acelerar WordPress. Esto puede incluir la optimización de consultas de la base de datos, la implementación de caché o cualquier otra optimización que desees realizar. Por ejemplo:

Desactiva la REST API con una función en Plugin Personalizado

Desactivar la REST API en WordPress mediante una función puede ser una medida de seguridad importante en ciertos casos. Aquí hay algunas razones por las que podrías considerar desactivar la REST API utilizando una función en tu sitio:

  1. Privacidad y Confidencialidad: La REST API en WordPress puede exponer información del sitio, como publicaciones, páginas y usuarios, de forma pública. Si necesitas mantener la privacidad y la confidencialidad de ciertos datos, desactivar la REST API puede ser esencial.
  2. Seguridad: La REST API puede ser vulnerable a ataques si no se asegura adecuadamente. Al desactivarla, reduces el riesgo de que los atacantes exploren o abusen de posibles vulnerabilidades de seguridad.
  3. Cumplimiento de Normativas: En algunos casos, especialmente en sitios web que manejan información sensible o datos de usuarios, es necesario cumplir con regulaciones de privacidad, como el Reglamento General de Protección de Datos (RGPD) en la Unión Europea. Desactivar la REST API puede ayudar a cumplir con ciertos aspectos de estas regulaciones.
  4. Reducción de Sobrecarga: Si no estás utilizando la REST API en tu sitio, mantenerla activa puede generar una carga innecesaria en el servidor. Desactivarla puede contribuir a un mejor rendimiento y velocidad de carga.
add_filter('json_enabled', '__return_false');
add_filter('json_jsonp_enabled', '__return_false');


Deshabilite Emojis en WordPress con código

Desactivar los emojis en WordPress puede ser una práctica útil en ciertas situaciones por diversas razones:

  1. Carga más rápida de la página: Los emojis son archivos adicionales que deben cargarse con cada página. Al desactivarlos, puedes acelerar la carga de tu sitio web, lo que es beneficioso para la experiencia del usuario y el SEO.
  2. Ahorro de ancho de banda: Cada vez que se descargan emojis, se utiliza ancho de banda, lo que puede aumentar los costos de alojamiento si tienes un sitio web con mucho tráfico. Desactivarlos reduce el uso de ancho de banda.
  3. Simplificación del código: Eliminar el código relacionado con emojis en tu sitio puede hacer que el código fuente sea más limpio y más fácil de mantener, lo que puede ser beneficioso para desarrolladores y diseñadores.
  4. Mejora de la compatibilidad con navegadores: En algunos casos, los emojis pueden no mostrarse correctamente en todos los navegadores, lo que puede afectar la apariencia de tu sitio. Desactivarlos asegura una visualización más consistente.
  5. Optimización de recursos: Si estás trabajando en un sitio con recursos limitados, como un servidor compartido, desactivar los emojis puede ayudar a optimizar el uso de recursos y garantizar que tu sitio funcione sin problemas.
// Desactivar emojis en WordPress
function desactivar_emojis() {
    remove_action('wp_head', 'print_emoji_detection_script', 7);
    remove_action('wp_print_styles', 'print_emoji_styles');
    remove_action('admin_print_scripts', 'print_emoji_detection_script');
    remove_action('admin_print_styles', 'print_emoji_styles');
    remove_filter('the_content_feed', 'wp_staticize_emoji');
    remove_filter('comment_text_rss', 'wp_staticize_emoji');
    remove_filter('wp_mail', 'wp_staticize_emoji_for_email');
}

add_action('init', 'desactivar_emojis');

Paso 6: Activar el Plugin

  1. Accede al panel de administración de WordPress.
  2. Ve a «Plugins» en el menú de la izquierda.
  3. Busca tu plugin por su nombre («Mi Plugin Acelerador») y actívalo.

Paso 7: Pruebas y Ajustes

Una vez activado, tu plugin personalizado comenzará a ejecutar las funciones que hayas definido. Realiza pruebas en tu sitio para asegurarte de que esté funcionando correctamente y ajusta las funciones según sea necesario.

Este es un enfoque personalizado para acelerar WordPress y te da un control total sobre las optimizaciones que deseas implementar. Asegúrate de que las funciones estén bien redactadas y optimizadas para obtener los mejores resultados y atraer a clientes a tu sitio al mejorar la experiencia del usuario.

Mejorar el Escritorio del Panel de Administración:

Como personalizarlo y quitar lo que te molesta

Si deseas crear un widget personalizado en el escritorio de WordPress que sea completamente editable desde el propio panel de administración. Aquí tienes un ejemplo de cómo puedes hacerlo:

function mostrar_widget_html() {
    $contenido_html = get_option('widget_html_contenido', '<p>Este es el contenido HTML predeterminado.</p>');
    echo $contenido_html;
}

function formulario_widget_html() {
    $contenido_html = get_option('widget_html_contenido', '<p>Este es el contenido HTML predeterminado.</p>');
    ?>
    <p>
        <label for="widget-html-contenido">Contenido HTML:</label>
        <textarea id="widget-html-contenido" name="widget-html-contenido" class="widefat" rows="10"><?php echo $contenido_html; ?></textarea>
    </p>
    <?php
}

function guardar_widget_html() {
    if (isset($_POST['widget-html-contenido'])) {
        update_option('widget_html_contenido', $_POST['widget-html-contenido']);
    }
}

function agregar_widget_html() {
    wp_add_dashboard_widget('widget_html', 'Mi Widget HTML', 'mostrar_widget_html', 'formulario_widget_html', 'guardar_widget_html');
}

add_action('wp_dashboard_setup', 'agregar_widget_html');

Mejor Rendimiento:

Los plugins personalizados están optimizados para funcionar de manera eficiente en el sitio de tu cliente, lo que se traduce en un mejor rendimiento. Puedes asegurarte de que los recursos se utilicen de manera óptima y que no haya conflictos con otros plugins.

Beneficios de un Plugin Personalizado:

  1. Personalización Total:
    • Uno de los principales beneficios de los plugins personalizados es la capacidad de personalizar completamente la funcionalidad de un sitio web. Como experto en WordPress, puedes adaptar estos plugins a las necesidades específicas de tus clientes, lo que no es posible con plugins genéricos.
  2. Seguridad Reforzada:
    • Al desarrollar plugins personalizados, puedes implementar las medidas de seguridad necesarias para proteger el sitio web de tus clientes. Esto es especialmente importante en un entorno en línea en constante evolución.
  3. Funcionalidades Específicas:
    • Los plugins personalizados permiten agregar funciones específicas que se adaptan a las necesidades únicas de tu cliente. Puedes crear herramientas personalizadas, integraciones con sistemas externos o características exclusivas que destaquen su sitio.
  4. Facilidad de Uso:
    • A través de tu experiencia en WordPress, puedes diseñar plugins personalizados que sean intuitivos y fáciles de usar para tus clientes, sin requerir conocimientos técnicos avanzados.

Desactivar las revisiones de entradas

Para desactivar las revisiones de entradas en WordPress y reducir el almacenamiento de datos innecesarios en la base de datos, puedes agregar el siguiente código en el archivo functions.php de tu tema o en un plugin de funciones personalizado:

// Desactivar revisiones de entradas function eliminar_revisiones( $num ) { return 0; } add_filter( 'wp_revisions_to_keep', 'eliminar_revisiones' );

Este código establece el número máximo de revisiones a 0, lo que significa que no se guardarán revisiones de entradas. Ten en cuenta que esto se aplica a las futuras entradas que crees. Las revisiones anteriores no se eliminarán automáticamente.

Si deseas eliminar las revisiones existentes en tu base de datos, puedes usar el siguiente código en el mismo archivo functions.php:

// Eliminar revisiones existentes de la base de datos function eliminar_revisiones_existente() { global $wpdb; $wpdb->query( "DELETE FROM $wpdb->posts WHERE post_type = 'revision'" ); } add_action( 'wp_loaded', 'eliminar_revisiones_existente' );

Este código eliminará todas las revisiones de entradas existentes en tu base de datos. Asegúrate de hacer una copia de seguridad de tu sitio antes de ejecutar este código, ya que no podrás recuperar las revisiones una vez que se eliminen.

Después de agregar estos fragmentos de código, las revisiones de entradas no se guardarán en el futuro y las existentes se eliminarán. Esto puede ayudar a reducir la sobrecarga de la base de datos y mantener tu sitio más eficiente.

Si prefieres utilizar un editor clásico o un constructor de páginas diferente, puedes desactivar Gutenberg y volver al editor anterior. Esto se puede hacer a través de un plugin llamado «Classic Editor».

Desactivar Gutenberg (Editor de Bloques)

Para desactivar el editor de bloques Gutenberg en WordPress utilizando código, puedes agregar el siguiente fragmento en el archivo functions.php de tu tema activo o en un plugin de funciones personalizado:

// Desactivar Gutenberg y cargar el editor clásico add_filter('use_block_editor_for_post', '__return_false', 10);

Este código desactivará el editor de bloques Gutenberg y restaurará el editor clásico de WordPress para todas tus publicaciones y páginas.

Si deseas una solución más versátil que permita elegir entre el editor clásico y el editor de bloques según tus necesidades, puedes utilizar el siguiente código:

// Desactivar Gutenberg por defecto add_filter('use_block_editor_for_post', 'desactivar_gutenberg_por_defecto', 10); function desactivar_gutenberg_por_defecto($can_use_editor) { global $post; // Comprueba si es una publicación o página específica en la que deseas habilitar Gutenberg if ($post->post_type === 'post' || $post->post_type === 'page') { return false; // Desactiva Gutenberg } return $can_use_editor; // Mantén el editor de bloques para otros tipos de contenido }

Con este código, Gutenberg se desactivará de forma predeterminada para las publicaciones y páginas, pero puedes habilitarlo de manera selectiva para otros tipos de contenido si lo necesitas.

Recuerda agregar estos fragmentos de código en el archivo functions.php o en un plugin de funciones personalizado, y asegúrate de hacer una copia de seguridad de tu sitio antes de realizar cambios importantes en el código.

Desactivar widgets no utilizados

Widgets no utilizados: Al igual que con los plugins, desactiva y elimina widgets en tu área de widgets que no necesitas.

Para desactivar widgets no utilizados en WordPress mediante código, puedes usar el siguiente fragmento en el archivo functions.php de tu tema activo o en un plugin de funciones personalizado:

function quitar_widgets_no_utilizados() { // Lista de IDs de widgets que deseas desactivar $widgets_a_desactivar = array( 'widget_id_1', 'widget_id_2', // Agrega más IDs de widgets que quieras desactivar ); foreach ($widgets_a_desactivar as $widget_id) { unregister_widget($widget_id); } } add_action('widgets_init', 'quitar_widgets_no_utilizados');
  1. Debes crear un array llamado $widgets_a_desactivar y agregar los IDs de los widgets que deseas desactivar. Puedes encontrar estos IDs inspeccionando el código fuente de tu página en el área de widgets o mediante un plugin que muestre los IDs de los widgets.
  2. Luego, utilizamos un bucle foreach para recorrer la lista de IDs de widgets y desactivar cada widget utilizando la función unregister_widget().
  3. Finalmente, enganchamos esta función al gancho widgets_init para que se ejecute cuando WordPress inicie los widgets.

Después de agregar este código en tu archivo functions.php o en un plugin de funciones personalizado, los widgets especificados se desactivarán y no estarán disponibles en el área de widgets de tu sitio. Recuerda hacer una copia de seguridad de tu sitio antes de realizar cambios en el código.

Puedes desactivar widgets no utilizados en el archivo functions.php de tu tema en lugar de utilizar un plugin de funciones personalizado si sabes donde están y lo que haces.

Quieres hacerlo con plugins y no usar Plugin Personalizado

Aquí te proporciono enlaces a algunos plugins populares que pueden ayudarte a realizar las acciones mencionadas en las respuestas anteriores:

  1. Para desactivar emojis en WordPress:
    • Plugin Disable Emojis: Disable Emojis
    • Este plugin te permite desactivar los emojis en tu sitio sin necesidad de editar código.
  2. Para desactivar la REST API en WordPress:
    • Plugin Disable REST API: Disable REST API
    • Este plugin te permite desactivar la REST API de WordPress de manera sencilla.

Para desactivar Gutenberg (Editor de Bloques):

  1. Classic Editor: Classic Editor
    • Este plugin te permite desactivar Gutenberg y restaurar el editor clásico de WordPress. También proporciona opciones para que los usuarios elijan entre el editor clásico y el editor de bloques.

Para gestionar las revisiones de entradas:

  1. WP Revisions Control: WP Revisions Control
    • Con este plugin, puedes controlar y limitar el número de revisiones de entradas guardadas en tu base de datos, lo que te permite gestionarlas de manera más eficiente.
  2. Optimize Database after Deleting Revisions: Optimize Database after Deleting Revisions
    • Este plugin te ayuda a eliminar las revisiones existentes de entradas en tu base de datos, lo que puede ayudar a reducir el tamaño de la base de datos y mejorar el rendimiento.

¿Tienes alguna solicitud o inquietud específica? No dudes en compartirla en la sección de comentarios. Estamos aquí para ayudarte.