10 Fragmente WordPress pentru personalizarea temelor
Când utilizați WordPress, este extrem de ușor să modificați aspectul site-ului dvs., datorită temelor. Există o mulțime (ca o mulțime întreagă) de teme WordPress disponibile atât gratuit, cât și pentru un preț premium. Alegeți o temă, instalați-o și puteți obține un aspect complet nou pentru site-ul dvs. în câteva minute.
Dar, dincolo de aspectul și simțirea, tema WordPress poate fi extinsă și în multe feluri. Puteți construi noi funcționalități cu pluginuri, dar în acest post ne uităm la Funcțiile WordPress care pot fi la îndemână pentru tema dvs.. Trebuie doar să puneți aceste funcții în fișierul functions.php al temei pentru ca efectul să aibă loc.
Reading recomandat: Cum să gestionați și să utilizați fragmente de cod în WordPress
1. Modificați lungimea extrasului
Un extras este o scurtă piesă din postarea pe care o puteți vedea. WordPress, în acest caz, stabilește ca extrasul să fie de 55 de cuvinte lungime în mod implicit. Dar, WordPress ne permite să personalizăm lungimea implicită prin excerpt_length
filtru, după cum urmează.
funcția my_excerpt_length (lungime $) return 30; add_filter ('excerpt_length', 'my_excerpt_length', 999);
Valoarea returnată se referă la suma cuvintelor care vor fi afișate ca extras. În exemplul de mai sus, afișăm 30 de cuvinte în valoare de fiecare post din extras.
2. Reducerea reviziilor postale
WordPress permite scriitorilor și bloggerilor să privească înapoi la versiunile anterioare ale activității lor. Cu toate acestea, pe măsură ce revizuirile cresc în număr, ele pot afecta și performanța unui site, deoarece fiecare revizuire recent înregistrată adaugă un nou rând în baza de date. Această problemă se va agrava în timp.
Pentru a rezolva această problemă, puteți seta câte revizii doriți să salvați în baza de date. Pentru a face acest lucru, deschideți-vă wp-config.php și adăugați mai jos acest fragment. Modificați numărul pentru a limita numărul de revizii pe care doriți să le salvați.
define ('WP_POST_REVISIONS', 5);
Dacă preferați să dezactivați revizuirea WordPress, comutați valoarea la FALS
asa:
define ('WP_POST_REVISIONS', false);
3. Setarea automată a imaginii recomandate pe o postare
Este o practică obișnuită de a afișa o imagine prezentată care reprezintă sau descrie o postare. WordPress ne cere să setăm această imagine recomandată manual. Pentru a face procesul mai eficient, putem seta imaginea recomandată automat prin realizarea primei imagini din postarea imaginii recomandate. Utilizați următorul fragment de cod.
funcția autoset_featured () global $ post; $ already_has_thumb = has_post_thumbnail ($ post-> ID); dacă ! $ already_has_thumb) $ attach_image = get_children ("post_parent = $ post-> ID & post_type = atașament & post_mime_type = imagine și numărulposts = 1"); dacă ($ attach_image) foreach ($ attach_image ca $ attachment_id => atașament $) set_post_thumbnail ($ post-> ID, $ attachment_id); add_action ("the_post", "autoset_featured"); add_action ('save_post', 'autoset_featured'); add_action ('draft_to_publish', 'autoset_featured'); add_action ('new_to_publish', 'autoset_featured'); add_action ('pending_to_publish', 'autoset_featured'); add_action ('future_to_publish', 'autoset_featured');
4. Forța minimă de lungime a comentariilor
Nu este un fan al comentariilor 1-2 cuvinte ca “Draguta postare!”, “Bună treabă!”? Deși este posibil ca comentariul să nu fie spam, acestea sunt tipurile de comentarii care, de obicei, nu vor încuraja discuțiile ulterioare. Dacă vrei să-ți spui comentatorii, poți stabili o lungime minimă de cuvinte necesare înainte ca cititorii să poată posta comentariul.
Mai jos este fragmentul pentru a seta numărul minim de caractere sau cuvinte pentru comentarii. Pune-l în functions.php.
funcția minimal_comment_length ($ commentdata) $ minimalCommentLength = 20; dacă (strlen (trim ($ commentdata ['comment_content']))
$ minimalCommentLength
valoarea este numărul minim de caractere care este necesar, faceți modificările la această valoare pentru a schimba acest lucru.5. Dezactivați linkurile din comentariile utilizatorilor
Link-urile care sunt incluse în formularul de comentarii vor deveni instantaneu un link clicabil odată ce sunt postate și aprobate. Acest lucru poate fi exploatat de spammeri, incurajandu-i sa inunda o sectiune de comentarii cu un link catre pagina lor "spam".
Pentru a contracara acest lucru, puteți adăuga acest filtru pentru a dezactiva capacitatea de clic a legăturilor și pentru a le păstra simplu ca text simplu.
remove_filter ('comment_text', 'make_clickable', 9);6. Eliminați clasele și codurile din meniurile personalizate
Dacă vă uitați la meniul personalizat din WordPress, veți găsi o grămadă de clase și ID-uri pe fiecare element de meniu. Utilizați fragmentul de mai jos pentru a elimina clasele pe care nu doriți și pentru a păstra clasele de care aveți nevoie.
funcția my_css_attributes_filter ($ var) return este_array ($ var)? array_intersect ($ var, array ('current-menu-item')): "; add_filter ('nav_menu_css_class', 'my_css_attributes_filter', 100, 1); add_filter ('page_css_class', 'my_css_attributes_filter', 100, 1);În codul de mai sus, păstrăm
curent-meniu-element
clasă.7. Excludeți paginile de la căutare
Realizarea căutărilor în WordPress va atrage rezultate atât din pagini, cât și din mesaje, uneori fără relevanță prea mare pentru interogarea dvs. de căutare. Pentru a preveni acest lucru, puteți filtra rezultatele căutării pentru a afișa numai cele găsite în postări. Adăugați acest fragment la function.php pentru a face acest lucru.
funcția SearchFilter ($ query) if ($ query-> is_search) $ query-> set ('post_type', 'post'); return $ query; add_filter ('pre_get_posts', 'SearchFilter');8. Înlocuiți textul de avertisment
Plictisit de textul "Howdy"? Dacă doriți să schimbați acest lucru într-o salutură specială pe site-ul dvs., trebuie doar să adăugați acest lucru la funcțiile funcțiilor.php și efectul va avea loc imediat.
funcția change_howdy ($ translated, $ text, $ domain) if (false! == strpos ($ tradusă, 'Howdy')) return str_replace ('Howdy', 'Hello', $ translated); return $ tradus; add_filter ('gettext', 'change_howdy', 10, 3);9. Adăugați eliminarea suplimentară a meniului pentru anumite roluri
Puteți ascunde meniurile care sunt în tabloul de bord, pentru non-administratori, cu acest fragment.
funcția remove_admin_menus () if (is_user_logged_in () &&! current_user_can ("administrator")) remove_menu_page ('index.php'); // Tablou de bord remove_menu_page ('edit.php'); // Mesaje remove_menu_page ('upload.php'); // Media remove_menu_page ('edit.php? Post_type = pagina'); // Pagini remove_menu_page ('edit-comments.php'); // Comentarii remove_menu_page ('themes.php'); // Aspect remove_menu_page ('plugins.php'); // Pluginurile remove_menu_page ('users.php'); // Utilizatori remove_menu_page ('tools.php'); // Instrumente remove_menu_page ('options-general.php'); // Setări add_action ('admin_init', 'remove_admin_menus');Rețineți că acest lucru elimină doar meniurile de pe ecran, dar nu filtrează permisiunea utilizatorului pentru a accesa aceste meniuri. Nu împiedică accesul utilizatorilor la aceste meniuri direct prin bara de adrese a browserului. Amintiți-vă să le adăugați la dvs. functions.php.
10. Eliminați link-ul Admin Bar pentru non-Adminstrators
În tabloul de bord WordPress, în afară de meniul principal din bara laterală, veți găsi și câteva linkuri de meniuri în partea de sus. Puteți restricționa accesul la acest link de bare de administrare de la anumite roluri sau utilizatori. Acest fragment de mai jos va elimina meniul din bara de administrare pentru utilizatorii care nu sunt Administrator - ajustați corespunzător.
funcția remove_admin_bar_links () global $ wp_admin_bar; dacă (! current_user_can ("administrator")) $ wp_admin_bar-> remove_menu ('wp-logo'); // Eliminați logo-ul WordPress $ wp_admin_bar-> remove_menu ('about'); // Eliminați link-ul despre WordPress $ wp_admin_bar-> remove_menu ('wporg'); // Eliminați link-ul WordPress.org $ wp_admin_bar-> remove_menu ('documentația'); // Eliminați link-ul documentației WordPress $ wp_admin_bar-> remove_menu ('support-forums'); // Eliminați forumul forumului de asistență $ wp_admin_bar-> remove_menu ('feedback'); // Eliminați link-ul de feedback $ wp_admin_bar-> remove_menu ('site-name'); // Eliminați link-ul pentru numele site-ului $ wp_admin_bar-> remove_menu ('view-site'); // Eliminați link-ul site-ului vizitați $ wp_admin_bar-> remove_menu ('updates'); // Eliminați link-urile de actualizări $ wp_admin_bar-> remove_menu ('comments'); // Eliminați link-ul pentru comentarii $ wp_admin_bar-> remove_menu ('new-content'); // Eliminați noul link de conținut $ wp_admin_bar-> remove_menu ('my-account'); // Eliminați fila cu detaliile utilizatorului add_action ('wp_before_admin_bar_render', 'remove_admin_bar_links');