Locking Posts Updates And Deletion For Older Published Posts In Wordpress

Cómo bloquear las actualizaciones y la eliminación de publicaciones de WordPress después de un período establecido

Administrar un sitio web de WordPress con varios autores a veces puede resultar complicado. Existen complementos para administrar el flujo de trabajo editorial, pero puede encontrarse con situaciones en las que necesite soluciones específicas para un mejor control de su sitio de WordPress. Recientemente, ayudamos a un usuario a encontrar una solución de este tipo. Querían bloquear las actualizaciones y la eliminación de publicaciones de WordPress después de un período de tiempo establecido para todos los usuarios (incluidos los editores) después de un período de tiempo establecido. Por ejemplo, si un artículo publicado tiene 30 días o más, los editores no pueden editarlo ni eliminarlo. Solo los administradores pueden editar este mensaje. En este artículo, le mostraremos cómo bloquear la edición, las actualizaciones y la eliminación de publicaciones después de un período de tiempo establecido en WordPress.

Todo lo que necesita hacer es agregar el siguiente código en el archivo functions.php de su tema o en un complemento específico del sitio. function wpbeginner_restrict_editing ($ allcaps, $ cap, $ args) {// Rescatar si no pedimos editar o eliminar una publicación … if (‘edit_post’! = $ args[0] && ‘Eliminar mensaje’! = $ argumentos[0] // … o el usuario es admin || ! vacío ($ allcaps[‘manage_options’] ) // … o el usuario ya no puede editar el mensaje || vacío ($ allcaps[‘edit_posts’] )) devuelve $ allcaps; // Cargue los datos del artículo: $ post = get_post ($ args[2] ); // Rescatar si el artículo no se publica: if (‘publish’! = $ Post-> post_status) return $ allcaps; // si el mensaje tiene más de 30 días. Modifíquelo para satisfacer sus necesidades si (strtotime ($ post-> post_date)[$cap[0]]= FALSO; } return $ allcaps; } add_filter (‘user_has_cap’, ‘wpbeginner_restrict_editing’, 10, 3); Esta función verifica si el usuario tiene la capacidad de editar o eliminar publicaciones. Después de eso, verifica el estado de la publicación. Si se publica un artículo y tiene más de 30 días, se elimina la capacidad del usuario para editar y eliminar el artículo. Si se publica un artículo, pero no tiene más de 30 días, los usuarios con la capacidad de editar los artículos aún pueden editarlo. Nota: los administradores pueden editar y eliminar publicaciones en cualquier momento. Esperamos que este artículo haya ayudado a cualquiera que busque bloquear la edición, actualización y eliminación de publicaciones en WordPress después de un período de tiempo determinado. ¿Harías esto alguna vez en tu sitio? ¿Qué casos de uso puede ver para algo como esto? Háganos saber en los comentarios a continuación.
La fuente:
Smhmic

Leave a Reply