Impedir publicar si no hay una imagen destacada

Tiempo estimado de lectura: 3 minutos

 

Impedir publicar si no hay una imagen destacada en un artículo

En esta ocasión vamos a ver cómo podemos impedir publicar si no hay una imagen destacada.

Si tienes un blog en tu página web, habrás visto que a la hora de escribir un artículo tienes la opción de agregar o no, una imagen destacada para dicho artículo. Si eres tú el único que escribe en tu blog, seguramente no se te olvidará insertar dicha imagen destacada, pero si tienes a más gente que que escribe en tu blog, seguramente te habrá pasado alguna vez que alguien se olvida de insertar una imagen destacada en su artículo.

Código que vamos a utilizar para impedir publicar si no hay una imagen destacada

Para evitar que se te escape algún artículo sin su imagen destacada, podemos utilizar un código como el siguiente.

function comprobar_imagen_destacada( $post_id ) {
if( get_post_type( $post_id ) != 'post' )
return;
if ( ! has_post_thumbnail( $post_id ) ) {
set_transient( "tiene_imagen", "no" );
remove_action( 'save_post', 'comprobar_imagen_destacada' );
wp_update_post( array( 'ID' => $post_id, 'post_status' => 'draft' ) );
// volvemos a activar el hook
add_action( 'save_post', 'comprobar_imagen_destacada' );
} else {
delete_transient( "tiene_imagen" );
}
}
function mostrar_error_no_hay_imagen() {
if ( get_transient( "tiene_imagen" ) == "no" ) {
echo "<div id='message' class='error'><p><strong>Para publicar este artículo, debes añadir una imagen destacada, mientras tanto, el artículo se ha guardado correctamente.
</strong></p></div>";
delete_transient( "tiene_imagen" );
}
}
add_action( 'save_post', 'comprobar_imagen_destacada' );
add_action( 'admin_notices', 'mostrar_error_no_hay_imagen' );

Qué hace este código

En primer lugar, creamos una función para comprobar si el artículo tiene una imagen destacada (comprobar_imagen_destacada). A continuación prepararemos un mensaje de error (tiene_imagen) y creamos una acción que revise al guardar el artículo, si este tiene una imagen destacada, si no tiene esta imagen, directamente no guardará el artículo y le cambiará su estado a borrador (draft).

A continuación vuelve a hacer una comprobación de la imagen destacada, y si la encuentra, entonces la muestra, pero si no la encuentra, entonces mostrará un mensaje de error (Para publicar este artículo, debes añadir una imagen destacada, mientras tanto, el artículo se ha guardado correctamente.)

Dónde tenemos que poner este código

A estas alturas de la película, ya sabrás dónde podemos colocar este código, y también sabrás que yo soy partidario de ponerlo en un plugin de snippets de código.

 


¿Te ha servido este artículo?, DALE UNA CERVECITA FRESQUITA. 0

[whatsapp]

¿Qué te ha parecido el artículo?. Házmelo saber en los comentarios que tienes más abajo. Estoy deseando leerte.

Por último, si crees que este artículo puede ser interesante para algún amigo tuyo, te agradecería enormemente que lo compartieras con él y con todo el mundo a través de las Redes Sociales.

Puntúa este artículo:
[Total: 0 - Promedio: 0]

Puede que también te interese...

Deja una respuesta

Información básica sobre protección de datos
Responsable: Jose González Bueno.
Finalidad: Moderación y publicación de comentarios.
Destinatarios: No se comunican datos a terceros, salvo por imperativo legal.
Derechos: Tienes derecho a acceder, rectificar, exportar y suprimir tus datos.

Tu dirección de correo electrónico no será publicada.

He leído y acepto la política de privacidad de este sitio. *