Botvinya προσθήκη σχολίου Απάντηση σχολίου. Βελτιώστε τη φόρμα σχολίων. Πώς να κάνετε στυλ σχολίων δέντρου

Ήρθε η ώρα να ασχοληθείτε σοβαρά με το στυλ των σχολίων σας στο WordPress. Σχεδόν σε όλα τα θέματα, διαμορφώνονται από αρχεία συστήματος, γεγονός που με τη σειρά του περιορίζει την επεξεργασία μεμονωμένων λειτουργιών. Νομίζω ότι πολλοί άνθρωποι το έχουν αντιμετωπίσει όταν χρειάστηκε να κάνουν αλλαγές στα σχόλια, αλλά δεν μπορούσαν να βρουν πού ακριβώς ήταν. Επομένως, θα ήταν καλύτερο να μεταφέρουμε όλη τη λειτουργικότητα στο τρέχον θέμα, κάτι που θα μας δώσει πλήρη ελευθερία ελέγχου.

Σε αυτό το άρθρο, έχω συγκεντρώσει μερικά ενδιαφέροντα χαρακτηριστικά που θα σας βοηθήσουν να βελτιώσετε τα σχόλιά σας. Ωστόσο, σας επιτρέπουν να διεξάγετε διαλόγους τόσο με τον διαχειριστή του ιστότοπου όσο και μεταξύ των χρηστών. Απαντήστε σε ερωτήσεις, ξεκινήστε διάφορες συζητήσεις, γενικά, εισαγάγετε την πλήρη εικονική επικοινωνία. Επομένως, είναι απαραίτητο να τα προσέχετε και να τα φέρετε στη σωστή μορφή.

Να τι θα κάνουμε:

  • Πλήρης προσαρμογή
  • Σχεδιασμός εμφάνισης
  • Αρίθμηση σχολίων
  • Καταμέτρηση μηνυμάτων ανά χρήστη
  • Εκχωρήστε μια κατάσταση σε κάθε χρήστη
  • Και άλλα μικροπράγματα

Θα αναλύσουμε κάθε σημείο ξεχωριστά και στο τέλος του άρθρου όλες οι λειτουργίες θα συγκεντρωθούν πλήρως σε έναν έτοιμο κώδικα.

Προσαρμογή σχολίων

Στο WordPress, τα σχόλια εμφανίζονται μέσω της συνάρτησης wp_list_comments, συνήθως στο αρχείο comments.php. Και ο σχηματισμός μεμονωμένων συναρτήσεων, καθώς και ο ίδιος ο κύκλος, χρησιμοποιείται από το πρότυπο αρχείου συστήματος comment-template.php. Αλλά σε σπάνιες περιπτώσεις, συμβαίνει η ρύθμιση να βρίσκεται στο αρχείο θέμα WordPress, functions.php ή comments.php.

Έτσι, εάν το θέμα σας δεν εμπίπτει σε μια σπάνια περίπτωση και πρέπει να κάνετε τις δικές σας ρυθμίσεις, ανοίξτε το αρχείο functions.php και πριν το σύμβολο ?> προσθέστε τον ακόλουθο κώδικα:

Εάν (! function_exists("my_comment")) : συνάρτηση my_comments($comment, $args, $depth) ( global $commentnumber; $GLOBALS["comment"] = $comment; switch ($comment->comment_type) : case " pingback" : case "trackback" : ?>

  • ", ""); ?>
  • id="li-comment-">
    comment_parent) $avatar_size = 39; echo get_avatar($comment, $avatar_size); /* μεταφραστές: 1: συγγραφέας σχολίου, 2: ημερομηνία και ώρα */ printf(__("%1$s %2$s", "my_press"), sprintf(" %μικρό", get_comment_author_link()), sprintf(" ", esc_url(get_comment_link($comment->comment_ID)), get_comment_time("c"), /* translators: 1: date, 2: time */ sprintf(__("%1$s %2$s", " my_press"), get_comment_date(), get_comment_time()))); ?>
    comment_approved == "0"): ?>
    __("Απάντηση", "my_press"), "depth" => $depth, "max_depth" => $args["max_depth"]))); ?>
    ", ""); ?>

    Στη συνέχεια, στο αρχείο comments.php προσθέστε μια συνάρτηση κλήσης:

      "my_comments")); $commentnumber = 0; ?>

    Μετά από αυτούς τους χειρισμούς, τα σχόλιά σας θα δημιουργηθούν χρησιμοποιώντας μια συνάρτηση προτύπου από το αρχείο functions.php του τρέχοντος θέματος.

    Καταμέτρηση σχολίων ανά χρήστη

    Χρησιμοποιώντας τη συνάρτηση που παρουσιάζεται παρακάτω, μπορούμε να εμφανίσουμε τον συνολικό αριθμό των μηνυμάτων που έχουν μείνει δίπλα στον σχολιαστή. Έτσι, μπορείτε να παρατηρήσετε πόσο ενεργός είναι ο χρήστης, και επιπλέον, τα στατιστικά δεν είναι ποτέ περιττά, ειδικά από αυτή την άποψη.

    Ανοίγουμε το αρχείο functions.php που γνωρίζουμε ήδη και προσθέτουμε τον ακόλουθο κώδικα στο τέλος πριν από το σύμβολο ?>:

    //συνάρτηση καταμέτρησης μηνυμάτων χρήστη bac_comment_count_per_user() ( καθολική $wpdb; $comment_count = $wpdb->get_var("SELECT COUNT(comment_ID) FROM ". $wpdb->comments." WHERE comment_author_email = "" . get_comment_author_." " AND comment_approved = "1" AND comment_type NOT IN ("pingback", "trackback")"); if ($comment_count == 1) (echo " 1 Message"; ) else (echo " " . $comment_count . " Μηνύματα ";))

    Τώρα το μόνο που μένει είναι να προσθέσετε τη λειτουργία κλήσης στην τοποθεσία που χρειάζεστε:

    Τα μηνύματα θα μετρώνται με βάση το e-mail του χρήστη, είτε είναι εγγεγραμμένο είτε όχι. Λαμβάνονται υπόψη μόνο τα σχόλια που επιβεβαιώνονται από τον διαχειριστή του ιστότοπου, αλλά δεν λαμβάνονται υπόψη αυτά που βρίσκονται σε κατάσταση αναμονής και έχουν διαγραφεί.

    Εκχωρούμε μια κατάσταση σε κάθε χρήστη ανάλογα με τον αριθμό των σχολίων

    Αυτή ακριβώς είναι η περίπτωση όπου τα στατιστικά σίγουρα διαδραματίζουν σημαντικό ρόλο. Δεδομένου ότι η συνάρτηση είναι χτισμένη με βάση τον αριθμό των μηνυμάτων και ο αριθμός που προκύπτει δίνει στον χρήστη την κατάλληλη κατάσταση. Αυτό, θεωρητικά, χρησιμοποιείται σε κάθε φόρουμ για να δείξει την εξουσία του χρήστη σε έναν δεδομένο πόρο.

    Ανοίξτε ξανά το αρχείο functions.php και πριν το σύμβολο ?> προσθέστε τον ακόλουθο κώδικα:

    //συνάρτηση κατάστασης χρήστη get_author_class($comment_author_email,$user_id)( καθολική $wpdb; $adminEmail = get_option("admin_email"); $author_count = count($wpdb->get_results("SELECT_ID as author_mindse FROM $dw "; if($author_count>=1 && $author_count<50 && $comment_author_email !==$adminEmail) echo "Прохожий"; else if($author_count>=50 && $author_count<100 && $comment_author_email !==$adminEmail) echo "Новичок"; else if($author_count>=100 && $author_count<250 && $comment_author_email !==$adminEmail) echo "Знающий"; else if($author_count>=250 && $author_count<400 && $comment_author_email !==$adminEmail) echo "Опытный"; else if($author_count>=400 &&$author_count<800 && $comment_author_email !==$adminEmail) echo "Бывалый"; else if($author_count>=800 && $author_count<1200 && $comment_author_email !==$adminEmail) echo "СуперПупер"; else if($author_count>Καθηγητής";)

    Και στην επιθυμητή θέση εμφανίζουμε τη λειτουργία κλήσης:

    comment_author_email,$comment->user_id)?>

    Εξήγηση:αυτή η λειτουργία, όπως και η προηγούμενη, σχετίζεται με το email του χρήστη. Μόνο που εδώ η κύρια εργασία δεν είναι μόνο η καταμέτρηση μηνυμάτων, αλλά ο αριθμός από και προς ανάλογα με τον καθορισμένο αριθμό. Και μόλις ο χρήστης το φτάσει, παίρνει μια συγκεκριμένη θέση. Υπάρχουν 7 καταστάσεις συνολικά, συν διαχειριστής και διακριτικά για τους εγγεγραμμένους συμμετέχοντες.

    Ολοκληρωμένος κωδικός σχολίου

    Εδώ φτάνουμε στο τέλος αυτού του άρθρου. Εδώ δεν ήμουν τεμπέλης, συλλέγοντας όλες τις λειτουργίες, συμπεριλαμβανομένης της ρύθμισης σχολίων, σε έναν έτοιμο κώδικα. Πρόσθεσα τα δικά μου στυλ στυλ και το αποτέλεσμα ήταν κάτι σαν μίνι φόρουμ.

    Ανοίξτε το αρχείο functions.php και στο τέλος πριν από το σύμβολο ?> προσθέστε τον ακόλουθο κώδικα:

    //συνάρτηση καταμέτρησης μηνυμάτων χρήστη bac_comment_count_per_user() ( καθολική $wpdb; $comment_count = $wpdb->get_var("SELECT COUNT(comment_ID) FROM ". $wpdb->comments." WHERE comment_author_email = "" . get_comment_author_." " AND comment_approved = "1" AND comment_type NOT IN ("pingback", "trackback")"); if ($comment_count == 1) (echo " 1 Message"; ) else (echo " " . $comment_count . " Μηνύματα "; ) ) //συνάρτηση κατάστασης χρήστη get_author_class($comment_author_email,$user_id)( καθολική $wpdb; $adminEmail = get_option("admin_email"); $author_count = count($wpdb->get_results("SELECT comment_ROID $ ως συγγραφέας wpdb->σχόλια WHERE comment_author_email = "$comment_author_email" ")); if($comment_author_email ==$adminEmail) echo "Admin"; if($user_id!=0 && $comment_author_email !=$adminEmail) echo "U"; ($author_count>=1 && $author_count<50 && $comment_author_email !==$adminEmail) echo "Прохожий"; else if($author_count>=50 && $author_count<100 && $comment_author_email !==$adminEmail) echo "Новичок"; else if($author_count>=100 && $author_count<250 && $comment_author_email !==$adminEmail) echo "Знающий"; else if($author_count>=250 && $author_count<400 && $comment_author_email !==$adminEmail) echo "Опытный"; else if($author_count>=400 &&$author_count<800 && $comment_author_email !==$adminEmail) echo "Бывалый"; else if($author_count>=800 && $author_count<1200 && $comment_author_email !==$adminEmail) echo "СуперПупер"; else if($author_count>=1200 && $comment_author_email !==$adminEmail) echo "Professor"; ) //προσαρμογή σχολίων εάν (! function_exists("wordsmall_comment")) : συνάρτηση wordsmall_comment($comment, $args, $depth) ( global $commentnumber; $GLOBALS["comment"] = $comment; switch ($comment- > comment_type) : case "pingback" : case "trackback" : ?>

  • id="li-comment-">
    %μικρό", get_comment_author_link()); ?> comment_parent)( $comment_parent_href = htmlspecialchars(get_comment_link($comment->comment_parent)); $comment_parent = get_comment($comment->comment_parent); ?> @Απάντηση για:comment_author;?>
    comment_parent) $avatar_size = 60; echo get_avatar($comment, $avatar_size); ?> comment_author_email,$comment->user_id)?>
    comment_approved == "0"): ?>
    ", ""); ?> __("Απάντηση", "wallpress"), "depth" => $depth, "max_depth" => $args["max_depth"]))); ?>

    Τώρα ανοίξτε το αρχείο comments.php, βρείτε σε αυτό τη λειτουργία για την κλήση σχολίων. Μοιάζει κάπως έτσι:

    Αλλαγή σε αυτό:

      "wordsmall_comment")); ?>

    Το τελικό βήμα. Ανοίξτε το αρχείο style.css και στο τέλος προσθέστε τα παρακάτω στυλ:

    My_commentlist( border-top:none; ) .my_commentlist .comment( padding:0 0 15px 0; border:none; ) .my_commentlist .pingback( padding:0 0 15px 0; border:none; ) .my_commentld .ren (σχόλιο . list-style-type: none; padding:0px; margin-left:0px;/*εάν χρειάζεστε εσοχή για πλαίσια σε σχήμα δέντρου, βάλτε 15px*/ ) .my_commentlist .comment .children .comment( margin:15px 0 0 0 ; περίγραμμα: κανένα; padding: 0; ) #comments ( φόντο: #fff; ) #comments .my_commentlist ( περιθώριο: 10px 0; padding: 0; list-style: none; background: #ebf0f3; padding: 5px; ) # comments .my_commentlist .comment ( margin:0; padding: 0 0 10px; background: #fff; ) #comments .my_commentlist .my_comment-author ( εμφάνιση: inline; περίγραμμα δεξιά: 1px συμπαγές #e0e0e0; πλάτος: 100px; float: αριστερά; περιθώριο : 0 εικονοστοιχεία 15 εικονοστοιχεία 10 εικονοστοιχεία 0; ) #comments .my_commentlist .commentmetadata ( float:left; ) #comments .my_commentlist p ( clear:none; χρώμα: #555; γραμματοσειρά: 14px arial; line-xight;) #23 σχόλια .my_commentlist .comment-content ( margin-left: 116px; padding-right: 10px; ) #comments .my_commentlist .reply ( text-align:right; ) #comments .my_commentlist .reply a( background: #f5f5f5; περίγραμμα: 1px συμπαγές rgba(0, 0, 0, 0.06); ακτίνα περιγράμματος: 2px; χρώμα : #515456; οθόνη: ενσωματωμένο μπλοκ, μέγεθος γραμματοσειράς: 13 εικονοστοιχεία, βάρος γραμματοσειράς: κανονικό, ύψος γραμμής: 30 εικονοστοιχεία, δεξιά περιθώριο: 15 εικονοστοιχεία, ελάχ. ύψος: 30 εικονοστοιχεία, συμπλήρωση: 0 12 εικονοστοιχεία, στοίχιση κειμένου: στο κέντρο ; κείμενο-διακόσμηση: κανένα; ) .my_commentlist .avatar( περίγραμμα: μεσαίο κανένα; περιθώριο-ακτίνα: 50%; float: κανένα; περιθώριο: 5 εικονοστοιχεία αυτόματα; padding: 0 px; εμφάνιση: πίνακας; ) .my_commentlist .comment-header( ύψος: 30 εικονοστοιχεία; φόντο: #DEE5EB; περιθώριο-κάτω: 15 εικονοστοιχεία; ) .my_commentlist cite.fn( χρώμα: #444; γραμματοσειρά: bold 13px/30px arial; padding-left: 10px; ) .my_commentate color ( .com_d . .my_commentlist .comment-body ( υπερχείλιση: κρυφή; θέση: σχετική; φόντο:#fff; ) .my_commentlist .rep-authorcom ( χρώμα: #25394e; μέγεθος γραμματοσειράς: 13 εικονοστοιχεία; ύψος γραμμής: 30 εικονοστοιχεία; ) .my_commentlist .edit-link a ( φόντο: κανένα !σημαντικό; περίγραμμα: κανένα !σημαντικό; ακτίνα περιγράμματος: 0 !important; χρώμα: #999!important; οθόνη: inline-block; μέγεθος γραμματοσειράς: 11 px !important; βάρος γραμματοσειράς: κανονικό, ύψος γραμμής: 30 px, περιθώριο δεξιά: 5 px !important, ελάχιστο ύψος: 30 px ; padding: 0 !important; text-align: center; text-decoration: none; ) .com_per (περίγραμμα: medium none; color: #666; display: block; μέγεθος γραμματοσειράς: 11px; text-decoration: center; ) .vip1,.vip, .vp, .vip2, .vip3, .vip4, .vip5, .vip6, .vip7 ( περίγραμμα: μεσαίο κανένα; γραμματοσειρά: bold 13px arial; εμφάνιση: block; στοίχιση κειμένου: κέντρο, περιθώριο- κάτω: 5 εικονοστοιχεία; κείμενο-διακόσμηση: κανένα; ) .vp (χρώμα: #e82e24;).vip1 (χρώμα: #348be8;).vip2 (χρώμα: #BE005E;).vip3 (χρώμα: #2e517e;).vip4 ( χρώμα: #658a18;).vip5 (χρώμα: #00A56D;).vip6 (χρώμα: #e35d28;).vip7 (χρώμα: #99A400;).vip (χρώμα: #4c5176; μέγεθος γραμματοσειράς: 11 px; περιθώριο: 0 ;)

    Ο κώδικας λειτουργεί πλήρως και δεν προκαλεί σφάλματα, αλλά ενδέχεται να χρειαστούν μικρές αλλαγές στα στυλ CSS.

    Αυτό το όνομα δεν ενοχλεί πολλούς ανθρώπους, αλλά μερικές φορές τίθεται το ερώτημα πώς να αλλάξετε προσθέστε ένα σχόλιο για να αφήσετε μια κριτική ή κάτι παρόμοιο. Σε αυτή την περίπτωση, αυτό το άρθρο θα σας βοηθήσει. Όπως έγραψα παραπάνω, θα σας δείξω μερικούς τρόπους.

    Μέθοδος Νο. 1

    Για την πρώτη μέθοδο, πρέπει να βρείτε το αρχείο στο φάκελο με το θέμα που είναι εγκατεστημένο στον ιστότοπό σας σχόλια.php. Αν υπάρχει, ανοίξτε τον και αναζητήστε τον πίνακα σε αυτόν που είναι υπεύθυνος για τη ρύθμιση και την εμφάνιση των περιεχομένων της φόρμας σχολίων. Μοιάζει κάπως έτσι:

    $args = πίνακας("comment_notes_before" => "

    ", "comment_field" => "

    ", "id_submit" => "comm_subm", "label_submit" =>

    Έτσι, σε αυτόν τον πίνακα, πρέπει να προσθέσετε μια νέα παράμετρο με την επιθυμητή τιμή και αυτό είναι. Στην περίπτωσή μας, αυτό είναι:

    "title_reply" => "Αφήστε την κριτική σας",

    Οπως ΚΑΤΑΛΑΒΑΙΝΕΤΕ - Αφήστε την κριτική σας, αυτό είναι το νέο όνομα αντί για - Προσθήκη σχολίου. Μπορείτε να προσθέσετε μια τέτοια παράμετρο στο τέλος ή στην αρχή του πίνακα. Θα αποδειχθεί κάτι σαν αυτό:

    $args = array("title_reply" => "Αφήστε την κριτική σας", "comment_notes_before" => "

    Συμπληρώστε τα παρακάτω πεδία. Το email σας δεν θα δημοσιευτεί. Τα απαιτούμενα πεδία είναι επισημασμένα *

    ", "comment_field" => "

    ", "id_submit" => "comm_subm", "label_submit" => "Υποβολή",); comment_form($args);

    Προστέθηκε στην αρχή και τώρα, στις σελίδες ανάρτησης θα εμφανίζεται η γραμμή - Αφήστε την κριτική σας. Αυτή η μέθοδος δεν είναι περίπλοκη και απαιτεί ελάχιστη προσπάθεια, το κύριο πράγμα είναι να ορίσετε σωστά τη συστοιχία. Αλλά μερικές φορές συμβαίνει ότι δεν υπάρχει αρχείο comments.php μέσα στο θέμα ή δεν υπάρχει πίνακας σε αυτό και δεν ξέρετε πώς να το προσθέσετε σωστά εκεί, τότε η δεύτερη μέθοδος θα σας βοηθήσει.

    Μέθοδος Νο. 2

    Η ουσία της δεύτερης μεθόδου είναι να προσθέσετε μια νέα συνάρτηση, η οποία θα αντικαταστήσει το όνομα. Για να το κάνετε αυτό, στο φάκελο με το ενεργό θέμα, πρέπει να βρείτε το αρχείο λειτουργία.phpμε προσαρμοσμένες λειτουργίες και σε βολικό μέρος, αν δεν το γνωρίζετε, τότε στο τέλος πριν από το κλείσιμο της ετικέτας PHP - ?> , αν δεν υπάρχει κάτι τέτοιο, τότε απλώς προσθέστε τον ακόλουθο κώδικα στο τέλος:

    Συνάρτηση wph_change_submit_label($defaults) ( $defaults["title_reply"] = "Αφήστε την κριτική σας"; επιστροφή $defaults; ) add_filter("comment_form_defaults", "wph_change_submit_label");

    Δώρο

    Αυτό είναι ουσιαστικά το ίδιο με αυτό που έγινε στην πρώτη μέθοδο, απλά, εκεί το εφαρμόσαμε απευθείας στον πίνακα, και εδώ μέσω ενός φίλτρου. Μετά από αυτά τα βήματα, θα δείτε μια αλλαγή στο όνομα. Όπως και στην πρώτη μέθοδο, μπορείτε να αλλάξετε το κείμενο - Αφήστε την κριτική σας σε αυτό που σας αρέσει. Αυτό το κείμενο παρέχεται ως παράδειγμα.

    Θέλω επίσης να προτείνω και να επιστήσω την προσοχή στην κλίση της λέξης Σχόλια. Εάν η φόρμα σας εμφανίζει τη γραμμή - 1 σχόλιο δημοσιεύτηκε ή Σχόλια: 10. Μπορείτε να χρησιμοποιήσετε τη Συνάρτηση από το άρθρο. Εάν το χρησιμοποιείτε ήδη, προτείνω σε μια γραμμή με έναν πίνακα:

    Array ("σχόλιο", "σχόλιο", "σχόλια")

    Αλλάξτε τα ονόματα για αναθεώρηση, κριτική, αξιολογήσεις εάν χρησιμοποιήσατε αυτήν τη λέξη στις παραπάνω μεθόδους. με αυτό τον τρόπο, θα τα έχετε όλα ίδια, και όχι διάσπαρτα, υπάρχουν κριτικές και υπάρχουν σχόλια.

    Αυτές είναι οι πληροφορίες που ήθελα να σας δώσω σήμερα. Ίσως θα είναι χρήσιμο σε κάποιον.

    Αυτό είναι όλο, ευχαριστώ για την προσοχή σας. 🙂

    Πρόσφατα έψαχνα στα αρχεία του θέματος WordPress μου, δηλαδή στους κανόνες για το πρότυπο εμφάνισης σχολίων, κατανοώντας ταυτόχρονα τη δομή του και τις διάφορες λειτουργίες που είναι υπεύθυνες για την εμφάνιση σχολίων σε αναρτήσεις ιστολογίου. Ως αποτέλεσμα, άλλαξα την τυπική έξοδο, δημιούργησα και συμπεριέλαβα το δικό μου αρχείο comments.php. Αποφάσισα να παρουσιάσω το αποτέλεσμα που προέκυψε με τη μορφή ενός άρθρου, καθώς κατάλαβα καλά αυτό το θέμα και υπήρχε αρκετό υλικό.

    Ελπίζω ότι το άρθρο θα είναι χρήσιμο για ιδιοκτήτες ιστολογίων WordPress που είναι εξοικειωμένοι με HTML, CSS και PHP.

    ***

    Στο WordPress, για να συνδέσετε ένα πρότυπο σχολίου σε μια ανάρτηση ή σελίδα, χρησιμοποιήστε τη συνάρτηση comments_template(), η οποία παίρνει δύο παραμέτρους:

    • το πρώτο είναι η διαδρομή προς το αρχείο προτύπου, από προεπιλογή είναι comments.php στον φάκελο με το τρέχον θέμα
    • το δεύτερο χρησιμοποιείται για τον διαχωρισμό σχολίων ανά τύπο (κανονικό, trackbacks και pingback), false από προεπιλογή

    Ας εισαγάγουμε comments_template() αφού εμφανιστεί η καταχώριση στο πρότυπο ανάρτησης single.php ή page page.php .

    Για περιγραφή και αποδεκτά επιχειρήματα της συνάρτησης comments_template() και άλλων που αναφέρονται στο άρθρο, ανατρέξτε στον Κώδικα του WordPress.

    Προετοιμασία του προτύπου

    Ας προσπαθήσουμε να κατανοήσουμε τα πρότυπα σχολίων WP και να φτιάξουμε το δικό μας αρχείο για την εμφάνιση σχολίων σε αναρτήσεις και σελίδες ιστολογίου. Ως παραδείγματα αναφοράς, μπορείτε να πάρετε πρότυπα από τυπικά θέματα WordPress. Ας δημιουργήσουμε ένα νέο έγγραφο σε οποιοδήποτε πρόγραμμα επεξεργασίας κειμένου, ας το ονομάσουμε comments.php και αρχίζουμε την επεξεργασία.

    • Κατ 'αρχήν, μπορείτε να ονομάσετε το αρχείο ό,τι θέλετε και, στη συνέχεια, να γράψετε τη διαδρομή προς αυτό το αρχείο στο comments_template(), αλλά είναι καλύτερο να παραμείνετε στο τυπικό όνομα
    • Παρεμπιπτόντως, μπορείτε επίσης να επεξεργαστείτε το αρχείο στον πίνακα διαχείρισης του WP.
    • Είναι καλύτερο, φυσικά, να γράψετε κώδικα και να δοκιμάσετε αμέσως την επίδρασή του στο blog σας ή σε έναν τοπικό διακομιστή.

    Στο WordPress είναι δυνατό να απενεργοποιήσετε τα σχόλια για μεμονωμένες αναρτήσεις, επομένως πριν τις εμφανίσετε πρέπει να ελέγξετε για «ανοιχτότητα»:

    Αυτός είναι ένας κωδικός περιτυλίγματος για τις περαιτέρω ενέργειές μας. Τώρα ας ετοιμάσουμε ένα κοντέινερ για το μπλοκ σχολίων

    με μια σημασιολογικά σωστή κλάση ή αναγνωριστικό (η κλάση είναι φυσικά προτιμότερη):

    Μέσα

    ας γράψουμε έναν τίτλο για να καταλάβουν οι αναγνώστες σας ότι υπάρχουν σχόλια εδώ και τίποτα άλλο, tag

    Αυτό θα είναι σωστό για αυτό:

    "

    Εδώ έχουμε υποδείξει μία από τις συναρτήσεις του WordPress - the_title(), το αποτέλεσμα της εκτέλεσης αυτής της συνάρτησης θα είναι η έξοδος του τίτλου της τρέχουσας ανάρτησης ή σελίδας. Εάν δεν θέλετε να εμφανίζεται ο τίτλος, μπορείτε απλώς να γράψετε "Σχόλια αναγνωστών".

    Στη συνέχεια, πριν εμφανίσετε σχόλια, πρέπει να βεβαιωθείτε ότι υπάρχουν, π.χ. ελέγξτε, εάν υπάρχει, εμφανίστε την πλήρη λίστα, εάν όχι, τότε μπορείτε να δείξετε στον χρήστη κάτι σαν "". Με αυτόν τον τρόπο, θα είναι σαφές στον επισκέπτη της ανάρτησης/σελίδας σας ότι κανείς δεν έχει γράψει τίποτα ακόμα και η κινητήρια φράση «Μπορείς να είσαι ο πρώτος» θα αυξήσει την πιθανότητα να σου γράψει κάτι πιο γρήγορα.

    Έτσι, μετά από αυτή τη διατύπωση του προβλήματος, γίνεται σαφές ότι για την υλοποίηση θα χρειαστούμε δομές if/else και μια συνάρτηση για την εμφάνιση του αριθμού των σχολίων get_comments_number() . Εάν η συνάρτηση επιστρέψει 0 (μηδέν), τότε εμφανίζουμε "No comments yet...", διαφορετικά "Σχόλια αναγνώστη...":

    Δεν υπάρχουν ακόμα σχόλια, αλλά μπορείτε να είστε οι πρώτοι

    Σχόλια αναγνωστών για το άρθρο ""

    Οι συζητήσεις έχουν κλείσει για αυτήν τη σελίδα

    Εξαγωγή σχολίων

    Ωραία, έχουμε εμφανίσει τις επικεφαλίδες ανάλογα με την παρουσία ή την απουσία σχολίων, τώρα είναι λογικό να εμφανίζονται τα ίδια τα σχόλια - η συνάρτηση wp_list_comments() είναι υπεύθυνη για αυτό. Η προεπιλεγμένη λειτουργία αναδιπλώνει όλα τα σχόλια σε ετικέτες

  • , οπότε πρέπει να προστεθεί ένα περιτύλιγμα
      με ανάθεση τάξης.commentlist:

      Το wp_list_comments() παίρνει μια σειρά από ορίσματα που μπορούν να χρησιμοποιηθούν για την ευέλικτη προσαρμογή της εμφάνισης των σχολίων. Για παράδειγμα, μπορείτε να αλλάξετε το μέγεθος του avatar, το κείμενο απάντησης σχολίου και άλλες ρυθμίσεις μεταβιβάζοντας μια λέξη-κλειδί και μια τιμή:

      $args = array("avatar_size" => 64, // μέγεθος avatar 64*64px, προεπιλογή 32 "reply_text" => "Reply" // κείμενο της απάντησης στο σχόλιο "callback" => "my_comments" // λειτουργία για τη δημιουργία ενός εξωτερικού τύπου σχολίου)

      Η παράμετρος επανάκλησης αξίζει ιδιαίτερης προσοχής, η οποία λαμβάνει την τιμή του ονόματος μιας προσαρμοσμένης συνάρτησης για την εμφάνιση ενός σχολίου. Με τη βοήθειά του, μπορείτε να προσαρμόσετε ευέλικτα την εμφάνιση κάθε σχολίου. Αυτή είναι η τυπική συνάρτηση εξόδου από το αρχείο comment-template.php:

    1. id="li-comment-">
      "); ?> %μικρό λέει:"), get_comment_author_link()) ?>
      comment_approved == "0"): ?>
      $depth, "max_depth" => $args["max_depth"]))) ?>

      Ο ευκολότερος τρόπος είναι να πάρετε αυτήν τη συνάρτηση και να την επεξεργαστείτε μόνοι σας και στη συνέχεια να την καλέσετε ως προσαρμοσμένη γράφοντάς την στο αρχείο comments.php ή functions.php.

      Αφού εμφανίσετε μια λίστα σχολίων, μπορείτε να αλλάξετε την εμφάνισή τους χρησιμοποιώντας στυλ CSS. Ορισμένες παράμετροι της wp_list_comments() αντιγράφονται στον διαχειριστή του WP, στην καρτέλα Επιλογές → Συζήτηση, ιδίως η παρουσία σχολίων δέντρου, ταξινόμηση κατά ημερομηνία κ.λπ.

      Φόρμα υποβολής σχολίων

      Για να προσθέσετε μια φόρμα σχολίου, χρησιμοποιήστε τη συνάρτηση comment_form(). Ας το προσθέσουμε κάτω από τη λίστα των σχολίων:

      Δεν υπάρχουν ακόμα σχόλια, αλλά μπορείτε να είστε οι πρώτοι

      Σχόλια αναγνωστών για το άρθρο ""

      1. 64, "reply_text" => "Reply", "callback" => "my_comments"); wp_list_comments($args); ?>

      Οι συζητήσεις έχουν κλείσει για αυτήν τη σελίδα

      Όταν καλείται με αυτόν τον τρόπο, η comment_form() θα φορτώσει τον τυπικό κώδικα από το αρχείο comment-template.php του WordPress. Η συνάρτηση παίρνει δύο παραμέτρους:

      Comment_form ($args, $post_id);

      • $args — πίνακας ρυθμίσεων εξόδου φόρμας
      • $post_id — το αναγνωριστικό της ανάρτησης στην οποία θα εφαρμοστεί η συνάρτηση, από προεπιλογή η τρέχουσα ανάρτηση

      Για παράδειγμα, ας επικυρώσουμε τα πεδία φόρμας στην HTML5 και ας προσθέσουμε συμβουλές κειμένου. Ας δημιουργήσουμε έναν πίνακα $args για να εισάγουμε τις απαιτούμενες ρυθμίσεις:

      $args = array(); comment_form($args);

      Πρέπει να καταχωρήσετε τα κλειδιά ρυθμίσεων στον πίνακα:

      $args = array("fields" => application_filters("comment_form_default_fields", $fields));

      Τώρα πρέπει να συμπληρώσουμε τη μεταβλητή του πίνακα $fields, η οποία περιλαμβάνει τα πεδία της φόρμας. Ο ευκολότερος τρόπος είναι να πάρετε τον τυπικό κώδικα του WordPress από το comment-template.php και να τον αλλάξετε λίγο:

      "

      " . ($req ?" *" : "") . "

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

      " . "

      "); $args = πίνακας ("πεδία" => application_filters ("comment_form_default_fields", $fields)); comment_form ($args); ?>

      Εδώ, οι τιμές των παραμέτρων συγγραφέας, email και url είναι ο κώδικας html των πεδίων «Όνομα», «Αλληλογραφία» και «Ιστότοπος», αντίστοιχα. Αυτές οι τιμές πρέπει να τροποποιηθούν.

      Για τα πεδία πρέπει να προσθέσουμε τα ακόλουθα χαρακτηριστικά:

      • υποχρεωτικό - καθιστά τα πεδία υποχρεωτικά, προσθέστε τα για τα πεδία "Όνομα" και "Ιστότοπος".
      • σύμβολο κράτησης θέσης - προσθέτει μια επεξήγηση εργαλείου κειμένου στο πεδίο
      • pattern="(3,)" για το πεδίο "Όνομα" - υποδείξτε το όνομα με γράμματα του λατινικού ή ρωσικού αλφαβήτου και μήκος τουλάχιστον 3 χαρακτήρων
      • type="email" για το πεδίο "Mail" - αυτό θα προσθέσει επικύρωση email HTML5
      • αυτόματη συμπλήρωση - ενεργοποιεί την αυτόματη συμπλήρωση για πεδία
      • type="url" για το πεδίο "Ιστότοπος".

      Να θυμάστε ότι τα νέα χαρακτηριστικά HTML5 δεν θα λειτουργούν σε παλαιότερα προγράμματα περιήγησης. Τα προγράμματα περιήγησης που δεν κατανοούν τους νέους τύπους πεδίων θα τους εμφανίζουν απλώς ως κείμενο, π.χ. .

      Επιπλέον, για το ιστολόγιό μου άλλαξα ετικέτες εδώ κι εκεί, πρόσθεσα κλάσεις για στυλ και ως αποτέλεσμα πήρα τον ακόλουθο κώδικα για τον πίνακα $fields:

      "

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

      "); ?>

      Έχουμε αλλάξει τα πεδία εισαγωγής δεδομένων. Τώρα ας επεξεργαστούμε την ίδια τη φόρμα σχολίων

      " ?>

      Αυτός είναι ο τυπικός κώδικας WordPress, μόλις τον τροποποίησα λίγο - πρόσθεσα μια υπόδειξη κειμένου και έγραψα μια πρόσθετη τάξη για στυλ.

      Αυτό είναι που κατέληξα χρησιμοποιώντας το στυλ CSS:

      Φόρμα σχολίου WordPress με χρήση χαρακτηριστικών HTML5

      Συμπέρασμα

      Τέλος, θα δημοσιεύσω τον κώδικα των σχολίων που προκύπτουν.php:

      αναγνώστες του άρθρου ""

      • Αφήστε το πρώτο σχόλιο - προσπάθησε ο συγγραφέας
      1. id="li-comment-">
        "); ?> %μικρό γράφει:"), get_comment_author_link()) ?>
        comment_approved == "0"): ?>
        $depth, "max_depth" => $args["max_depth"]))) ?>
        "Reply", "callback" => "verstaka_comment"); wp_list_comments($args); ?>
      "

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

      "); $args = πίνακας ("comment_notes_after" => "", "comment_field" => "

      ", "label_submit" => "Υποβολή", "fields" => application_filters("comment_form_default_fields", $fields)); comment_form($args); ?>

      Οι συζητήσεις έχουν κλείσει για αυτήν τη σελίδα

      Συχνές ερωτήσεις σχετικά με τα σχόλια

      Πώς να επισημάνετε τα σχόλια του συγγραφέα και των χρηστών;

      Μερικές φορές είναι πολύ βολικό να ορίσετε μια ξεχωριστή εμφάνιση για τα σχόλια του συγγραφέα· υπάρχουν ακόμη και ειδικά πρόσθετα για αυτό. Ωστόσο, μπορείτε να κάνετε χωρίς πρόσθετα - απλά γράφοντας στυλ για την κλάση .bypostauthor σε ένα αρχείο css. Ομοίως, μπορείτε να ορίσετε στυλ για σχόλια χρηστών - .bypostuser:

      Πώς να κάνετε στυλ στα σχόλια του δέντρου;

      Για να ενεργοποιήσετε τα δενδρώδη σχόλια, πρέπει να μεταβείτε στον διαχειριστή του WP, Ρυθμίσεις → Συζήτηση → Να επιτρέπονται τα σχόλια δέντρου. Τώρα τα παιδικά σχόλια θα έχουν δομή δέντρου· μπορούν να τους δοθούν μεμονωμένα στυλ, για παράδειγμα, εσοχές. Το μόνο που χρειάζεται να κάνετε είναι να ορίσετε τους κανόνες στο css για τη λίστα με το class.children:

      Commentlist .children ( padding: 0 0 0 40px; /* αριστερό padding για παιδικά σχόλια */ )

      Στυλ για άρτια και περιττά σχόλια

      Το WordPress από προεπιλογή δίνει στα περίεργα σχόλια μια κατηγορία .ζυγών και στα ζυγά σχόλια μια κατηγορία .μονά . Είναι εύκολο να ορίσετε τα δικά σας στυλ μέσα από αυτές τις κατηγορίες:

      Λίστα σχολίων .ζυγά ( /* στυλ για περίεργα σχόλια */ ) .commentlist .μονά ( /* στυλ για ζυγά σχόλια */ )

      Πώς να κλείσετε τα σχόλια σε μια ξεχωριστή ανάρτηση;

      Είναι πολύ εύκολο - μεταβείτε στη σελίδα για τη σύνταξη μιας ανάρτησης, Ρυθμίσεις οθόνης → Συζητήσεις, εμφανίζεται ένα μπλοκ Συζητήσεις κάτω από το πεδίο ανάρτησης, καταργήστε την επιλογή του στοιχείου Επιτρέπονται σχόλια.

      • Όταν δημιουργείτε το δικό σας πρότυπο σχολίων, μπορείτε να χρησιμοποιήσετε αρχεία comments.php από τυπικά και άλλα επί πληρωμή και δωρεάν θέματα WordPress
      • Μια εναλλακτική λύση στα τυπικά σχόλια είναι οι προσθήκες φόρμας σχολίων τρίτων, για παράδειγμα το δημοφιλές DISQUS
      • Είναι πολύ πιθανό να επεξεργαστείτε τον κώδικα απευθείας στο ίδιο το αρχείο comment-template.php, ωστόσο, εάν το WordPress ενημερωθεί, όλος ο κώδικας θα αντικατασταθεί - θα πρέπει να επεξεργαστείτε ξανά
      • Θυμηθείτε, δεν υπάρχει τέλειο πρότυπο σχολίων.

      Βοηθήστε το έργο

      65 ψήφοι, μέσος όρος: 4,46 απο 5)

      Πάει καιρός από τότε που έγραψα κάτι για το WordPress. Επομένως, σήμερα θα μοιραστώ μαζί σας πώς μπορείτε να αλλάξετε με μη αυτόματο τρόπο τη φόρμα σχολίων στο WordPress. Νομίζω ότι αυτή η γνώση μπορεί να είναι χρήσιμη σε κάθε αρχάριο blogger, γιατί η φόρμα σχολίων είναι μερικές φορές το μόνο μέσο επικοινωνίας μεταξύ των επισκεπτών και του συγγραφέα. Μην περνάς :)

      Πριν ξεκινήσουμε οποιουσδήποτε χειρισμούς με τον κώδικα, θέλω να σας προειδοποιήσω εκ των προτέρων ότι θα επεξεργαζόμαστε τα αρχεία του ίδιου του WordPress και όχι τα αρχεία θεμάτων. Ναι, μπορεί να φαίνεται επικίνδυνο σε κάποιους, άσκοπο σε άλλους και απλά δεν θα αρέσει σε άλλους :) Αλλά το έκανα ακριβώς έτσι και δεν είχα κανένα πρόβλημα. Σας συμβουλεύω να δημιουργήσετε ένα αντίγραφο ασφαλείας του αρχείου που επεξεργάζεστε πριν ξεκινήσετε.
      Σας προειδοποίησα για την ασφάλεια, τώρα θέλω να δείξω το αποτέλεσμα στο οποίο έφτασα.


      Όπως μπορούμε να δούμε, η γραμμή "Το e-mail σας δεν θα δημοσιευτεί" έχει αφαιρεθεί. Τα απαιτούμενα πεδία είναι επισημασμένα *". Δεν υπάρχει λόγος να θεωρούμε τους επισκέπτες ανεγκέφαλους ηλίθιους. Καταλαβαίνουν ήδη τι πρέπει να συμπληρωθεί και τι όχι. Έκρυψα επίσης τα ονόματα των πεδίων μέσα στα ίδια τα πεδία. Σε τι χρησιμεύουν αυτές οι έντονες σημειώσεις; Οι περισσότεροι επισκέπτες, ακόμη και χωρίς ονόματα πεδίων, μπορούν «με το μάτι» να προσδιορίσουν ποιο ανήκει σε τι. Αλλά εσωτερικές υποδείξεις πρέπει να υπάρχουν ακόμα. Λοιπόν, η λεζάντα στο πεδίο σχολίων έχει χάσει την περιττή τόλμη της. Κατά τη γνώμη μου, έχει γίνει πολύ καλύτερο και πιο ελεύθερο.

      Ας τα αλλάξουμε όλα λοιπόν γρήγορα! ;)
      Πηγαίνουμε στο φάκελο του site μας και βρίσκουμε το αρχείο wp-includes/comment-template.php σε αυτόν. Ψάχνουμε για τη γραμμή 1522 σε αυτό, ναι, αυτό είναι. Το πώς το βρήκα ο ίδιος είναι μια ολόκληρη ιστορία, θα σας το πω λίγο αργότερα :)
      Ανοίξτε λοιπόν το αρχείο για επεξεργασία και μεταβείτε στη γραμμή 1522. Τώρα αυτό και τα ακόλουθα (μέχρι το 1529) είναι περίπου έτσι:

      $fields = πίνακας("συγγραφέας" => "

      " . "" . ($req ?" *" : "") . "

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

      " . "

      ",);

      Πόσο απλά και ξεκάθαρα είναι όλα. Αρκεί να κόψετε όλη την περίσσεια και να προσθέσετε λίγο. Η παράμετρος θα προστεθεί

      Placeholder="Κείμενο βοήθειας" !}

      Αυτή η επιλογή σάς επιτρέπει να εμφανίζετε οποιοδήποτε κείμενο μέσα σε πεδία. Το χρησιμοποιούμε για να εμφανίσουμε υποδείξεις:

      "

      " "

      " "

      "

      Θα διαγράψουμε τις γραμμές:

      "

      " . "" . ($req ?" *" : "") "

      "

      Είναι υπεύθυνοι για την εμφάνιση υπότιτλων πάνω από τα πεδία.
      Ως αποτέλεσμα ΟΛΩΝ αυτών των χειρισμών, έχουμε τα εξής:

      $fields = πίνακας("συγγραφέας" => "

      ", "email" => "

      ", "url" => "

      ",);

      Το μόνο που μένει είναι να αφαιρέσετε την ηλίθια υπόδειξη «Το e-mail σας δεν θα δημοσιευτεί. Τα απαιτούμενα πεδία είναι επισημασμένα *". Για να το κάνετε αυτό, διαγράψτε τη γραμμή (περίπου 1537):

      "comment_notes_before" => "

      " . __("Η διεύθυνση email σας δεν θα δημοσιευτεί.") . ($req ? $required_text: "") ."

      ",

      Αυτό φαίνεται να είναι όλο, τώρα η φόρμα μας έχει γίνει λίγο πιο ελκυστική. Ελπίζω αυτές οι πληροφορίες να είναι χρήσιμες σε κάποιον :)

      Εγγραφείτε, σχολιάστε, θα χαρώ να λάβω οποιαδήποτε επαρκή σχόλια. Ίσως δεν ξέρω κάτι ο ίδιος και μπορεί να γίνει διαφορετικά, μοιραστείτε τις σκέψεις σας.

      Γειά σου!

      Το σημερινό άρθρο είναι αφιερωμένο σε Έξοδος σχολίων WordPress. Θα εξετάσουμε ποια αρχεία και λειτουργίες περιέχουν τον κώδικα που είναι υπεύθυνος για την εμφάνιση σχολίων. Τι πρέπει να γίνει για να μπορέσετε να κάνετε αλλαγές σε αυτό το μπλοκ ιστολογίου WordPress.

      Επιτρέψτε μου να ξεκινήσω με το γεγονός ότι κάθε πρότυπο WordPress (θέμα) έχει ένα αρχείο σχόλια.phpΗ πλήρης διαδρομή προς αυτό από τον ριζικό κατάλογο είναι: /wp-content/themes/template_folder/comments.php

      Ακριβώς σχόλια.phpείναι γενικά υπεύθυνος για το μπλοκ σχολίων σε ένα συγκεκριμένο θέμα του WordPress.

      Τι περιέχεται συχνότερα στα comments.php:

      – ελέγξτε την προστασία με κωδικό πρόσβασης των σχολίων

      – έλεγχος εάν επιτρέπονται σχόλια στο άρθρο

      – Έλεγχος για σχόλια και εμφάνιση του αντίστοιχου κειμένου ("Δεν υπάρχουν σχόλια..." ή "Δεν έχουν απομείνει σχόλια")

      κλήση της συνάρτησης εξόδου σχολίων – wp_list_comments()

      – έξοδος πλοήγησης (σελιδοποίηση) κατά την ανάρτηση σχολίων σε πολλές σελίδες

      – εμφάνιση μιας φόρμας για την υποβολή σχολίων στο άρθρο

      Εδώ είναι σαφές ότι μπορείτε να ορίσετε τις κλάσεις σας ή να αλλάξετε ιδιότητες στυλ.cssγια ήδη υπάρχουσες τάξεις. Έτσι, μπορείτε να αλλάξετε την εμφάνιση της φόρμας για να αφήνετε σχόλια και κείμενα πριν από τη λίστα σχολίων και μετά από αυτήν τη λίστα ή τη φόρμα. Αλλά Τα στυλ εξόδου των ίδιων των σχολίων δεν μπορούν να αλλάξουν στο comments.php.

      Όταν απαρίθμησα τα περιεχόμενα του αρχείου σχόλια.php, στη συνέχεια τόνισε συγκεκριμένα ότι σε σχόλια.phpυπάρχει μόνο μια κλήση στη λειτουργία για την εμφάνιση σχολίων wp_list_comments(), αλλά όχι το ίδιο το συμπέρασμα. Εκείνοι. V σχόλια.phpδεν θα βρείτε (τουλάχιστον στις πιο πρόσφατες εκδόσεις του WordPress και με τη σωστή προσέγγιση στην ανάπτυξη προτύπων): εμφάνιση του ονόματος του συντάκτη του μηνύματος και έναν σύνδεσμο στον ιστότοπό του, εμφάνιση του avatar του συγγραφέα, εμφάνιση της ημερομηνίας και της ώρας το σχόλιο, το ίδιο το σχόλιο και ο σύνδεσμος «απάντηση».

      Πώς να αλλάξετε στυλ στη λίστα σχολίων;

      Αρχικά, πρέπει να μάθετε εάν το πρότυπό σας χρησιμοποιεί μια προσαρμοσμένη λειτουργία για την εμφάνιση σχολίων.

      Η συνάρτηση wp_list_comments() μπορεί να κληθεί χωρίς επανάκληση (η επανάκληση είναι συνάρτηση επανάκλησης) και με επανάκληση.

      1. Καλέστε το wp_list_comments χωρίς επανάκληση:

      Εκείνοι. στις παραμέτρους της συνάρτησης (αυτό που βρίσκεται σε αγκύλες μετά το όνομα) δεν υπάρχει παράμετρος που ονομάζεται «επανάκληση».

      Αν μέσα σχόλιο.phpΤο πρότυπό σας είναι μια τέτοια κατάσταση, λοιπόν Αυτό σημαίνει ότι αυτό το θέμα δεν έχει τη δική του λειτουργία (χρήστη) για την εμφάνιση σχολίωνκαι για αυτό χρησιμοποιείται ένα τυπικό πρότυπο (πρότυπο από τον πυρήνα του WordPress). Βρίσκεται στο αρχείο. Και απο τοτε Σε αυτήν την περίπτωση, δεν θα μπορούμε να αλλάξουμε τα στυλ εμφάνισης σχολίων μέχρι να προχωρήσουμε στη δεύτερη επιλογή.

      2. Καλέστε το wp_list_comments με επανάκληση:

      "type=comment&avatar_size=48&callback=custom_comment") ; ?>

      επανάκληση=προσαρμοσμένο_σχόλιουποδηλώνει ότι για την εμφάνιση σχολίων έχουμε μια προσαρμοσμένη λειτουργία custom_comment , τον κώδικα του οποίου, χοντρικά, περνάμε ως παράμετρο για εκτέλεση στην τυπική συνάρτηση wp_list_comments. Αλλά δεν μας ενδιαφέρει πλέον η τεχνική πλευρά αυτού του ζητήματος, αλλά η παρουσία στο πρότυπο της δικής του λειτουργίας για την εμφάνιση σχολίων. Ο κωδικός αυτής της λειτουργίας βρίσκεται στο .

      Ακριβώς σε αυτήν την προσαρμοσμένη λειτουργία custom_commentκαι ο κωδικός που είναι υπεύθυνος για την εμφάνιση ενός μεμονωμένου σχολίου, και επομένως όλων των σχολίων στο σύνολό τους, βρίσκεται.

      Ο προσαρμοσμένος κωδικός λειτουργίας είναι διαισθητικός. Συνήθως χρησιμοποιεί τις ακόλουθες τυπικές δυνατότητες του WordPress:

      get_comment_author_link()– λαμβάνει έναν σύνδεσμο html προς τον ιστότοπο του συντάκτη του τρέχοντος σχολίου.

      get_comment_date()– λαμβάνει την ημερομηνία του σχολίου.

      get_comment_time()– λαμβάνει την ώρα των σχολίων.

      comment_text()– εμφανίζει το κείμενο του σχολίου.

      Μπορείτε να βρείτε αποσπάσματα με αυτές τις συναρτήσεις στον κώδικα και να αλλάξετε την εμφάνιση ορισμένων στοιχείων, πλαισιώνοντάς τα σε div ή διαστήματα και εκχωρώντας συγκεκριμένες κατηγορίες στυλ.

      Για παράδειγμα, στον κώδικα προσαρμοσμένης λειτουργίας, ένα τμήμα της εξόδου avatar:

      < div class = "comment-author" >

      < / div >

      Τώρα παραμένει μέσα στυλ.cssορίστε τις επιθυμητές ιδιότητες στην κλάση σχόλιο-συγγραφέας. Θα εξετάσω συγκεκριμένα παραδείγματα αλλαγής στυλ με περισσότερες λεπτομέρειες σε ένα από τα παρακάτω άρθρα.

      Τώρα μπορεί να αναρωτιέστε: « Τι γίνεται αν το πρότυπό μου δεν διαθέτει προσαρμοσμένη λειτουργία σχολίων;

      Απάντηση: πρέπει να το δημιουργήσετε.

      Η πιο εύκολη επιλογή είναι να αντιγράψετε τον κώδικα μιας τυπικής συνάρτησης WordPress σχόλιο().

      Οδηγίες για τη δημιουργία μιας προσαρμοσμένης συνάρτησης για την εμφάνιση σχολίων:

      1. Ανοίξτε το αρχείο /wp-includes/comment-template.phpκαι βρείτε τη συνάρτηση σε αυτό σχόλιο().

      Εδώ είναι η αρχή της περιγραφής της

      /** * @since 3.6 * @access protected * * @param αντικείμενο $comment Σχόλιο για εμφάνιση. * @param int $depth Βάθος σχολίου. * @param array $args Προαιρετικά args. */ σχόλιο προστατευμένης συνάρτησης ($comment, $depth, $args) (

      * @από 3.6

      * Προστατεύεται η πρόσβαση @

      * @param αντικείμενο $comment Σχόλιο για εμφάνιση.

      * @param int $depth Βάθος σχολίου.

      * @param array $args Προαιρετικά args.

      σχόλιο προστατευμένης συνάρτησης ($comment, $depth, $args) (

      2. Αντιγράψτε ολόκληρο το σώμα της λειτουργίας σχόλιο().

      Πρέπει να αντιγράψετε το θραύσμα κώδικα από την αρχή της περιγραφής που εμφανίζεται στο βήμα 1 στο σγουρό άγκιστρο κλεισίματος } και την ακόλουθη παρόμοια περιγραφή μιας άλλης συνάρτησης