Escaparate de publicaciones programadas

Descripción

Escaparate de publicaciones programadas te permite mostrar tus entradas programadas (futuras) en la parte visible de la web de tu sitio WordPress sin crear enlaces problemáticos a contenido sin publicar.

A diferencia de otras soluciones que enlazan con publicaciones programadas y generan errores 404 para los visitantes, este plugin muestra la información de la publicación (título, fecha, resumen, imagen destacada, categorías) sin revelar nunca el enlace permanente ni el ID de la publicación.

Características principales

  • Sin errores 404 – Nunca genera enlaces a contenido sin publicar.
  • Múltiples métodos de visualización – Utiliza shortcodes, widgets, bloques Gutenberg o API REST.
  • Totalmente personalizable – Controla qué información mostrar y su aspecto.
  • Ajustes globales con modificaciones individuales – Configura los valores por defecto una vez y personalízalos cuando sea necesario.
  • Listo para traducción – Totalmente preparado para traducciones locales.
  • Fácil de desarrollar: Amplias posibilidades de personalización.

Opciones de visualización

  • Número de publicaciones a mostrar
  • Imagen destacad (tamaño medio o miniatura).
  • Fecha de publicación programada.
  • Extracto de publicación (con núimero de palabras configurable).
  • Categorías
  • Encabezado personalizabel con etiqueta HTML seleccionable.
  • Contenido del pie personalizado para llamadas a la acción.

Opciones de apariencia

  • Estilo de contenedor de tarjeta o mínimo.
  • Dashicon, por defecto del tema o sin viñetas de lista.
  • Selector de iconos cuidadosamente seleccionados para viñetas de listas
  • Personalización del color de resalte.
  • Diseño adaptable.

Control de visibilidad

Elige quién puede ver tus publicaciones programadas:

  • Todos (público).
  • Solo usuarios conectados.
  • Solo editores y administradores.

Uso

Shortcode:

[scheduled-posts-showcase]

Con parámetros:

[scheduled-posts-showcase count="3" show_date="1" show_excerpt="1" container_style="card"]

Widget:

Añade el widget de «Escaparate de publicaciones programadas» a cualquier área de widgets desde «Apariencia Widgets».

Bloque Gutenberg:

Busca «Publicaciones programadas» en el insertador de bloques y añade al bloque a cualquier entrada o página.

API REST:

GET /wp-json/scheduled-posts-showcase/v1/scheduled-posts

Parámetros: per_page, fields, post_type, order

¿Por qué has creado este plugin?

Los plugins existentes para mostrar publicaciones programadas:

  • Están abandonados (algunos desde hace más de 10 años).
  • Enlazan a publicaciones programadas, provocando errores 404.
  • Usan funciones WordPress obsoletas.
  • No tienen características modernas, como los bloques Gutenberg.

Escaparate de publicaciones programadas soluciona todos estos problemas con una solución moderna, segura y con múltiples características.

Personalización con CSS

El plugin proporciona clases CSS semánticas para una fácil personalización.

Clases CSS disponibles

  • .sps-scheduled-posts – Contenedor principal.
  • .sps-style-card – Contenedor del estilo de tarjeta.
  • .sps-style-minimal – Contenedor del estilo mínimo.
  • .sps-scheduled-heading – Elemento de encabezado.
  • .sps-scheduled-list – Lista de publicaciones (ul).
  • .sps-list-dashicon – Lista con viñetas de Dashicon.
  • .sps-list-theme – Lista con las viñegtas por defecto del tema.
  • .sps-list-none – Lista sin viñetas.
  • .sps-scheduled-item – Cada publicación (li).
  • .sps-scheduled-icon – Viñeta para el Dashicon.
  • .sps-scheduled-thumbnail – Contenedor de la imagen destacada.
  • .sps-scheduled-title – Título de la publicación.
  • .sps-scheduled-date – Fecha de programación.
  • .sps-scheduled-excerpt – Extracto de la publicación.
  • .sps-scheduled-categories – Lista de categorías.
  • .sps-scheduled-footer – Contenido personalizado al pie.
  • .sps-no-scheduled – Mensaje de estado vacío.

Pesonalizaciones de ejemplo

/* Change font size for post titles */
.sps-scheduled-title {
    font-size: 1.1em;
}

/* Add more padding to the card container */
.sps-style-card {
    padding: 1.5em;
}

/* Custom color for the date */
.sps-scheduled-date {
    color: #666;
    font-style: italic;
}

Propiedad CSS personalizada

El color de resalte está disponible como propiedad CSS personalizada:

/* Use the accent color in your custom styles */
.my-custom-element {
    border-color: var(--sps-accent-color);
}<h3>Developer Hooks</h3>

El plugin proporciona filtros y acciones para desarrolladores para poder personalizar el comportamiento sin tener que modificar el código del plugin.

Filtros con ejemplos

spscase_query_args

Modifica los argumentos de WP_Query antes de obtener las publicaciones programadas.

add_filter( 'spscase_query_args', function( $args ) {
    // Only show posts from specific category
    $args['cat'] = 5;
    return $args;
} );

spscase_post_data

Modifica el array de datos de cada publicación antes de procesarlo.

add_filter( 'spscase_post_data', function( $post_data, $post ) {
    // Add custom field to post data
    $post_data['reading_time'] = get_post_meta( $post->ID, 'reading_time', true );
    return $post_data;
}, 10, 2 );

spscase_post_html

Modifica el resultado del HTML para cada publicación individual.

add_filter( 'spscase_post_html', function( $html, $post_data ) {
    // Add reading time after the title
    if ( ! empty( $post_data['reading_time'] ) ) {
        $badge = '<span class="reading-time">' . esc_html( $post_data['reading_time'] ) . ' min read</span>';
        $html = str_replace( '</span class="sps-scheduled-title">', '</span>' . $badge, $html );
    }
    return $html;
}, 10, 2 );

spscase_output_html

Modifica el resultado procesado completo del HTML.

add_filter( 'spscase_output_html', function( $html, $posts, $settings ) {
    // Wrap output in custom container
    return '<div class="my-custom-wrapper">' . $html . '</div>';
}, 10, 3 );

spscase_rest_post_data

Modifica los datos de publicación en las respuestas de API REST.

add_filter( 'spscase_rest_post_data', function( $post_data, $post ) {
    // Add author name to API response
    $post_data['author'] = get_the_author_meta( 'display_name', $post->post_author );
    return $post_data;
}, 10, 2 );

spscase_excerpt_length

Reemplaza el contador de palabras del extracto.

add_filter( 'spscase_excerpt_length', function( $length ) {
    // Shorter excerpts for sidebar widgets
    return 15;
} );

spscase_date_format

Reemplaza el formato de fecha (por defecto: opción date_format de WordPress).

add_filter( 'spscase_date_format', function( $format ) {
    // Show relative dates like "in 3 days"
    return 'relative';
} );

spscase_post_types

Filtra los tipos de contenido disponibles en el menú desplegable de ajustes.

add_filter( 'spscase_post_types', function( $post_types ) {
    // Remove 'page' from available post types
    unset( $post_types['page'] );
    return $post_types;
} );

spscase_cache_expiration

Modificar la duración de la caché en segundos (por defecto: 3600 = 1 hora).

add_filter( 'spscase_cache_expiration', function( $seconds ) {
    // Cache for 6 hours on high-traffic sites
    return 6 * HOUR_IN_SECONDS;
} );

spscase_allowed_footer_html

Modificar las etiquetas HTML permitidas para el contenido del pie de página.

add_filter( 'spscase_allowed_footer_html', function( $allowed_tags ) {
    // Allow button element in footer
    $allowed_tags['button'] = array(
        'class' => true,
        'type'  => true,
    );
    return $allowed_tags;
} );

Acciones con ejemplos

spscase_before_output

Se activa antes de que se muestre la lista de publicaciones programadas.

add_action( 'spscase_before_output', function( $posts, $settings ) {
    // Track impressions
    if ( function_exists( 'my_track_impression' ) ) {
        my_track_impression( 'scheduled_posts_widget' );
    }
}, 10, 2 );

spscase_after_output

Se activa después de que se genere la lista de publicaciones programadas.

add_action( 'spscase_after_output', function( $posts, $settings ) {
    // Output additional content after the list
    echo '<p class="sps-custom-note">Updated hourly</p>';
}, 10, 2 );<h3>Support</h3>

¿Necesitas ayuda o tienes sugerencias?

¿Te gusta el plugin? ¡Déjanos un comentario de 5 estrellas y así ayudas a que lo conozcan otros!

Acerca de AyudaWP.com

Somos especialistas en plugins de optimización de seguridad, SEO y rendimiento para WordPress. Creamos herramientas que solucionan problemas reales a los propietarios de sitios WordPress manteniendo los más altos estándares de programación y requisitos de accesibilidad.

Capturas

  • Visualización en la web con el estilo de tarjeta
  • Visualización en la web con el estilo mínimo
  • Página de ajustes – Opciones de visualización
  • Página de ajustes – Opciones de aspecto
  • Bloque Gutenberg en el editor
  • Configuración del widget clásico

Bloques

Este plugin proporciona 1 bloque.

  • Scheduled Posts

Instalación

  1. Sube los archivos del plugin al directorio /wp-content/plugins/scheduled-posts-showcase/, o instálalo directamente la pantalla de plugins de WordPress.
  2. Activa el plugin desde el menú «Plugins» de WordPress.
  3. Colnfigura los ajustes globales en «Herramientas Escaparate de publicaciones programadas».
  4. Añade el widget, bloque o shortcode donde quieras mostrar las publicaciones programadas.

FAQ

¿Por qué no tienen enlaces las publicaciones?

Este plugin está pensado para no crear nunca enlaces a publicaciones programadas. Los enlaces a contenido no publicado provocan errores 404 a los visitantes, lo que es malo para la experiencia del usuario y el SEO. En vez de eso, el plugin muestra información sobre la publicación para generar expectación pero sin enlaces rotos.

¿Puedo mostrar publicaciones programadas de tipos de contenido personalizados?

¡Sí! Selecciona cualquier tipo de contenido público en la página de ajustes o especifícalo en el shortcode con post_type="tu_tipo_te_contenido".

¿Cómo personalizo el aspecto?

Utiliza la página de ajustes para configurar los valores por defecto globales para la apariencia. También puedes reemplazar los ajustes para casos individuales (widget, bloque, shortcode) . Para personalizaciones avanzadas utiliza las clases CSS que te muestro más abajo.

¿Es pública la API REST?

La API REST respeta los mismos ajustes de visibilidad que los demás métodos de visualización. Si restringes la visibilidad a los usuarios registrados o editores, la API también requerirá autorización.

¿Puedo filtrar o modificar la visualización?

¡Sí! El plugin proporciona numerosos hooks para desarrolladores. Consulta la sección de hooks para desarrolladores más abajo para ver todos los filtros y acciones disponibles con ejemplos de uso.

Reseñas

No hay valoraciones para este plugin.

Colaboradores y desarrolladores

«Escaparate de publicaciones programadas» es un software de código abierto. Las siguientes personas han colaborado con este plugin.

Colaboradores

«Escaparate de publicaciones programadas» está traducido en 1 idioma. Gracias a los traductores por sus contribuciones.

Traduce «Escaparate de publicaciones programadas» 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

1.0.1

Probado hasta WordPress 7.0

1.0.0

  • Versión inicial
  • Shortcode con todas las opciones de visualización.
  • Widget clásico con configuración completa.
  • Bloque Gutenberg con vista previa ServerSideRender.
  • Endpoint de API REST con controld e visibilidad.
  • Página de ajustes globales con modelo en cascada.
  • Caché de datos transitorios con invalidación automática.
  • Amplio sistema de ganchos para desarrolladores