Soporte » Guías – Resolución de problemas » Mantener el botón de enviar para revisión

  • Resuelto yvallejo

    (@yvallejo)


    Chic@s buenos días alguien conoce alguna forma de mantener el boton de enviar para revision cuando se edita una entrada (hablando de una entrada publicada y con el rol de contributor) , ya que en este momento cuando la entrada ya esta publicada (aprobada previamente por un usuario con el rol autor) así tenga el rol contributor me sale el botón de actualizar (previamente modifique la capacidad al rol contributor para que pueda editar entradas publicadas) y lo que deseo es que alguien aprueba dicha actualización, Saludos

    Ejemplo: un usuario con el rol contributor creo una entrada y la mando para revisión, el usuario con el rol de autor la aprobo, luego se necesita hacer una actualización a esa entrada que la debe hacer el usuario con el rol de contributor pero deseo que aparezca de nuevo el boton de enviar para revisión y no el de actualizar, para que el otro rol (autor) lo vuelva y lo apruebe.

    Saludos

    • Este debate fue modificado hace 8 meses, 3 semanas por  yvallejo.
Viendo 6 respuestas - 1 de 6 (de 6 total)
  • ¿Has probado a darle permisos para editar pero no para publicar?

    Hola @cybmeta gracias por responder, el rol contributor en este caso tiene los permisos por defecto https://image.ibb.co/n95zA9/Screenshot_5.jpg a excepción del que le agregue que permite editar post publicados.

    Saludos

    Entonces no se me ocurre nada que sea así fácil y directo, igual hay que picar código.

    He hecho una búsqueda rápida y hay algunos plugins que a lo mejor te sirven, por ejemplo Revision Manager TMC. Espero que te sirva.

    Muchas Gracias @cybmeta era lo que necesitaba, un saludo desde Colombia

    Hola anexo otra solución.

    Solo es colocar este trozo de codigo en el functions.php y tener en cuenta el name del rol y si lo quieren especificamente para un custom post type.

    add_filter( 'wp_insert_post_data', 're_aprove', '99', 2 );
    function re_aprove( $data, $postarr ) {
        //check if current user is not admin
        if ( ! current_user_can( 'manage_options' ) && 'YOUR_CUSTOM_TYPE' === $postarr['post_type'] ) {
            if ( 'publish' === $data['post_status'] ) {
                $data['post_status'] = 'pending';
            }
        }
        return $data;
    }

    Solución

    Yo no lo veo buena solución, el post deja de poderse leer públicamente y el flujo editorial pasa a ser intermitente, pero si te vale, adelante.

Viendo 6 respuestas - 1 de 6 (de 6 total)
  • El debate ‘Mantener el botón de enviar para revisión’ está cerrado a nuevas respuestas.