WORDPRESS: Cum sa transformi campul “adresa de e-mail” din comentarii din obligatoriu in optional?

Configurare noua (How To)

Situatie

Pentru majoritatea bloggerilor feedback-ul primit de la vizitatori este mai important decat materialul expus. Dar pentru a putea posta un comentariu este nevoie ca vizitatorul sa introduca numele si adresa de e-mail ceea ce poate duce la abandonarea comentariului. De multe ori multi bloggeri s-au lovit de un zid in incercarea de a elimina campul de adresa de e-mail din cerintele pentru postarea unui comentariu. Setarile pentru comentarii au optiunea de a face optional atat campul de nume cat si cel de adresa de e-mail, dar amandoua in tandem. Nu putem sa lasam una obligatorie iar cealalta optionala.

In continuare va voi prezenta un mic truc pentru a face campul de e-mail optional si campul de nume obligatoriu.

Solutie

Pasi de urmat

Pentru a putea face aceasta modificare ne vom folosi de filtrul WordPress si vom modifica cateva linii de cod in comments.php. Dar pentru a putea face aceste lucruri trebuie sa verificam daca o anumita setare este debifata in Dashboard.

Navigam la Dashboard – Settings – Discussion si debifam “Comment author must fill out name and e-mail

1

Aceasta setare va face atat numele cat si adresa de e-mail optionala.

Urmatorul lucru pe care trebuie sa-l facem este sa ne asiguram ca atunci cand se adauga comentariul chiar daca WordPress-ul lasa campul de nume optional nu se poate adauga daca acest camp este gol.

Acest lucru se realizeaza folosindu-ne de filtrul preprocess_comment adaugandu-se urmatoarele linii de cod in functions.php:

2

Aceste linii de cod fac ca postarea commentului sa nu fie posibila daca lasam gol campul de nume.

 

Urmatorul pas ar fi sa evidentiem campul de nume ca fiind obligatoriu iar in acelasi timp campul de e-mail sa fie afisat ca optional.

Acest lucru se face modificand comment.php.

Modificarea codului pentru campul de E-mail

Se face cautand urmatoarele:

<label for=“email”>Email ( <?php if ( $req ) echo “required, “; ?>never shared )</label>

si modificam linia de cod in:

<label for=“email”>Email (optional, never shared )</label>

Modificarea codului pentru campul de nume

Numele va functiona ca fiind necesare multumita codului de mai sus dar WordPress-ul inca il considera a fi optional si il va afisa ca atare. Vom proceda ca etapa de mai sus eliminand $req.

Cautam linia de cod:

<label for=“author”>Name <?php if ( $req ) echo “( required )”; ?></label>

si o schimbam in:

<label for=“author”>* Name ( required )</label>

 

Modificarea codului pentru atributul de completare obligatorie a zonei campului de nume.

Aceasta atribut este folosit doar pentru a indica obligativitatea completarii de catre user a acelei zone. Trebuie doar sa modificam codul pentru campul de nume.

Se gaseste linia de cod care arata asa:

<?php if ($req) echo “aria-required=’true'”; ?>

si se inlocuieste cu aceasta:

ariarequired=“true”

 

In acest moment campul de nume este obligatoriu de completat iar campul adresei de e-mail a devenit optional.

Tip solutie

Permanent

Voteaza

(16 din 36 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?