Wordpress: jak napisać odpowiedź na komentarz przy użyciu jQuery
Piątek 3 października 2008Ostatnio Cristiano Fino wydane zysku Plugin dla Wordpress można dodać dwa linki do wszystkich uwag przez post (być może masz zainstalowane podobne, biorąc pod uwagę, że katalog Wordpress.org Mam kilka manowce, ale jako włoski oprogramowania będzie przypadku, aby uczcić przyjmuje znakomitą pracę wykonaną przez Cristiano). Te Link (odpowiedź i akcji), spotykają się i / lub autora cytatem komentarz uruchamiając nudne operacji wstawić znak (@), aby wskazać, do których jest skierowana. W tym samouczku będę wyjaśniać - w perspektywie średnio-zaawansowanych użytkowników - jak dodać te dwie funkcje "na rękę", bez żadnych all'istallazione Plugin. Również wykorzystać możliwości jQuery do strony w JavaScript. Technika ta jest wykazujące ten sam użyłem do wprowadzenia tej funkcji w tym blogu.
Uwaga: korzystanie z wtyczki jest najlepszym rozwiązaniem dla tych, którzy często mają tendencję do zmiany ich Wordpress szablon lub przynajmniej, nie w oczekiwaniu na to. Znajdziesz w nim tylko pokazać, jak wykonać kierowana w kodzie Wordpress i poświęcona jest najbardziej ciekawi.
Zmiana pliku comments.php
Pierwsza zmiana jest, aby wejść na link "Odpowiedz" i "jednostek" w ramach każdego komentarza. Aby to zrobić, należy edytować plik comments.php w folderze naszego tematu. Plik ten zawiera wszystkie instrukcje, które pozwalają, aby wyświetlić komentarze na końcu postu. Dział nam, że interesy (co może się nieznacznie różnić od wydania do wydania) jest utworzenie loop różnych uwag, rozpoznawalne przez:
- ( $comments as $comment ) : ?> <? Php foreach ($ comments as $ comment):?>
- <li id = "comment-<? php comment_ID ()?>>
- / / ...
- </ Li>
- ?> <? Php endforeach; / * na koniec każdego komentarza * />
W pętli tego typu w całej jednym komentarz znacznikiem jest li nich li Natychmiast po otwarciu tagu li lub na krótko przed zamykającym znacznikiem li umieścić nasz odnośnik, otacza w div i ustawienie niektórych klas, które pomogą określić układ poniżej:
- > <div class = "jqr2c_ul">
- >Quota</a> <a href = "javascript: jqr2c_reply (" comment-<? php comment_ID () ?>')"> Odpowiedz </ a> <a href = "javascript: jqr2c_quote (" comment-<? php comment_ID ()?> " ) "> Podziel się </ a>
- </ Div>
Uwaga: możemy poprawić nasz kod dodając sprawdzić status komentarze (otwarte lub zamknięte) oraz rodzaj komentarza (Pingback, trackback, etc ...). Na przykład wpisując:
- ( comments_open ( ) && If (comments_open () & &
- != "trackback" && $ Comment -> comment_type! = "Trackback" & &
- != "pingback" ) { ?> $ Comment -> comment_type! = "Pingback") (?>
- > <div class = "jqr2c_ul">
- >Quota</a> <a href = "javascript: jqr2c_reply (" comment-<? php comment_ID () ?>')"> Odpowiedz </ a> <a href = "javascript: jqr2c_quote (" comment-<? php comment_ID ()?> " ) "> Podziel się </ a>
- </ Div>
- ?> <? Php)?>
Zmiana pliku header.php
Powiązań, które stawiamy sobie w pliku comments.php JavaScript o nazwie dwie funkcje, w tym przypadku jqr2c_reply() jqr2c_quote() Pozwól nam przejść następnie do włączenia tych funkcji nell'header stronie, zdefiniowane w pliku header.php Edytuj ten plik i posizioniamoci przed końcem znacznikiem head lub przed wywołanie funkcji Wordpress wp_header() i dodać następujące wiersze kodu:
- <? Php
- / **
- * Wstaw skrypt stylu i tylko wtedy, gdy jesteśmy oglądania
- * Jeden post i komentarze są otwarte
- * /
- is_single ( ) && comments_open ( ) ) { ?> if (is_single () & & comments_open ()) (?>
- <style type= "text/css">
- / * _____________ Tutaj możemy zdefiniować nasz styl * /
- 30px 400px } div.jqr2c_ul (margin: 8px 0 30px 400 pikseli)
- / * Itp ... * /
- </ Style>
- <script type= "text/javascript">
- <! - / /
- id ) { jqr2c_reply function (id) (
- 'li#' +id ) .children ( 'cite' ) .text ( ) ; var aut = jQuery ( 'li #' + id). dziećmi ( "cytują"). tekstowych ();
- ) .text ( '<b>@' +aut+ '</b>: ' ) .focus ( ) ; jQuery ( 'textarea # comment "). tekstem (" @ <b> "aut + +" </ b >:'). focus ();
- )
- id ) { jqr2c_quote function (id) (
- 'li#' +id ) .children ( 'cite' ) .text ( ) ; var aut = jQuery ( 'li #' + id). dziećmi ( "cytują"). tekstowych ();
- 'li#' +id ) .children ( 'p' ) .text ( ) ; var c = jQuery ( 'li #' + id). dziećmi ( "p"). tekstowych ();
- ) .text ( '<b>@' +aut+ '</b>: \n <blockquote>' +c+ '</blockquote> \n ' ) .focus ( ) ; jQuery ( 'textarea # comment "). tekstem (" @ <b> "aut + +" </ b>: \ n <blockquote> "+ c +" </ blockquote> \ n'). focus ();
- )
- //-->
- </ Script>
- ?> <? Php)?>
Jeśli Twój blog, jak w moim przypadku, już korzysta z jQuery, that's all I need! Inaczej można dodać do tych linii kodu przed, po if (is_single() && comments_open())
- is_single ( ) && comments_open ( ) ) { ?> if (is_single () & & comments_open ()) (?>
- / / Dołącz jQuery za pośrednictwem Google Ajax API Library
- ></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>
- / / ... W inny sposób identyczny ...
Te dwa skryptów obejmują jQuery poprzez usługi Google wyjaśniono w Google AJAX API Library: punkt zwrotny dla programistów



















Camui powiedział:
Doskonałym przewodnikiem, jak zawsze!
Giovambattista Fazioli powiedział:
@ Camui:
Napolux powiedział:
Ale dlaczego kłopoty jQuery (wszystkie wagi, że pociąga za sobą, chociaż minimalne), kiedy możesz zrobić wszystko ręcznie z prostych JS?
Napolux powiedział:
Między innymi tu na Firefox 3.0.3, jeżeli textarea już "miał", należy skoncentrować się przyciski nie działają ..
Giovambattista Fazioli powiedział:
@ Napolux:
Może to być przydatne, jeżeli, jak w moim przypadku, już przy użyciu jQuery z innych powodów. Ale prawdą jest, że można osiągnąć poprzez "zwykłą" JavaScript, ale zawsze jest przydatne do wykorzystania istniejących ram pracy (jQuery, prototype.js, Dojo, itp ...) bardziej niż cokolwiek innego, ponieważ zapewnienia zgodności przeglądarki krzyżowej nie zawsze jest łatwe do wdrożenia (nie w tym przypadku).
Giovambattista Fazioli powiedział:
@ Napolux:
Dla mnie, jeśli rozumieć poprawnie, nie ...? Jednakże, może być błąd z fixare
Christian powiedział:
Pierwsze chcę serdecznie podziękować za przegląd Wtyczka aktualnie oferuje możliwość przemieszczania się między pozycje, oprócz funkcjonalności akcji i Odpowiedz.
Niestety, pomimo wielokrotnie zostali powiadomieni przez innych, ja jeszcze nie zgłosiły (wraz z innymi, że zrobiłem) do repozytorium WordPress.org.
I będzie to jak najszybciej
Jeśli chodzi o zaproponowane rozwiązanie jest najlepsze, jeśli już używać jQuery, jedyne utrudnienie polega na tym, że wydaje mi się, że nie ma na liście częściowego wyboru tekstu.
Dla osób zainteresowanych rozwiązaniem alternatywnym użyciu czystego javascript pozwól mi zwrócić uwagę, że pierwszy artykuł napisałem dawno temu na podobny temat i od którego następnie (w wyniku prośby wielu czytelników) wdraża wtyczki:
Procedura automatycznie cytatem uwagi na post
Czynności również pozwala na cytowanie części tekstu i przeglądarki krzyżowej.
Ogromny hello do Giovambattista, z którymi dzielę nie tylko pasja do komputerów i programowania (Ja jestem ojcem bliźniąt
)
Giovambattista Fazioli powiedział:
@ Cristiano: masz rację ze względu na wybór, świadomie unikać, ponieważ miałem cel, "nauczania" i / lub opisowej, a nie zastępować swoje doskonałe Plugin
: D
Zgadzam się, że pasja do programowania i "zmęczenie" rośnie bliźniąt
Jeśli masz jakiś pomysł na nową Wordpress Plugin Lubię pracować z tobą, jeśli chcesz!
Pozdrowienia wkrótce
Giovambattista Fazioli powiedział:
@ Napolux:
Problemem jest stosowanie metody
text()z jQuery. To działa, dopóki nie wprowadzić nową treść. Lepsze wykorzystanie postaciattr('value')Christian powiedział:
@ Giovambattista Fazioli:
I poczuć
Co będzie, że to nie mnie wielką przyjemnością, z pewnością wykorzystać swoje przygotowania i kompetencji w dziedzinie
Giovambattista Fazioli powiedział:
@ Cristiano: Zobacz jQuery odpowiedzieć na komentarz
Christian powiedział:
@ Giovambattista Fazioli:

Mam już "przeszedł" i "zweryfikowała" wywołujące przez
I wreszcie znaleźć czas na crearmi uwagę na repozytorium WordPress i odnoszą się do wtyczki: Nie wiem jak długo będziemy je zatwierdzić
Jeśli nie będzie trwać długo, a następnie powiadomić innych, że muszę osiągnąć.
Leonaut.com powiedział:
Wordpress: jak napisać odpowiedź na komentarz przy użyciu jQuery ...
Cristiano Do niedawna wydawane cenny dla Wordpress Plugin można dodać dwa linki do wszystkich uwag przez post (być może masz zainstalowane podobne, biorąc pod uwagę, że katalog Wordpress.org Mam kilka manowce, ale jak ...