WordPress: Πώς να γράψω μια απάντηση στο σχόλιο που χρησιμοποιούν jQuery
Παρασκευή 3 Οκτωβρίου, 2008Πρόσφατα Cristiano Fino εξέδωσε Προσθήκη κέρδος για WordPress μπορεί να προσθέσει δύο δεσμών σε κάθε σχόλιο από μια θέση (που ίσως να έχετε εγκαταστήσει ένα παρόμοιο, δεδομένου ότι ο κατάλογος Wordpress.org έχω ένα ζευγάρι παραπλανάται, αλλά ως μια ιταλική λογισμικό θα την εκδήλωση για να τιμήσει τον εξαίρετο έργο που Cristiano). Αυτά τα Link (απάντηση & μετοχές), πληρούν ή / και τα λόγια του συγγραφέα του σχολιασμό από την βαρετή εκτελείτε λειτουργία να εισαγάγετε το χαρακτήρα σε (@) να δείχνει στους οποίους απευθύνεται. Σε αυτό το tutorial θα εξηγήσω - σε μεσοπρόθεσμο-έμπειρους χρήστες - πώς να προσθέσει αυτά τα δύο στοιχεία "σχετικά με το χέρι", χωρίς all'istallazione plugin. Επίσης, εκμεταλλεύονται τις δυνατότητες των jQuery στο κόμμα της Javascript. Η τεχνική αυτή που εμφανίζουν τα ίδια θα χρησιμοποιηθεί για την εισαγωγή αυτής της δυνατότητας σε αυτό το ιστολόγιο.
Σημείωση: Η χρήση ενός plug είναι η καλύτερη λύση για εκείνους που συχνά τείνουν να αλλάξουν WordPress πρότυπο ή, τουλάχιστον, έχει στην αναμονή να το κάνουν. Αυτό το φροντιστήριο θα εμφανίζεται μόνο τον τρόπο εκτέλεσης στόχευση στον κώδικα WordPress και είναι αφιερωμένη στην πιο περίεργη.
Αλλαγή του αρχείου comments.php
Η πρώτη αλλαγή να κάνω είναι να εισέλθει στο σύνδεσμο "Απάντηση" και "μονάδες" σε κάθε σχόλιο. Για να το κάνετε αυτό, επεξεργαστείτε το αρχείο comments.php που βρίσκεται στο φάκελο του theme μας. Αυτό το αρχείο περιέχει όλες τις οδηγίες που σας επιτρέπουν να δείτε τα σχόλια στο τέλος της μια θέση. Το τμήμα που μας ενδιαφέρει (το οποίο μπορεί να διαφέρουν ελαφρώς από το θέμα στο ζήτημα) είναι η δημιουργία του βρόχου διάφορα σχόλια, αναγνωρίσιμες από:
- ( $comments as $comment ) : ?> <? Php foreach ($ $ παρατηρήσεις ως σχόλιο):?>
- <li id = "σχόλιο-<? php comment_ID ()?>>
- / / ...
- </ Li>
- ?> <? Php endforeach? / * Τέλος για κάθε σχόλιο * />
Στην επανάληψη αυτού του είδους σε ολόκληρη ένα μόνο σχόλιο που περιέχονται στην ετικέτα li Αμέσως μετά την έναρξη της ετικέτας li ή λίγο πριν από τη λήξη της ετικέτας li σύνδεσμο μας, περικλείει σε ένα div και ρύθμιση ορισμένες κατηγορίες ότι θα βοηθήσει στον καθορισμό των παρακάτω διάταξη:
- > <div κατηγορίας = "jqr2c_ul">
- >Quota</a> <a href = "javascript: jqr2c_reply (« σχόλιο-<? php comment_ID () ?>')"> Απάντηση </ a> <a href = "javascript: jqr2c_quote (« σχόλιο-<? php comment_ID ();> " ) "> Share </ a>
- </ Div>
Σημείωση: Για να μπορέσουμε να βελτιώσουμε τις κώδικα με την προσθήκη ενός ελέγχου για το καθεστώς των σχολίων (ανοικτού ή κλειστού) και το είδος του σχόλια (Pingback, trackback, etc ...). Για παράδειγμα την είσοδο:
- ( comments_open ( ) && <? Php if (comments_open () & &
- != "trackback" && $ Σχόλιο -> comment_type! = "Trackback" & &
- != "pingback" ) { ?> $ Σχόλιο -> comment_type! = "Pingback") (?>
- > <div κατηγορίας = "jqr2c_ul">
- >Quota</a> <a href = "javascript: jqr2c_reply (« σχόλιο-<? php comment_ID () ?>')"> Απάντηση </ a> <a href = "javascript: jqr2c_quote (« σχόλιο-<? php comment_ID ();> " ) "> Share </ a>
- </ Div>
- ?> <? Php);>
Αλλάζοντας το αρχείο header.php
Οι δεσμοί που βάλαμε στο αρχείο comments.php κάλεσε Javascript δύο λειτουργίες, σε αυτή την περίπτωση jqr2c_reply() jqr2c_quote() Ας πάμε στη συνέχεια να ενσωματώσει αυτές τις δυνατότητες nell'header σελίδα, που ορίζεται στο αρχείο header.php Επεξεργασία αυτό το αρχείο και posizioniamoci πριν από το τέλος του tag head ή πριν από την κλήση σε λειτουργία WordPress wp_header() και τοποθετήστε τα εξής γραμμές κώδικα:
- <? Php
- / **
- * Τοποθετήστε το στυλ και η γραφή μόνο αν είμαστε προβολή
- * Μια ενιαία θέση και τα σχόλια είναι ανοιχτά
- * /
- is_single ( ) && comments_open ( ) ) { ?> εάν (is_single () & & comments_open ()) (;>
- <style type= "text/css">
- / * _____________ Εδώ μπορούμε να εκφράζει το στυλ * /
- 30px 400px } div.jqr2c_ul (περιθώριο: 8px 0 30px 400px)
- / * Κτλ ... * /
- </ Style>
- <script type= "text/javascript">
- <! - / /
- id ) { jqr2c_reply λειτουργία (ID) (
- 'li#' +id ) .children ( 'cite' ) .text ( ) ; var aut = jQuery ( "LI # '+ id). παιδιών (« αναφέρω »). κείμενο ()?
- ) .text ( '<b>@' +aut+ '</b>: ' ) .focus ( ) ; jQuery ( '# κειμένου σχόλιο »). κείμενο (« <b> @' aut + + "</ b >:'). εστίαση ()?
- )
- id ) { jqr2c_quote λειτουργία (ID) (
- 'li#' +id ) .children ( 'cite' ) .text ( ) ; var aut = jQuery ( "LI # '+ id). παιδιών (« αναφέρω »). κείμενο ()?
- 'li#' +id ) .children ( 'p' ) .text ( ) ; var γ = jQuery ( "LI # '+ id). παιδιών (« Ρ »). κείμενο ()?
- ) .text ( '<b>@' +aut+ '</b>: \n <blockquote>' +c+ '</blockquote> \n ' ) .focus ( ) ; jQuery ( '# κειμένου σχόλιο »). κείμενο (« <b> @' aut + + "</ b>: \ n <blockquote> '+ γ +" </ blockquote> \ n'). εστίαση ()?
- )
- //-->
- </ Script>
- ?> <? Php);>
Εάν το ιστολόγιό σας, όπως στην περίπτωσή μου, χρησιμοποιεί ήδη jQuery, αυτό είναι όλο θέλω! Διαφορετικά μπορείτε να προσθέσετε αυτές τις γραμμές να κώδικα πριν, μετά if (is_single() && comments_open())
- is_single ( ) && comments_open ( ) ) { ?> εάν (is_single () & & comments_open ()) (;>
- / / Include jQuery μέσω Google AJAX API Βιβλιοθήκη
- ></script> <script type= "text/javascript" src= "http://www.google.com/jsapi"> </ script>
- "jquery" , "1.2.6" ) </script> <script type= "text/javascript"> google.load ( "jquery", "1.2.6") </ script>
- / / ... Διαφορετικά πανομοιότυπα ...
Οι δύο γραφές περιλαμβάνουν jQuery μέσω της υπηρεσίας Google εξηγείται στο Google AJAX API Βιβλιοθήκη: μία κρίσιμη καμπή για προγραμματιστές

















Camui δήλωσε:
Εξαιρετική οδηγό, όπως πάντα!
Giovambattista Fazioli δήλωσε:
@ Camui:
Napolux δήλωσε:
Αλλά γιατί κόπο jQuery (όλα με το βάρος που συνεπάγεται, αν και ελάχιστες), όταν μπορείς να κάνεις τα πάντα με το χέρι με τον απλό JS;
Napolux δήλωσε:
Μεταξύ άλλων σας εδώ για Firefox 3.0.3 του κειμένου, αν έχει ήδη "είχε" εστίαση κουμπιά δεν λειτουργούν ..
Giovambattista Fazioli δήλωσε:
@ Napolux:
Ίσως είναι χρήσιμο, εάν, όπως στην περίπτωσή μου, jQuery ήδη χρησιμοποιούν για άλλους λόγους. Αλλά είναι αλήθεια ότι μπορείτε να επιτευχθεί μέσω ενός "απλά 'javascript, αλλά είναι πάντα χρήσιμο να εκμεταλλευτούν την υπάρχουσα-πλαίσιο (jQuery, prototype.js, Dojo, κτλ ...) περισσότερο από οτιδήποτε άλλο γιατί να διασφαλίζουν τη συμβατότητα browser δεν είναι πάντα εύκολο να εφαρμόσουν (δεν σε αυτή την περίπτωση).
Giovambattista Fazioli δήλωσε:
@ Napolux:
Για μένα, αν κατάλαβα καλά, κύριε Πρόεδρε, δεν ...; Ωστόσο, θα μπορούσε να είναι ένα σφάλμα από fixare
Christian δήλωσε:
Καταρχάς θα ήθελα να ευχαριστήσω θερμά για την αναθεώρηση του plugin προσφέρει σήμερα τη δυνατότητα να μετακινούνται μεταξύ των στοιχείων, πέραν της λειτουργικότητας των μετοχών και απάντηση.
Δυστυχώς, αν και έχω ειδοποιηθεί επανειλημμένως από άλλους, έχω δεν έχει αναφερθεί ακόμη (μαζί με άλλους που έκανα) με το αποθετήριο του WordPress.org.
Θα το κάνω το συντομότερο δυνατόν
Όσον αφορά την προτεινόμενη λύση είναι η καλύτερη, αν έχετε ήδη jQuery, το μόνο μειονέκτημα είναι ότι μου φαίνεται ότι δεν έχουν να λίστα μερική επιλογή του κειμένου.
Για όσους ενδιαφέρονται για μια εναλλακτική λύση με καθαρό javascript επιτρέψτε μου να επισημάνω ότι το πρώτο άρθρο έγραψα πριν από πολύ καιρό σε ένα παρόμοιο θέμα και από την οποία στη συνέχεια (ως αποτέλεσμα των αιτημάτων από πολλούς αναγνώστες) είναι εφαρμογή plug:
Μια διαδικασία για την αυτόματη παραθέτω τα σχόλια σε ένα post
Τα βήματα που επιτρέπει επίσης την παραθέσω μέρος του κειμένου και είναι πολλαπλής browser.
Ένα μεγάλο γεια σε Giovambattista με την οποία δεν συμμερίζομαι μόνο ένα πάθος για τους υπολογιστές και τον προγραμματισμό (είμαι ο πατέρας των διδύμων
)
Giovambattista Fazioli δήλωσε:
@ Cristiano: Έχετε δίκιο για λόγους επιλογής, σκοπίμως αποφεύγεται, επειδή είχα ένα σκοπό, "διδασκαλία" ή / και περιγραφικό και δεν αντικαθιστά την εξαιρετική σας Προσθήκη
: D
Συμφωνώ ότι το πάθος για τον προγραμματισμό και την "κόπωση" να μεγαλώνουν δίδυμα
Αν έχετε κάποια ιδέα για ένα νέο WordPress plugin μου αρέσει να συνεργαστούμε μαζί σας, αν θέλετε!
Χαιρετισμούς σύντομα
Giovambattista Fazioli δήλωσε:
@ Napolux:
Το πρόβλημα είναι η χρησιμοποίηση της μεθόδου
text()του jQuery. Αυτό λειτουργεί, μέχρι να τεθεί ένα νέο περιεχόμενο. Καλύτερη χρήση του μορφήattr('value')Christian δήλωσε:
@ Giovambattista Fazioli:
Αισθάνθηκα
Τι θα κάνουμε ότι δεν μου μεγάλη χαρά? Σίγουρα να επωφεληθούν από την προετοιμασία και την αρμοδιότητα στον τομέα
Giovambattista Fazioli δήλωσε:
@ Cristiano: Βλέπε jQuery απάντηση σε σχόλιο
Christian δήλωσε:
@ Giovambattista Fazioli:

Έχω ήδη "περάσει" και "επαλήθευσε" από αναφοράς
Τελικά βρήκε το χρόνο να crearmi υπόψη σε μια αποθήκη του WordPress και να παραπέμψει το plugin: Δεν ξέρω πόσο καιρό θα το εγκρίνει για
Αν δεν θα πάρει πολύ χρόνο, στη συνέχεια κοινοποιεί στα άλλα, ότι έχω επιτύχει.
Leonaut.com δήλωσε:
WordPress: Πώς να γράψω μια απάντηση στο σχόλιο που χρησιμοποιούν jQuery ...
Cristiano Μέχρι πρόσφατα εξέδωσε ένα πολύτιμο Προσθήκη για WordPress μπορεί να προσθέσει δύο δεσμών σε κάθε σχόλιο από μια θέση (που ίσως να έχετε εγκαταστήσει ένα παρόμοιο, δεδομένου ότι ο κατάλογος Wordpress.org έχω ένα ζευγάρι παραπλανάται, αλλά όπως ...