Cómo eliminar todas las instancias de edit_post_link en WordPress

11 jul 2011, 04:16:07
Vistas: 14.2K
Votos: 7

¿Alguien puede ayudarme a eliminar de mi tema, mientras estoy en modo autor, el edit_post_link (enlace de edición), en todas mis páginas? ¿Qué archivos PHP en el tema Twenty Eleven (WordPress v3.2) necesito comentar para que ya no se muestre este enlace de edición?

Sé que solo se ve esto durante el modo autor, pero me gustaría saber cómo eliminarlo por completo.

Gracias.

0
Todas las respuestas a la pregunta 5
3
14

Una forma es editar los archivos de plantilla de tu tema, como mencionaste en tu pregunta que estás usando Twenty Eleven, así que puedes seguir el consejo de @kaiser.

La otra forma que yo preferiría en lugar de modificar los archivos de plantilla es usar el filtro. La ventaja del filtro es que funcionará con otros temas también. La desventaja es que tendrás etiquetas vacías <span></span> en tu código fuente HTML, aunque no serán visibles en la página real.

Puedes colocar el siguiente código en tu functions.php.

function wpse_remove_edit_post_link( $link ) {
    return '';
}
add_filter('edit_post_link', 'wpse_remove_edit_post_link');

P.D. También puedes usar el filtro para deshabilitar el enlace de edición en publicaciones selectivas.

11 jul 2011 11:39:24
Comentarios

O simplemente usa add_filter( 'edit_post_link', '__return_false' ); :)

kaiser kaiser
11 jul 2011 18:34:34

¿Sería más apropiado usar add_filter( 'edit_post_link', '__return_null' ); en lugar de false?

jb510 jb510
19 nov 2013 04:25:23

Esta solución es mejor que la aceptada porque no necesitas buscar la función real, lo cual es especialmente difícil si usas temas hijos.

f055 f055
11 ene 2018 17:38:04
1

La respuesta de Hameedullah es más elegante, pero no elimina los elementos antes y después. Para hacer eso, necesitas filtrar get_edit_post_link en su lugar, y devolver null.

function wpse_remove_get_edit_post_link( $link ) {
    return null;
}
add_filter('get_edit_post_link', 'wpse_remove_get_edit_post_link');
9 ago 2015 10:21:01
Comentarios

¡esto también elimina el enlace de edición en el área de administración!

jasie jasie
2 abr 2020 11:45:58
0

Es la función edit_post_link(). Encontrarás líneas como la siguiente, que necesitas comentar:

// desde /twentyeleven/content-intro.php
edit_post_link( __( 'Editar', 'twentyeleven' ), '<span class="edit-link">', '</span>' );
11 jul 2011 04:33:34
0

Aquí tienes una línea de código. add_filter('edit_post_link', '__return_false');
Bonus: Ocultar la barra de administración add_filter('show_admin_bar', '__return_false');

17 mar 2018 03:00:03
0

Ocultar el enlace de edición de entradas para aquellos que no son administradores.

// Ocultar el enlace de edición de entradas para no administradores - Inicio.

function prefix_remove_get_edit_post_link( $link ) {
    if(current_user_can('administrator')) {
        return $link;
    }
    return null;
}

add_filter('get_edit_post_link', 'prefix_remove_get_edit_post_link');

// Ocultar el enlace de edición de entradas para no administradores - Fin.
26 feb 2021 18:13:38