Modificarea si imbunatatirea sectiunii de comentarii WordPress

27 February 2013

Comentariile sunt un aspect foarte important al unui blog, deoarece reprezinta modul si locul unde cititorii interactioneaza cu bloggerul. In acest articol, veti gasi o multime de coduri WordPress, trucuri si sfaturi cu ajutorul carora va veti imbogatii sectiunea de comentarii a blogului.

Permiterea mai multor taguri HTML in comentarii WordPress

In mod normal, WordPress permite comentatorilor sa foloseasca unele taguri HTML in crearea comentariului. Dar, in functie de blogul nostru, am putea dori utilizarea mai multor taguri.

Pentru a face acest lucru, pur si simplu pastam codul de mai jos in fisierul functions.php. Lista tagurilor permise poate fi modificata pe linia 4.

// Create function which allows more tags within comments
function allow_pres() {
 global $allowedtags;
 $allowedtags['pre'] = array('class'=>array());
}
// Add WordPress hook to use the function
add_action('comment_post', 'allow_pres');

Sursa: https://davidwalsh.name/wordpress-comment-tags

Inlaturarea autolink-urilor in comentarii

Cand un cititor lipeste adresa unui link in comentariu, WordPress transforma automat acesta in link hypertext. Acest lucru este bun dintr-un punct de vedere, dar foarte multe persoane fac spam, sau isi posteaza link-uri pentru publicitatea produselor sau serviciilor oferite de ei.

Stergerea autolink-urilor din comentarii este foarte simpla. Inseram linia de mai jos in fisierul functions.php.

remove_filter('comment_text', 'make_clickable', 9);

Sursa: https://www.wprecipes.com/wordpress-hack-remove-autolinks-in-comments

Eliminarea campului pentru url din forma comentariilor WordPress

Daca nu dorim ca utilizatorii care comenteaza pe blogul nostru sa-si mai lase url-ul catre site-ul sau blogul lor in caseta speciala pentru acesta, exista un fragment de cod cate sterge campul URL.

Copiem codul si il inseram in fisierul functions.php

function remove_comment_fields($fields) {
 unset($fields['url']);
 return $fields;
}
add_filter('comment_form_default_fields','remove_comment_fields');

Sursa: https://wp.tutsplus.com/tutorials/creative-coding/customizing-comments-in-wordpress-functionality-and-appearance/

Adaugarea mai multor campuri in forma pentru comentarii

Mai sus v-am aratat cum se sterge un camp din forma pentru comentarii, dar acum va voi arata cum puteti adauga un nou camp pentru ani, de exemplu.

Ca si la variantele de mai sus, copiati codul in functions.php. [adsense float=”center”]

function add_comment_fields($fields) {

 $fields['age'] = '<p class="comment-form-age"><label for="age">' . __( 'Age' ) . '</label>' .
 '<input id="age" name="age" type="text" size="30" /></p>';
 return $fields;

}
add_filter('comment_form_default_fields','add_comment_fields');
function add_comment_meta_values($comment_id) {

 if(isset($_POST['age'])) {
 $age = wp_filter_nohtml_kses($_POST['age']);
 add_comment_meta($comment_id, 'age', $age, false);
 }

}
add_action ('comment_post', 'add_comment_meta_values', 1);

Acum, pentru a afisa varsta comentatorilor, folositi codul:

<?php echo "Comment authors age: ".get_comment_meta( $comment->comment_ID, 'age', true ); ?>

Sursa: https://wp.tutsplus.com/tutorials/creative-coding/customizing-comments-in-wordpress-functionality-and-appearance/

Dezactivarea automata a posibilitatii de a comenta un post mai vechi de X zile

Daca blogul vostru este foarte popular, probabil primiti o multime de comentarii, unele la posturi foarte vechi. Daca doriti deactivarea posibilitatii de a lasa comentarii la posturi mai vechi de un numar definit de zile, aveti aceasta posibilitate.

Lipiti codul mai jos in fisierul functions.php. Codul va dezactiva comentarea posturilor mai vechi de 30 de zile. Numarul de zile poate fi schimbat pe linia 3.

function close_comments( $posts ) {
 if ( !is_single() ) { return $posts; }
 if ( time() - strtotime( $posts[0]->post_date_gmt ) > ( 30 * 24 * 60 * 60 ) ) { 
 $posts[0]->comment_status = 'closed';
 $posts[0]->ping_status = 'closed';
 }
 return $posts;
}
add_filter( 'the_posts', 'close_comments' );

Sursa: https://perishablepress.com/wordpress-tip-disable-comments-in-old-posts-via-php/

Adaugare atributului HTML target=”blank” pentru toate link-urile din textul comentariului

function autoblank($text) {
 $return = str_replace('<a', '<a target="_blank"', $text);
 return $return;
}
add_filter('comment_text', 'autoblank');

Dezactivarea feed-urilor de comentarii pentru posturi individuale

In mod normal, WordPress aloca feed-uri RSS pentru fiecare post. Daca nu doriti sau nu aveti nevoie de ele, le puteti dezactiva folosind codul de mai jos.

// disable comment feeds for individual posts
function disablePostCommentsFeedLink($for_comments) {
 return;
}
add_filter('post_comments_feed_link','disablePostCommentsFeedLink');

Sursa: https://digwp.com/2009/11/disable-comment-feeds-individual-posts/

 

No Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.