Ժամանակն է ավելացնել մեկնաբանություն մեկնաբանության պատասխանը: WordPress-ի մեկնաբանություններ – ամբողջական տեսքի ձևավորում

WordPress-ն ունի մի քանի տեսակի բովանդակություն, ինչպիսիք են գրառումները, էջերը, մեկնաբանությունները: WordPress-ը շատ ճկուն հարթակ է, որը թույլ է տալիս հարմարեցնել հիմնական բովանդակությունը՝ ձեր կայքին համապատասխան: Դուք կարող եք փոխել տեսքը և ֆունկցիոնալությունը: Այս ձեռնարկում մենք ձեզ ցույց կտանք, թե ինչպես փոխել մեկնաբանությունների վարքն ու տեսքը WordPress կայքում:

Քայլ 1. Հասկանալով comment_form ֆունկցիան և դրա արգումենտները

Եկեք նայենք WordPress-ի comment_form ֆունկցիային: Այն պատասխանատու է էջում կամ գրառման վրա հայտնված մեկնաբանությունների ձևը ցուցադրելու համար: Այս ֆունկցիայի կանչը հիմնականում կարելի է գտնել թեմայի թղթապանակում գտնվող comments.php ֆայլում: Այս ֆայլը ներառված է տարբեր վայրերում, օրինակ՝ single.php և page.php ֆայլերում, ուղղակիորեն կամ զանգահարելով comments_template ֆունկցիային:

Գործառույթի նկարագրությունը կարելի է գտնել WordPress-ի կոդեքսում.

Եթե ​​օգտագործում եք comment_form ֆունկցիան՝ ձևը ցուցադրելու համար, այն կարտացոլվի՝ օգտագործելով լռելյայն պարամետրերը և կպարունակի այնպիսի դաշտեր, ինչպիսիք են անունը, էլ. Նախնական Twenty Eleven թեմայում ձևը կունենա այսպիսի տեսք.

Comment_form ֆունկցիայի որոշ կարևոր փաստարկներ.

  • դաշտեր - այն կարող եք օգտագործել մեկնաբանության ձևում դաշտերի ցուցադրումը վերահսկելու համար:
  • comment_notes_before և comment_notes_after - օգտագործվում է ձևից առաջ և հետո տեղեկատվություն ցուցադրելու համար:
  • title_reply - օգտագործվում է պատասխանի վերնագիրը փոխելու համար, որը կանխադրված է «Պատասխան թողնել»:
  • label_submit - օգտագործվում է մեկնաբանությունների ուղարկել կոճակի տեքստը փոխելու համար:
Քայլ 2. Անհատականացրեք մեկնաբանության ձևը՝ օգտագործելով comment_form ֆունկցիան

Հիմա եկեք ստեղծենք մեր մեկնաբանության ձևը՝ արգումենտներ փոխանցելով comment_form ֆունկցիային:

Այն դեպքում, երբ մեզ անհրաժեշտ է հարմարեցնել մեկնաբանությունների ձևի դաշտերը, մենք պետք է դրանց ցանկը փոխանցենք comment_form ֆունկցիային: Լռելյայնորեն ֆունկցիան օգտագործում է դաշտերի հետևյալ ցանկը.

$fields = զանգված ("author" => "

" . "" . __("Անուն") . " " . ($req ? "*" : "") ."

", "email" => " ", "url" => "

" . __("Կայք") . "" ."

",);

Եթե ​​մեզ անհրաժեշտ է հեռացնել դաշտը, օրինակ՝ վեբ կայքը, մենք պարզապես պետք է այն բացառենք զանգվածից և զանգվածը փոխանցենք comment_form ֆունկցիային։

$commenter = wp_get_current_commenter(); $req = get_option («պահանջում_անուն_էլ.փոստ»); $aria_req = ($req ? " aria-required="true"" : ""); $fields = զանգված ("author" => "

" . "" . __("Անուն") . " " . ($req ? "*" : "") ."

", "email" => " ",);$comments_args = զանգված ("դաշտեր" => $դաշտեր); comment_form ($comments_args);

Բացի այդ, մենք նաև կփոխենք ձևի անվանումը՝ «Խնդրում եմ, տվեք մեզ ձեր արժեքավոր մեկնաբանությունը», իսկ կոճակի մակագրությունը՝ «Ուղարկել իմ մեկնաբանությունը»:

Առաջադրանքն ավարտելու համար մենք հետևյալ արգումենտները փոխանցում ենք comment_form ֆունկցիային.

$commenter = wp_get_current_commenter(); $req = get_option («պահանջում_անուն_էլ.փոստ»); $aria_req = ($req ? " aria-required="true"" : ""); $fields = զանգված ("author" => "

" . "" . __("Անուն") . " " . ($req ? "*" : "") ."

", "email" => " $comments_args = array("fields" => $fields, "title_reply"=>"Խնդրում ենք տալ մեզ ձեր արժեքավոր մեկնաբանությունը", "label_submit" => "Ուղարկել իմ մեկնաբանությունը"); comment_form($comments_args);

Այժմ մեկնաբանության ձևը կունենա հետևյալ տեսքը.

Քայլ 3. Կեռիկի միջոցով դաշտերի հեռացում ձևից

Նաև WordPress-ի մեկնաբանության ձևը կարող է փոփոխվել՝ օգտագործելով կեռիկներ և զտիչներ: Այս պարամետրը կարող է հատկապես օգտակար լինել plugin-ի հետ աշխատելիս, երբ անհրաժեշտ է հարմարեցնել մի քանի տարրեր, բայց չփոխել թեմայի ֆայլերը: Զտիչ՝ ձևից դաշտեր ավելացնելու կամ հեռացնելու համար - «comment_form_default_fields»

Եկեք հեռացնենք URL դաշտը՝ օգտագործելով զտիչ: Վերոնշյալ կոդը կարող է օգտագործվել plugin-ում կամ ակտիվ թեմայի functions.php ֆայլում։

Գործառույթ remove_comment_fields($fields) ( unset($fields["url"]); վերադարձնել $fields; ) add_filter("comment_form_default_fields","remove_comment_fields");

Քայլ 4. Տվյալներ ավելացրեք մեկնաբանությունների ձևին՝ օգտագործելով կարթ

Մենք կարող ենք դաշտեր ավելացնել ձևին՝ օգտագործելով «comment_form_default_fields» զտիչը: Եկեք ֆիլտրի միջոցով ավելացնենք հեղինակի տարիքային դաշտը և պահպանենք այս դաշտը լրացուցիչ տվյալներով և ցուցադրենք մեկնաբանությունում։

Ավելացնել այսպիսի դաշտ.

add_comment_fields($fields) ֆունկցիա ( $fields["age"] = "

" . __("Տարիք") . "" . "

"; վերադարձնել $fields; ) add_filter("comment_form_default_fields","add_comment_fields");

#respond .comment-form-author label, #respond .comment-form-email label, #respond .comment-form-url label, #respond .comment-form-age label, #respond .comment-form-comment label ( ֆոն՝ #eee; 13px min-լայնություն՝ 4px 10px;

Այժմ մեր մեկնաբանության ձևը կունենա հետևյալ տեսքը.

Տարիքն այժմ պահվում է որպես լրացուցիչ տեղեկատվություն: Դուք պետք է օգտագործեք կեռիկը «comment_post»-ում.

Add_comment_meta_values ​​ֆունկցիան ($comment_id) (if(isset($_POST["տարիք"])) ($age = wp_filter_nohtml_kses($_POST["տարիք"]); add_comment_meta ($comment_id, "տարիք", $տարիք, կեղծ); ) ) add_action("comment_post", "add_comment_meta_values", 1);

Տվյալները պահվելուց հետո դրանք կարող են դուրս գալ որպես մեկնաբանություն, ինչպես հետևյալը.

Քայլ 5. Մեկնաբանությունների կարգավորում հատուկ գրառումների տեսակների համար

Երբեմն դուք ցանկանում եք օգտագործել մեկնաբանությունների դաշտերը միայն որոշակի տեսակի գրառումների համար: Եկեք փոխենք կոդը՝ տարիքային դաշտը ցուցադրելու համար միայն գրքի գրանցման տեսակի համար.

add_comment_fields($fields) ֆունկցիա ( if(is_singular("books")) ( $fields["age"] = "

" . __("Տարիք") . "" . "

"; ) վերադարձնել $fields; ) add_filter("comment_form_default_fields","add_comment_fields");

Քայլ 6. Ստեղծեք հետադարձ զանգի գործառույթ՝ մեկնաբանությունները ցուցադրելու համար

Wp_list_comments ֆունկցիան օգտագործվում է գրառումների վերաբերյալ մեկնաբանությունները ցուցադրելու համար: WordPress կոդումգործառույթը մանրամասն նկարագրված է:

wp_list_comments-ն ունի «հետադարձ զանգ» արգումենտ, որտեղ դուք կարող եք սահմանել գործառույթ, որը կանչվում է, երբ ցուցադրվում է մեկնաբանություն:

Comments.php ֆայլում Twenty Eleven թեմայում կարող եք գտնել տողը.

Wp_list_comments(array("callback" => "twentyeleven_comment"));

Եկեք փոխենք այն հետևյալի.

Wp_list_comments (զանգված ("callback" => "my_comments_callback"));

Յուրաքանչյուր գրառման համար կկանչվի my_comments_callback ֆունկցիան:

Քայլ 7. Մեկնաբանությունների ոճավորում

Այժմ մենք մի փոքր կփոխենք մեկնաբանության ոճը: Մենք պարզապես կցուցադրենք գրառման բովանդակությունը և տարիքային դաշտը, որը մենք ավելացրել ենք ավելի վաղ: Մենք կփոխենք նաև մեկնաբանությունների ֆոնի գույնը:

«my_comments_callback» ֆունկցիայի կոդը.

my_comments_callback ֆունկցիան ($comment, $args, $depth) ( $GLOBALS["comment"] = $comment; ?>

Comments_template() ֆունկցիայի և հոդվածում նշված մյուսների նկարագրության և ընդունված փաստարկների համար նայեք WordPress Codex-ում։

Կաղապարի պատրաստում

Փորձենք հասկանալ WP մեկնաբանությունների ձևանմուշները և ստեղծել սեփական ֆայլ՝ բլոգի գրառումների և էջերի մեկնաբանությունները ցուցադրելու համար: Որպես հղման օրինակներ, դուք կարող եք վերցնել կաղապարներ ստանդարտ WordPress թեմաներից: Եկեք ցանկացած տեքստային խմբագրիչում ստեղծենք նոր փաստաթուղթ, այն անվանենք comments.php և սկսենք խմբագրել։

  • Սկզբունքորեն, դուք կարող եք անվանել ֆայլը, ինչ ցանկանում եք, այնուհետև գրել այս ֆայլի ուղին comments_template(), բայց ավելի լավ է մնալ ստանդարտ անվանմանը:
  • Ի դեպ, կարող եք նաև խմբագրել ֆայլը WP-ի ադմինիստրատորի վահանակում։
  • Լավագույնն է, իհարկե, գրել կոդը և անմիջապես փորձարկել դրա ազդեցությունը ձեր բլոգի կամ տեղական սերվերի վրա:

WordPress-ում հնարավոր է անջատել մեկնաբանությունները առանձին գրառումների համար, ուստի դրանք ցուցադրելուց առաջ անհրաժեշտ է ստուգել «բացությունը».

Սա մեր հետագա գործողությունների ծածկագիրն է: Այժմ եկեք պատրաստենք կոնտեյներ մեկնաբանությունների բլոկի համար՝ իմաստային առումով ճիշտ դասի կամ նույնացուցիչով (դասը, իհարկե, նախընտրելի է).

Ներսում մենք վերնագիր կգրենք, որպեսզի ձեր ընթերցողները հասկանան, որ այստեղ մեկնաբանություններ կան և ուրիշ ոչինչ, պիտակը հենց դրա համար կլինի.

"

Այստեղ մենք նշել ենք WordPress-ի գործառույթներից մեկը՝ the_title(), այս ֆունկցիայի կատարման արդյունքը կլինի ընթացիկ գրառման կամ էջի վերնագրի ելքը։ Եթե ​​չեք ցանկանում ցուցադրել վերնագիրը, կարող եք պարզապես գրել «Ընթերցողի մեկնաբանություններ»:

Հաջորդը, նախքան մեկնաբանությունները ցուցադրելը, դուք պետք է համոզվեք, որ դրանք կան, այսինքն. ստուգեք, եթե կա, ցուցադրեք ամբողջական ցուցակը, եթե ոչ, ապա կարող եք օգտատիրոջը ցույց տալ «»-ի նման մի բան: Այսպիսով, ձեր գրառման/էջի այցելուին պարզ կլինի, որ դեռ ոչ ոք ոչինչ չի գրել, իսկ «Դու կարող ես լինել առաջինը» մոտիվացնող արտահայտությունը կմեծացնի հավանականությունը, որ նրանք քեզ ավելի արագ ինչ-որ բան գրեն։

Այսպիսով, խնդրի այս ձևակերպումից հետո պարզ է դառնում, որ իրականացման համար մեզ անհրաժեշտ կլինեն if/else կոնստրուկտներ և ֆունկցիա՝ մեկնաբանությունների քանակը get_comments_number() ցուցադրելու համար: Եթե ​​ֆունկցիան վերադարձնում է 0 (զրո), ապա մենք ցուցադրում ենք «No comments yet...», հակառակ դեպքում «Reader comments...»:

Դեռևս մեկնաբանություններ չկան, բայց դուք կարող եք լինել առաջին ընթերցողի մեկնաբանությունները «» հոդվածի վերաբերյալ Քննարկումները փակված են այս էջի համար

Մեկնաբանությունների դուրսբերում

Հիանալի է, մենք ցուցադրել ենք վերնագրերը՝ կախված մեկնաբանությունների առկայությունից կամ բացակայությունից, հիմա տրամաբանական է ցուցադրել մեկնաբանությունները իրենք՝ դրա համար պատասխանատու է wp_list_comments() ֆունկցիան: Լռելյայն ֆունկցիան բոլոր մեկնաբանությունները պարուրում է պիտակներով

  • , այնպես որ դուք պետք է ավելացնեք փաթաթան class assignment.commentlist-ով:

    wp_list_comments()-ը վերցնում է արգումենտների զանգված, որը կարող է օգտագործվել մեկնաբանությունների ցուցադրումը ճկուն կերպով հարմարեցնելու համար: Օրինակ՝ կարող եք փոխել ավատարի չափը, մեկնաբանության պատասխանի տեքստը և այլ կարգավորումներ՝ փոխանցելով հիմնաբառ և արժեք.

    $args = զանգված ("avatar_size" => 64, // ավատարի չափը 64*64px, լռելյայն 32 "reply_text" => "Պատասխանել" // մեկնաբանության պատասխանի տեքստը "callback" => "my_comments" // ֆունկցիա արտաքին տեսակի մեկնաբանություն ստեղծելու համար)

    Հետադարձ զանգի պարամետրը հատուկ ուշադրության է արժանի, որը մեկնաբանության ցուցադրման համար ընդունում է հատուկ ֆունկցիայի անվան արժեքը: Նրա օգնությամբ դուք կարող եք ճկուն կերպով հարմարեցնել յուրաքանչյուր մեկնաբանության տեսքը: Ստանդարտ ելքային ֆունկցիան այսպիսի տեսք ունի comment-template.php ֆայլից.




     

    Կարող է օգտակար լինել կարդալ.