Cum să elimini toate instanțele de edit_post_link

11 iul. 2011, 04:16:07
Vizualizări: 14.2K
Voturi: 7

Poate cineva să mă ajute cum să elimin din tema mea, în timp ce sunt în modul autor, link-ul edit_post_link (Link-ul de Editare), de pe toate paginile mele? Ce fișiere php din tema Twenty Eleven (WordPress v3.2) trebuie să comentez pentru a nu mai afișa acest link de editare?

Înțeleg că acest link apare doar în modul autor, dar aș dori să știu cum să-l elimin complet.

Mulțumesc.

0
Toate răspunsurile la întrebare 5
3
14

O modalitate este să editați fișierele de șablon ale temei dumneavoastră, după cum ați menționat în întrebare, utilizați Twenty Eleven, deci puteți urma sfatul lui @kaiser.

Cealaltă metodă pe care o voi prefera în loc să modific fișierele de șablon este să folosesc filtrul. Avantajul filtrului este că va funcționa și cu alte teme. Dezavantajul este că veți avea tag-uri goale <span></span> în codul sursă HTML, deși acestea nu vor fi vizibile pe pagina actuală.

Puteți adăuga următorul cod în fișierul functions.php.

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

P.S. Puteți utiliza filtrul pentru a dezactiva link-ul de editare și pentru anumite postări selectate.

11 iul. 2011 11:39:24
Comentarii

Sau pur și simplu folosește add_filter( 'edit_post_link', '__return_false' ); :)

kaiser kaiser
11 iul. 2011 18:34:34

Nu ar fi mai potrivit add_filter( 'edit_post_link', '__return_null' ); în loc de false?

jb510 jb510
19 nov. 2013 04:25:23

Această soluție este mai bună decât cea acceptată pentru că nu trebuie să cauți funcția reală, ceea ce este deosebit de dificil dacă folosești teme copil.

f055 f055
11 ian. 2018 17:38:04
1

Răspunsul lui Hameedullah este mai elegant, dar nu elimină elementele dinainte și de după. Pentru a face asta, trebuie să filtrezi get_edit_post_link și să returnezi null.

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

acest lucru elimină și linkul de editare din zona de administrare!

jasie jasie
2 apr. 2020 11:45:58
0

Este funcția edit_post_link(). Veți găsi linii similare cu următoarea, pe care trebuie să le comentați:

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

Iată o soluție într-o singură linie. add_filter('edit_post_link', '__return_false');
Bonus: Ascunde bara de administrare add_filter('show_admin_bar', '__return_false');

17 mar. 2018 03:00:03
0

Ascunderea linkului de editare a articolului pentru cei care nu sunt administratori.

// Ascunderea Linkului de Editare a Articolului pentru Non-Administratori Început.

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');

// Ascunderea Linkului de Editare a Articolului pentru Non-Administratori Sfârșit.
26 feb. 2021 18:13:38