WordPress

Cómo restablecer/vaciar enlaces permanentes WordPress

¿Está buscando una manera de vaciar o restablecer los enlaces permanentes una vez cada hora? ¿Cómo restablecer/vaciar enlaces permanentes WordPress? Es posible que haya un complemento para esto. Sin embargo, hemos creado un fragmento de código rápido que puede usar para vaciar enlaces permanentes una vez por hora en el trabajo cron en WordPress.

Cómo restablecer/vaciar enlaces permanentes WordPress

¿Alguna vez realizó cambios en la estructura de enlaces permanentes de su sitio de WordPress y descubrió que esos cambios no se reflejaban en la URL?

Este punto es importante, especialmente si depende del SEO y desea asegurarse de que los motores de búsqueda indexen correctamente las URL de su sitio web.

Publicaciones relacionadas

En este artículo, detallaremos una solución implementando un trabajo cron que vacía automáticamente los enlaces permanentes en WordPress una vez por hora. Por lo tanto, esto asegura que cualquier cambio en su estructura de enlaces permanentes se regenere oportunamente.

Restablecer/limpiar la estructura de enlaces permanentes en Dashboard

Si utiliza un complemento de caché para WordPress, se recomienda desactivarlo.

  • Vaya al menú Administrador, haga clic en Configuración > Enlaces permanentes
  • Luego, cuando esté en la página Configuración de enlaces permanentes, observe la estructura que ha seleccionado, para que pueda volver a colocarla después de vaciarla. Seleccione otra estructura, como la configuración Simple, y haga clic en el botón Guardar cambios.
  • Por último, cuando se actualiza la página, la estructura de su enlace permanente se restablece (o se regenera). Simplemente seleccione su configuración original y guárdela nuevamente.

Vaciar o restablecer usando script en functions.php

Para verificar que se están vaciando los enlaces permanentes, simplemente agregue un comentario justo antes de # END WordPress en el archivo .htaccess. Una vez que se eliminen los enlaces permanentes, el comentario desaparecerá.

Instrucciones de uso:

Todo lo que tienes que hacer es agregar este código al archivo functions.php de tu tema o en un complemento específico del sitio:


function wpbaulphp_flush_permalinks_cron() {
if ( ! wp_next_scheduled( 'wpbaulphp_flush_permalinks_event' ) ) {
wp_schedule_event( time(), 'hourly', 'wpbaulphp_flush_permalinks_event' );
}
}
add_action( 'wp', 'wpbaulphp_flush_permalinks_cron' );

function wpbaulphp_flush_permalinks() {
flush_rewrite_rules();
}
add_action( 'wpbaulphp_flush_permalinks_event', 'wpbaulphp_flush_permalinks' );

El fragmento de código proporcionado permite que una tarea cron en WordPress vacíe automáticamente los enlaces permanentes una vez por hora. Ahora vamos a analizar paso a paso para entender cómo funciona.

La primera función, wpbaulphp_flush_permalinks_cron()

  • Tenemos que verificar si el evento programado wpbaulphp_flush_permalinks_event ya está configurado. De lo contrario, programamos el evento para que se ejecute cada hora usando la función wp_schedule_event().
  • El primer argumento, time(), establece la hora inicial del evento en la hora actual.
  • Veamos el segundo argumento, «hourly«, indica que el evento debe activarse cada hora.
  • Finalmente, el tercer argumento, ‘wpbaulphp_flush_permalinks_event‘, especifica el nombre del evento que se programará.
if ( ! wp_next_scheduled( 'wpbaulphp_flush_permalinks_event' ) ) {
wp_schedule_event( time(), 'hourly', 'wpbaulphp_flush_permalinks_event' );
}

Agregar Gancho «wp«

A continuación, agregamos un gancho de acción ‘wp‘ para ejecutar la función wpbaulphp_flush_permalinks_cron(). El gancho ‘wp‘ se activa al comienzo de cada solicitud de WordPress. Al adjuntar nuestra función a este enlace, nos aseguramos de que el trabajo cron se inicialice correctamente.

add_action( 'wp', 'wpbaulphp_flush_permalinks_cron' );

Segunda función, wpbaulphp_flush_permalinks()

Debemos de definir la acción que se realizará cuando ocurra el evento wpbaulphp_flush_permalinks_event. En este caso, llama a la función flush_rewrite_rules().

Esta función vacía y regenera las reglas de reescritura de WordPress, incluidos enlaces permanentes, tipos de publicaciones personalizadas y reglas de reescritura definidas por complementos.

flush_rewrite_rules();

Gancho de accion ‘wpbaulphp_flush_permalinks_event’

Por último, agregamos otro gancho de acción, ‘wpbaulphp_flush_permalinks_event‘, al que adjuntamos nuestra función wpbaulphp_flush_permalinks() usando add_action(). Esto garantiza que siempre que ocurra el evento programado, se ejecutará la función flush_rewrite_rules().

add_action( 'wpbaulphp_flush_permalinks_event', 'wpbaulphp_flush_permalinks' );

Cómo restablecer/vaciar enlaces permanentes WordPress: Conclusiones

Al combinar estos fragmentos de código, podemos configurar un trabajo cron que vacía los enlaces permanentes en WordPress automáticamente una vez por hora.

Esto es útil en escenarios donde ocurren con frecuencia cambios en las reglas de reescritura o enlaces permanentes, como cuando se desarrolla o actualiza un complemento o tema.

Para agregar estos códigos podemos usar complementos gratuitos de Wordpress por ejemplo: Code Snippets

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.

Deja una respuesta

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

Botón volver arriba