Post Expirator: Automatically Unpublish WordPress Posts

Descripción

The Post Expirator plugin allows you to add an expiration date to posts. pages and other content type. When your post is automatically unpublished, you can delete the post, change the status, or update the post categories.

Here’s an overview of what you can do with Post Expirator:

  • Choose expiry dates for content in any post type.
  • Select expiry dates in the right sidebar when editing posts.
  • Modify, remove or completely delete content when the expiry date arrives.
  • Modify expiry dates using «Quick Edit» and «Bulk Edit».
  • Receive email notifications when your content expires.
  • Show expiry dates in your content, automatically or with shortcodes.

Options for Expiring Posts

When your posts expire, you can perform these changes on your content:

  • Change the status to «Draft».
  • Delete the post.
  • Send the post to the Trash.
  • Change the status to «Private».
  • Enable the “Stick to the top of the blog” option.
  • Disable the “Stick to the top of the blog” option.
  • Remove all existing categories, and add new categories.
  • Keep all existing categories, and add new categories.
  • Keep all existing categories, except for those specified in this change.

Click here for more details on expiring posts.

Display the Expiry Date in Your Content

Post Expirator allows you to place automatically show the expiry date inside your articles. The expiry will be added at the bottom of your post.

Click here to see the Footer Display options.

You can use shortcodes to show the expiration date inside your posts. You can customize the shortcode output with several formatting options.

Click here to see the shortcode options.

Expiry Defaults for Post Types

Post Expirator can support any post type in WordPress. Go to Settings > Post Expirator > Defaults and you can choose default expiry options for each post type.

Click here to see the default options.

Post Expirator Email Notifications

The Post Expirator plugin can send you email notifications when your content is unpublished. You can control the emails by going to Settings > Post Expirator > General Settings.

Click here to see the notification options.

Details on How Post Expiry Works

For each expiration event, a custom cron job is scheduled. This can help reduce server overhead for busy sites. This plugin REQUIRES that WP-CRON is setup and functional on your webhost. Some hosts do not support this, so please check and confirm if you run into issues using the plugin.

Click here to see the technical details for this plugin.

Capturas

  • Añadir una fecha de caducidad a una publicación
  • Visualización de las fechas de caducidad en la pantalla de resumen de entradas
  • Pantalla de ajustes

Instalación

En esta sección se describe cómo instalar el plugin y hacerlo funcionar.

  1. Descomprimir el contenido del plugin al directorio /wp-content/plugins/post-expirator/
  2. Activar el plugin a través del menú «Plugins» en WordPress

Reseñas

17 de septiembre de 2021
Love it! Wished for the longest time that there was something like this and now I found it!
23 de septiembre de 2021
Évents calendar with post expirator resolved thanks
15 de julio de 2021
This is a great plugin for us. We have several authors, lots of categories, and many posts which are time-limited. It keeps everything current and moves it to alternative categories or deletes it as time goes on. Excellent support after reporting a minor glitch: Workaround found immediately and problem fixed in a few days. Highly recommended.
6 de mayo de 2021
An addition I would be grateful for is: Setting a default time per posts (in the defaults) For the rest awesome! Working perfectly.
Leer todas las 97 reseñas

Colaboradores y desarrolladores

«Post Expirator: Automatically Unpublish WordPress Posts» es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

«Post Expirator: Automatically Unpublish WordPress Posts» ha sido traducido a 14 idiomas locales. Gracias a los traductores por sus contribuciones.

Traduce «Post Expirator: Automatically Unpublish WordPress Posts» a tu idioma.

¿Interesado en el desarrollo?

Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.

Registro de cambios

[2.5.1] – 27 Sep 2021

  • Fixed: Default Expiration Categories cannot be unset, #94;
  • Fixed: Tidy up design for Classic Editor version, #83;
  • Fixed: All posts now carry the default expiration, #115;
  • Fixed: Error with 2.5.0 and WordPress 5.8.1, #110;
  • Fixed: Do not show private post types that don’t have an admin UI, #116;

[2.5.0] – 08 Aug 2021

  • Fixed: Appearance Widgets screen shows PHP Notice, #92;
  • Fixed: Stop the Post Expirator box from appearing in non-public post types, #78;
  • Added: Add «How to Expire» to Quick Edit, #62;
  • Changed: Settings UI enhancement, #14;
  • Fixed: Hide metabox from Media Library files, #56;
  • Added: Support for Gutenberg block editor, #10;
  • Added: Set a default time per post type, #12;

[2.4.4] – 22 Jul 2021

  • Fixed: Fix conflict with the plugin WCFM, #60;
  • Fixed: Fix the Category: Remove option, #61;

[2.4.3] – 07 Jul 2021

  • Added: Expose wrappers for legacy functions, #40;
  • Added: Support for quotes in Default expiry, #43;
  • Fixed: Default expiry duration is broken for future years, #39;
  • Fixed: Translation bug, #5;
  • Fixed: Post expiring one year early, #24;
  • Changed: Bulk and Quick Edit boxes default to current date/year, #46;

[2.4.2]

  • Fixed: Bulk edit does not change scheduled event bug, #29;
  • Fixed: Date not being translated in shortcode, #16;
  • Fixed: Bulk Edit doesn’t work, #4;

[2.4.1]

  • Fix: Updated deprecated .live jQuery reference.

[2.4.0]

  • Corrección: corregido un error de PHP con PHP 7.

[2.3.1]

  • Solución: solucionado error de PHP que se metió en algunas instalaciones.

[2.3.0]

  • Nuevo: Notificación por correo electrónico después del vencimiento de la publicación. Se puede configurar un correo electrónico global, se pueden seleccionar administradores de blogs y/o usuarios específicos basados en el tipo de contenido.
  • Nuevo: Añadida opción de vencimiento – Fijar/No fijar publicación ya está disponible.
  • Nuevo: Añadida opción de vencimiento – Enviar a la papelera ya está disponible.
  • Nuevo: Se han añadido acciones personalizadas que pueden conectarse cuando los eventos de vencimiento están programados o no programados.
  • Solución: Problemas menores de código HTML

[2.2.2]

  • Solución: La edición rápida no conservaba los ajustes del tipo de caducidad y volvía a establecer por defecto a «Borrador». Esto se ha solucionado.

[2.2.1]

  • Solución: Solucionado el problema con la edición masiva que no actualizaba correctamente la fecha de caducidad.

[2.2.0]

  • New: Quick Edit – setting expiration date and toggling post expiration status can now be done via quick edit.
  • New: Bulk Edit – changing expiration date on posts that already are configured can now be done via bulk edit.
  • New: Added ability to order by Expiration Date in dashboard.
  • New: Adjusted formatting on defaults page. Multiple post types are now displayed cleaner.
  • Corrección: limpieza menor de código

[2.1.4]

  • Corrección: errores estrictos de PHP con la versión 5.4 o superior
  • Fix: Removed temporary timezone conversion – now using core functions again

[2.1.3]

  • Fix: Default category selection now saves correctly on default settings screen

[2.1.2]

  • Security: Added form nonce for protect against possible CSRF
  • Security: Fixed XSS issue on settings pages
  • New: Added check to show if WP_CRON is enabled on diagnostics page
  • Corrección: limpieza menor de código

[2.1.1]

  • New: Added the option to disable post expirator for certain post types if desired
  • Fix: Fixed php warning issue cause when post type defaults are not set

[2.1.0]

  • New: Added support for hierarchical custom taxonomy
  • New: Enhanced custom post type support
  • Fix: Updated debug function to be friendly for scripted calls
  • Fix: Change to only show public custom post types on defaults screen
  • Fix: Removed category expiration options for ‘pages’, which is currently unsupported
  • Fix: Some date calls were getting «double» converted for the timezone pending how other plugins handled date – this issue should now be resolved

[2.0.1]

  • Removes old scheduled hook – this was not done completely in the 2.0.0 upgrade
  • Limpieza de opciones antiguas

[2.0.0]

Esta es la mayor actualización de las funciones básicas de este plugin. Todos los plugins y ajustes actuales deben actualizarse a los nuevos formatos y que funcionen como se esperaba. Todas las publicaciones actualmente programadas para que caduquen en un futuro se actualizarán automáticamente al nuevo formato.

  • Nuevo: mejora de llamadas de depuración y registro
  • Nuevo: Añadida la capacidad para que una entrada caduque como «privada»
  • Nuevo: añadida la posibilidad de caducidad agregando o eliminando categorías. La antigua forma de hacer las cosas se conoce ahora como reemplazo de las categorías.
  • Nuevo: mejorado el proceso de caducidad – el plugin ya no se ejecuta en un minuto, hora u otra programación. Cada evento de expiración programa un evento único para ejecutarse, conservar los recursos del sistema y hacer las cosas más eficientes.
  • Nuevo: se puede seleccionar el tipo de evento de caducidad para cada publicación, directamente desde la pantalla de edición de publicaciones
  • Nuevo: Capacidad para establecer valores por defecto para cada tipo de publicación (incluyendo contenido personalizado).
  • Nuevo: Renombrado el valor del meta de «expiration-date» a «_expiration-date»
  • New: Revamped timezone handling to be more correct with WordPress standards and fix conflicts with other plugins
  • New: ‘Expires’ column on post display table now uses the default date/time formats set for the blog
  • Fix: Removed kses filter calls when then schedule task runs that was causing code entered as unfiltered_html to be removed
  • Fix: Updated some calls of date to now use date_i18n
  • Fix: Most (if not all) php error/warnings should be addressed
  • Fix: Updated wpdb calls in the debug class to use wpdb_prepare correctly
  • Fix: Changed menu capability option from «edit_plugin» to «manage_options»

[1.6.2]

  • Añadida la posibilidad de configurar el expirator post a ser habilitada de forma predeterminada para todos los mensajes nuevos
  • Changed some instances of mktime to time
  • Fixed missing global call for MS installs

[1.6.1]

  • Tweaked error messages, removed clicks for reset cron event
  • Switched cron schedule functions to use «current_time(‘timestamp’)»
  • Limpieza de valores por defecto del código
  • Added option to allow user to select any cron schedule (minute, hourly, twicedaily, daily) – including other defined schedules
  • Added option to set default expiration duration – options are none, custom, or publish time
  • Code cleanup – php notice

[1.6]

  • Corregido HTML no válido
  • Corregidos problemas de i18n con las fechas
  • Fixed problem when using «Network Activate» – reworked plugin activation process
  • Replaced «Upgrade» tab with new «Diagnostics» tab
  • Reworked expire logic to limit the number of sql queries needed
  • Añadida la depuración
  • Varias limpiezas de código

[1.5.4]

  • Limpieza de llamadas de funciones obsoletas

[1.5.3]

  • Fixed bug with sql expiration query (props to Robert & John)

[1.5.2]

  • Fixed bug with shortcode that was displaying the expiration date in the incorrect timezone
  • Fixed typo on settings page with incorrect shortcode name

[1.5.1]

  • Fixed bug that was not allow custom post types to work

[1.5]

  • Moved Expirator Box to Sidebar and cleaned up meta code
  • Added ability to expire post to category

[1.4.3]

  • Corregido problema con la detección multisitio 3.0

[1.4.2]

  • Added post expirator POT to /languages folder
  • Fixed issue with plugin admin navigation
  • Fixed timezone issue on plugin options screen

[1.4.1]

  • Added support for custom post types (Thanks Thierry)
  • Añadida compatibilidad con i18n (gracias Thierry)
  • Fixed issue where expiration date was not shown in the correct timezone in the footer
  • Fixed issue where on some systems the expiration did not happen when scheduled

[1.4]

NOTA: Después de actualizar, puede que tengas que restablecer los horarios cron. Siguiente aviso en pantalla si se le solicita. Los mensajes previamente programados no se actualizarán, se eliminarán referenciando la configuración de zona horaria antigua. Si desea actualizarlos, deberá actualizar manualmente el tiempo de caducidad.

  • Fixed compatability issues with WordPress – plugin was originally coded for WPMU – should now work on both
  • Added ability to schedule post expiration by minute
  • Fixed timezone – now uses the same timezone as configured by the blog

[1.3.1]

  • Fixed sporadic issue of expired posts not being removed

[1.3]

  • Expiration date is now retained across all post status changes
  • Modified date/time format options for shortcode postexpirator tag
  • Added the ability to add text automatically to the post footer if expiration date is set

[1.2.1]

  • Fixed issue with display date format not being recognized after upgrade

[1.2]

  • Changed wording from «Expiration Date» to «Post Expirator» and moved the configuration options to the «Settings» tab.
  • Añadido código etiqueta [postexpirator] para mostrar la fecha de vencimiento de post dentro del post
    agregó nueva opción para el formato predeterminado
  • Fixed bug where expiration date was removed when a post was auto saved

[1.1]

  • Expired posts retain expiration date

[1.0]

  • Versión inicial