Pablo López: Requerir imagen destacada #MaratonWP #10AniversarioAyudaWP

Seguimos con otro gran artículo del #MaratonWP que estaremos realizando durante todo el día de hoy para celebrar el 10º aniversario de Ayuda WordPress. Sigue atento que cada hora habrá sorpresas, con regalos y más trucos WordPress, y no te pierdas el hashtag de Twitter #10AniversarioAyudaWP.


En primer lugar quisiera agradecerte Fernando que hayas pensado en mi para participar en el décimo aniversario de Ayudawp, es todo un honor.

Soy de los que defiende aquello de: a veces no hace falta instalar un plugin si puedes hacer lo mismo con dos líneas de código.

Entrando un poco más en detalle en el significado de la frase, y extrapolándolo a la vida real, en prácticamente todos los proyectos web suelo agregar snippets de código al functions.php del tema o a un plugin de utilidades.

De este modo me evito instalar decenas de plugins para tareas o funcionalidades concretas, lo tengo todo en un mismo sitio.

Estos snippets son funciones útiles, que realizan acciones o tareas concretas, y que suelen utilizarse bastante o son muy genéricas y se adaptan a cualquier cliente o proyecto.

El que comparto a continuación, es un snippet que obliga a un usuario a añadir una imagen destacada. Es decir, no le dejamos publicar el post si no ha establecido una imagen, de este modo evitamos un posible despiste, y probablemente que se rompa el diseño de nuestro sitio al faltar este elemento en un listado.

Para ello, basta con añadir al functions.php el siguiente código:

function featured_image_required($hook) {

    if ( 'post.php' != $hook && 'post-new.php' != $hook ) {

        return;

    }

 

    wp_enqueue_script( 'featured-image-required', get_theme_file_uri('/js/myscript.js') );

}

add_action( 'admin_enqueue_scripts', 'featured_image_required' );

Esto simplemente encola un fichero JS en nuestro dashboard, y es ahí donde controlaremos si el usuario ha establecido la imagen o no:

jQuery(document).ready(function ($) {

    $('#post').submit(function() {

        if ($("#set-post-thumbnail").find('img').size() > 0) {

            return true;

        }else{

            alert("¡No olvides establecer una imagen destacada!");

            return false;

        }

        return false;

    });

});

Si el post tiene imagen lo publicará, en caso contrario mostrará una alerta al usuario indicando que se le ha olvidado añadir la imagen.

Espero que os haya gustado el truco y os sea útil.

Pablo López

En el mundo del desarrollo web desde 2005 y WordPressero desde 2011. Fan de WordPress y del software libre, defensor de la P mayúscula, me gusta la optimización de los desarrollos y el código limpio y bien indentado.

Desarrollo con WordPress siempre pensando en la seguridad, el rendimiento, la robustez y la escalabilidad. Intento siempre seguir las buenas prácticas y los estándares. Con la mente abierta, dispuesto a aprender y tratando de hacer cada proyecto un poco mejor que el anterior.

Actualmente trabajo como WordPress Manager en UNIR y soy autor del blog desarrollowp.com (https://desarrollowp.com) donde semanalmente comparto noticias, tutoriales, trucos y consejos sobre WordPress.

Además ayudo a organizar el grupo de meetup de Madrid WordPress y la WordCamp Madrid.

También me puedes encontrar en Twitter (https://twitter.com/desarrollowp).

VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(3 votos, promedio: 5)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

1 comentario en “Pablo López: Requerir imagen destacada #MaratonWP #10AniversarioAyudaWP”

  1. Hola Pablo, muchas gracias por tu aportación. También soy partidario de añadir código a cargar WordPress de plugins pero lamentablemente no soy programador pero si que aprovecho todas las aportaciones que se hacen sobre este tema para utilizar código.
    Cómo tengo una solicitud para escribir en mi blog voy a incluir estas lineas en mi functions.php voy a darle un vistazo a tu blog pues seguro que me voy a suscribir «El saber no ocupa lugar» y yo soy un autodidacta pues no tengo recursos para invertir en formación.

    Un cordial saludo y Feliz Año Nuevo

    Toni Herrera

Deja un comentario

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

 

Ir arriba Ir al contenido