Descoperiți fișierele Secretele WordPress 'Comments.php

WordPress pare să fie peste tot în aceste zile, și nu e de mirare că este ușor de utilizat și ușor de personalizat. În acest tutorial, voi diseca tema implicită a tematicii WordPress's comments.php și vă va oferi diverse fragmente de cod pentru a vă ușura jupuirea.

Pentru referință, am inclus și un mic conținut.

  1. Backend-ul PHP
  2. Codul general
    1. Prevenirea accesului direct la comentarii.php
    2. Este necesară o parolă?
  3. Afișarea comentariilor
    1. Etichete de șablon de comentariu de bază
    2. Rezultatul final
  4. Formularul de comentariu
    1. Afișare generală a instrucțiunilor
    2. Introducerea formularului
  5. Unele trucuri mici
    1. Gravatars
    2. Numerele de comentarii
    3. Linkuri pentru comentarii
    4. Editarea comentariilor
    5. Culori alternante pentru comentarii
    6. Afișarea etichetelor permise
    7. Comentarii RSS
  6. Concluzie

1. Backend-ul PHP

  post_password)):?> post_password):?>     comment_approved == '0'):?>              

Acesta este codul brut PHP care face funcția fișierului comments.php. Pentru un novice, acest lucru ar putea părea intimidant. Cu toate acestea, nu vă faceți griji: cu acest tutorial totul din fișierul dvs. de comentarii va deveni limpede!


2. Codul general

Prevenirea accesului direct la comentarii.php

 

Această linie de cod împiedică utilizatorii să vizualizeze comentarii.php accidental. Această pagină este destinată includerii într-o pagină de postare, nu separat. Ai putea considera asta o măsură de securitate. În cadrul instrucțiunii, puteți introduce orice mesaj pe care doriți să îl afișați persoanei care vizualizează fișierul comments.php, de preferință un a muri afirmație.

  

Este necesară o parolă?

post_password)):?> post_password):?>  

Această declarație (bine, 2 de fapt, dar are sens dacă le vedeți ca una) verifică dacă este necesară o parolă pentru a vizualiza postarea. Evident, dacă nu aveți parola pentru a vedea postarea, de asemenea nu vi se permite să vizualizați comentariile.

Primul dacă verifică dacă există o parolă setată. Al doilea dacă instrucțiunea verifică dacă există un modul cookie cu o parolă în loc și afișează mesajul respectiv atunci când nu există. Puteți personaliza mesajul de eroare prin plasarea a ceea ce alegeți în cel de-al doilea dacă afirmație.


3. Afișarea comentariilor

  comment_approved == '0'):?>    

Această primă declarație condiționată (if ($ comentarii)) verifică dacă există comentarii și apoi buclele prin intermediul acestora cu pentru fiecare afirmație. În interiorul pentru fiecare , veți observa următoarea declarație condiționată: dacă ($ comment-> comment_approved == '0'). Aceasta verifică dacă comentariul a fost aprobat și afișează un mesaj dacă nu este încă aprobat.

Un exemplu de acest lucru ar fi următoarea bucată de cod.

 
  1. comment_approved == '0'):?>

    Comentariul tau asteapta aprobare

    Comentariul tau

Fara comentarii

Etichete de șablon de comentariu de bază

Pentru a face acest lucru o piesă funcțională de cod, va trebui să utilizați etichetele de șablon pe care WordPress le oferă.

Șablon de șablon Descriere
ID-ul unui comentariu
autorul unui comentariu
autorul unui comentariu, înfășurat cu un link către site-ul său, dacă a specificat unul
tipul de comentariu; pingback, trackback sau un comentariu
comentariul real
data la care a fost postat
momentul în care a fost postat

Rezultatul final

 
  1. comment_approved == '0'):?>

    Comentariul tau asteapta aprobare

    de pe la

Niciun comentariu

Introducerea acestui mesaj în comments.php vă va oferi o listă ordonată cu comentariile și informațiile solicitate sau afișați un mesaj care să ateste că nu există comentarii.


4. Formularul de comentarii

Încă mă urmărești? Bun! Suntem aproape acolo. Trebuie doar să procesăm formularul de comentariu ... Bine, poate că am mințit că aproape sunt acolo. Formularul de comentariu este de fapt una dintre cele mai dificile părți ale întregului fișier skin.php.

Veți fi bombardați cu câteva declarații condiționate (este necesar un login, sunteți logat, ...). Această parte este cea în care cei mai mulți pietoni începători au cele mai mari probleme: deteriorarea elementelor de formă ar putea împiedica funcționarea formularului deloc, fără a da o eroare specifică PHP.

Pentru a vă oferi o perspectivă asupra afirmațiilor condiționale care sunt implicate în formularul de comentarii, voi explica mai întâi aceste declarații și va include mai târziu codul HTML explicând de ce ar trebui să fie locul unde este.

Afișare generală a instrucțiunilor

        

Prima declarație condiționată pe care o întâlniți este . Aceasta verifică, în principiu, dacă comentariile sunt deschise. Evident, dacă comentariile sunt închise, nu puteți posta un comentariu și nu este necesar formularul de comentarii. Puteți pune mesajul pe care doriți să îl afișați dacă comentariile sunt închise între ultimul și
.

A doua declarație condiționată () verifică dacă trebuie să fiți înscris pentru a posta un comentariu și dacă sunteți conectat. Dacă declarația condițională este îndeplinită, scriptul ar trebui să afișeze un link către un loc unde utilizatorii se pot conecta. Dacă înregistrarea nu este necesară sau dacă sunteți deja conectat, scriptul va continua cu altfel și afișați formularul.

Declarația noastră condițională finală verifică dacă sunteți logat sau nu. Evident, dacă sunteți deja logat, este inutil să vă faceți să vă completați numele, e-mailul și site-ul dvs. din nou.

Introducerea formularului

Felicitări, am arat toate declarațiile condiționale din fișierul comments.php. Acum, tot ce rămâne este să adăugați formularul acolo.

Primul lucru pe care pot să-l aud pe care îl credeți este: unde dracu este că forma va începe? Ei bine, trebuie doar să urmați bunul simț. A doua declarație condiționată verifică dacă trebuie să vă autentificați sau nu, prin urmare nu trebuie să afișați nici o formă decât după această declarație. Astfel, întreaga formă este localizată în această declarație condiționată.

   

Trebuie să fiți /wp-login.php?redirect_to="> conectat (ă) pentru a posta un comentariu.

Comentariile sunt închise.

De asemenea, am aruncat în legătură cu pagina de conectare, așa cum am găsit-o în comentariile implicite comments.php. După cum am spus mai devreme, ultima declarație condiționată verifică dacă sunteți conectat sau nu. Evident, câmpurile de introducere a numelui, a adresei de e-mail și a site-ului web sunt afișate numai dacă nu sunteți conectat. Hai să-i aruncăm acolo!

   

Trebuie să fiți /wp-login.php?redirect_to="> conectat (ă) pentru a posta un comentariu.

Conectat ca /wp-admin/profile.php ">. /wp-login.php?action=logout "title =" Deconectați-vă de la acest cont "> Deconectați-vă»

Comentariile sunt închise.

În regulă! Suntem aproape acolo! Trebuie doar să adăugăm câteva linii simple de cod, cum ar fi textarea și butonul de trimitere. Acestea merg după ultima declarație condiționată, deoarece este irelevantă pentru aceste elemente dacă sunteți conectat (ă) sau nu.

  

Trebuie să fiți /wp-login.php?redirect_to="> conectat (ă) pentru a posta un comentariu.

Conectat ca /wp-admin/profile.php ">. /wp-login.php?action=logout "title =" Deconectați-vă de la acest cont "> Deconectați-vă»

ID); ?>

Comentariile sunt închise.

Acest cod ar trebui să fie destul de explicativ. Un câmp de textare pentru comentariu, un buton de trimitere, un câmp de intrare ascuns cu codul de viitor al comentariilor și un fragment PHP (ID); ?>) WordPress trebuie să facă funcția formularului de comentarii.

Voila! Toate astea! Ați primit acum fișierul full comment.php. Vizualizați acest fișier pentru a obține toate codurile PHP și HTML necesare. Ar trebui să terminați acest lucru (pur și simplu am înlocuit fișierul comments.php cu skin-ul implicit cu al nostru și am adăugat un anumit stil minor.)


5. Unele trucuri mici

Desigur, aveți acum doar un fișier comment.php de bază. Există multe lucruri pe care le puteți face pentru ao îmbunătăți. Voi lista câteva sfaturi și trucuri pentru a vă ajuta în drumul vostru.

Gravatars

Începând cu WordPress 2.5, există o etichetă personalizată pentru șabloanele WordPress pentru a încorpora gravatare. Trage gravatarul din e-mailul pe care la intrat vizitatorul. Codul pentru a face acest lucru este foarte simplu.

Puteți înlocui $ author_email cu cei dragi get_comment_author_email (); funcţie, dimensiune $ este înălțimea (și lățimea) avatarului și $ default_avatar este o legătură la imaginea avatar implicită (afișată atunci când comentatorul nu are gravatar).

Introduceți acest cod în interiorul pentru fiecare care afișează comentariile. Ieșirea este o imagine cu clasele Avatar și $ Dimensiune Avatar- (Unde dimensiune $ este dimensiunea specificată de dvs.). Cu unele editări minore CSS, ați putea ajunge la ceva de genul:

Numerele de comentarii

Am oprit intenționat anteturile în fișierul comments.php pe care l-am creat mai târziu, deoarece am crezut că ar face ca codul exces într-un proces de învățare să fie destul de dificil așa cum este. Evident, nu-i uit nici pe ei.

De obicei, oamenii au o rubrică care afișează ceva similar cu "3 comentarii până acum". Acest lucru este foarte ușor de realizat datorită etichetelor șablon oferite de WordPress.

 

E destul de explicativ: $ zero_comments este textul care trebuie afișat când nu există comentarii, $ one_comment când există un comentariu și $ more_comments atunci când există mai multe comentarii. Un exemplu real de viață ar fi astfel:

 

obisnuiam % pentru mai multe comentarii, deoarece comments_number funcția înlocuiește apoi % cu numărul de comentarii (2, 3, ...)

Folosit în fișierul our comments.php, veți termina cu ceva de genul:

Linkuri pentru comentarii

Pentru a afișa un link către partea de comentarii (cu numărul de comentarii afișate, etc.), pur și simplu utilizați următorul cod.

 

Primii 3 parametri din această funcție sunt aceiași cu cei de mai sus comments_number funcţie. $ css_class este, evident, clasa CSS pe care o acordați eticheta și $ comments_closed este textul care trebuie afișat atunci când comentariile sunt închise. Atunci când aplicați acest lucru unei teme, aceasta este o posibilă modalitate de ao utiliza.

 

Aceasta vă va da apoi o legătură cu clasa comentarii link

Editarea comentariilor

Uneori veți dori să editați imediat un comentariu. Din fericire, cu funcția edit_comment_link, puteți accesa cu ușurință pagina corectă pentru al edita, în loc să trebuiască să navigați la panoul de administrare pentru a ajunge în final la acel comentariu. Utilizarea este ca atare:

 

Trebuie să puneți asta înăuntru pentru fiecare buclă de comentariu. Parametrii sunt destul de evideni: $ LINK_TEXT este textul de ancorare pentru linkul de editare, $ before_link și $ after_link respectiv textul sau codul care trebuie afișat înainte sau după link.

Acest lucru face cu adevărat ușor schimbarea unui comentariu; puteți adăuga pur și simplu un mic link "Editați" la informațiile despre comentariul dvs. meta (vizibile numai de admin). Asa arata:

Culori alternante pentru comentarii

Este posibil să doriți să aveți culori alternante pentru comentarii, pentru a face o separare mai clară. Acest lucru este relativ ușor. Mai întâi, adăugați următorul cod în partea de sus a paginii:

funcția alternate_rows ($ i) 
dacă ($ i% 2)
echo ";
altceva
ecou";

Apoi adăugați următoarele în interiorul pentru fiecare bucla (din nou). Pur și simplu ați putea înlocui

  • cu asta:

     >

    Acest lucru va da fiecărui alt comentariu clasa Alt, făcând astfel posibilă schimbarea aspectului prin CSS.

    Am decis să fac o funcție pentru asta, să am mai puțină aglomerație în dosarul tău tematic real. Ați putea adăuga definiția funcției în fișierul functions.php dacă doriți, dar pentru mine este mai logic să o aveți în partea de sus a paginii dvs..

    Rândurile alternante facilitează diferențierea diferitelor comentarii; odată implementat, ați putea avea ceva de genul:

    Afișarea etichetelor permise

    Pentru a afișa codul pe care vizitatorii pot folosi în comentariile lor, pur și simplu utilizați acest fragment mic.

    Etichete permise: 

    Apoi veți obține o listă cu etichetele care sunt permise în comentariile dvs., cum ar fi:

    Comentarii RSS

    Pentru a obține un link la feedul RSS pentru comentariile unei anumite postări, pur și simplu introduceți codul de mai jos în fișierul comments.php în locul în care doriți să fie.

    Apoi înlocuiți pur și simplu $ link_test cu textul de ancorare pentru link-ul RSS.

    Acest lucru poate fi util dacă doriți să oferiți vizitatorilor posibilitatea de a vă abona la feedul de comentarii pentru un anumit articol sau post de blog. Ați putea să o implementați astfel:

    6. Concluzie

    Sper că v-ați bucurat de acest articol puțin despre jupuirea fișierului WordPress comments.php. Puteți obține codul complet aici, cu trucurile pe care le-am arătat incluse în el:

    • Gravatars,
    • culori alternative de rând,
    • editați linkul,
    • comentarii rss link.

    Evident, legătura cu comentariile nu este inclusă, deoarece aceasta trebuie utilizată în interiorul bucla.

    Cel mai bun noroc în WordPress jupuirea aventurilor!