Impedir actualizaciones y borrado de entradas después de un tiempo

Cuenta-atrás-4-dias

Se me ocurren pocas situaciones en que sea útil este truco, pero seguro que a más de uno se le ha ocurrido alguna vez cómo se haría para que, pasado un tiempo determinado, nadie pueda modificar o borrar una entrada.

Así que si le vas a sacar partido a este truco solo tienes que añadir el siguiente código a tu plugin personal:

//Desactivar edición de entradas tras un tiempo determinado
function prohibido_editar( $allcaps, $cap, $args ) {
// Salto si no vamos a editar o borrar una entrada ...
    if( 'edit_post' != $args[0] && 'delete_post' != $args[0]
      // ... o si el usuario es administrador
      || !empty( $allcaps['manage_options'] )
      // ... o si el usuario ya no puede editar entradas
      || empty( $allcaps['edit_posts'] ) )
        return $allcaps;
    // Se cargan los datos de la entrada:
    $post = get_post( $args[2] );
    // Salto si la entrada no está aún publicada:
    if( 'publish' != $post->post_status )
        return $allcaps;
    //si la entrada tiene más de 30 días (cámbialo a lo que quieras)…
    if( strtotime( $post->post_date ) < strtotime( '-30 day' ) ) {
        //entonces impedimos que se pueda editar.
        $allcaps[$cap[0]] = FALSE;
    }
    return $allcaps;
}
add_filter( 'user_has_cap', 'prohibido_editar', 10, 3 );

Y ya está, solo tienes que cambiar la cadena -30 day al número de días que tu elijas.

Bonito truco de Smhmic en WPbeginner.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en los emoticonos para valorarlo!

Promedio de puntuación 0 / 5. Total de votos: 0

Hasta ahora ¡no hay votos!. Sé el primero en valorar este contenido.

Ya que has encontrado útil este contenido...

¡Sígueme en los medios sociales!

¡Siento que este contenido no te haya sido útil!

¡Ayúdame a mejorar este contenido!

Por favor, dime, ¿cómo puedo mejorarlo?

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

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado. ¡Ah! ¿te funciona? pues entonces no he dicho nada :)

Sobre el autor

3 comentarios en “Impedir actualizaciones y borrado de entradas después de un tiempo”

  1. N'gaby de Santa Cirila

    Un caso en el que puede ser útil, utilizas wordpress como blog de aula en un curso online, (o como LMS), pones una fecha limite para la entrega de un trabajo (un articulo) y permites la edicion solo hasta esa fecha limite (por ejemplo el fin del curso) Muy interesante!!

Deja un comentario

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

Información base sobre privacidad:
- Responsable: Fernando Tellado ([email protected])
- Fin del tratamiento: Moderación de comentarios para evitar spam
- Legitimación: Tu consentimiento
- Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
- Derechos: Acceso, rectificación, portabilidad, olvido

 

Ir arriba
Ir al contenido