Wordpress po swojemu #1 – Kilku autorów na blogu
// Listopad 30th, 2008 // technicznie
Jest w sieci kilka stron na silniku wordpressa, gdzie pisze kilku atorów. Motyw Drogi, Gniazdo Światów, Where is That Fire?, gra-nat.pl no i Miasto Fantastyki. Czasem jest tak, że chcielibyśmy poczytać kilka wpisów tylko jednego z piszących. Jak w takim razie zrobić spersonalizowaną stronę autora?
Tak, nie wiem dlaczego, ale zapragnąłem napisać coś „technicznego”. Może to dlatego, że ostatnio za dużo siędziałem w wordpressowym kodzie… Choć rozwiązanie opisanego dziś problemu w sumie nie jest takie trudne, to dojście do tego wszystkiego sprawiło mi pewien problem, gdyż musiałem sporo naszukać się w dokumentach wordpressa (chyba z własnej głupoty). Jedna rzecz, którą definitywnie skończyłem niedawno była personalizacja podstrony autora. Brzmi zbyt poważnie?
Otóż, wymyśliliśmy sobie, że każda z piszących u nas na stronie osób będzie miała miejsce, gdzie znajdą się jej wszystkie artykuły. Tutaj prosto, bo wystarczyło podmienić funkcję <?php author() ?> na <?php the_author_posts_link(); ?>. Dzięki temu zwykły nick autora zmienił się w nick z odnośnikiem do strony z jego wszystkimi artykułami. No, z tym większych problemów nie było. Po kliknięciu na link przenoszono nas do jednej z części archiwum, która odpowiada za wyświetlanie wpisów autora. Opcja ta jest w standardzie, wpisana nawet w defaultowy styl wordpressa.
Problem był taki, że to nie wszystko, co miało się znajdować na stronie autora. Nasza próżność kazała nam też dodawać tam krótką informację, którą każdy autor mógł napisać o sobie w profilu, link do jego strony oraz jego e-mail. Niestety, biorąc to na chłopski rozum (co ostatnio coraz częściej mi się zdarza) próbowałem edytować archiwum. No i tu błąd.
Problem rozwiązał się, kiedy zacząłem się zastanawiać dlaczego właściwie za to wszystko odpowiada archiwum. Stwierdziłem, że jest to spore ograniczenie. Nie dało się nawet nigdzie wyświetlić nazwy autora! Popytałem w kilku miejscach i… nic. Poszperałem więc w dokumentach wordpressa i znalazłem odpowiedź – podstronę użytkownika można zrobić tworząc osobny plik author.php. Jeżeli takowego nie ma, to user przekierowywany jest do odpowiedniej części archiwum.
Dalej jest prosto. Po stworzeniu takiego pliku wystarczy go wypełnić odpowiednimi zmiennymi. Do wyboru, …i tak dalej. Mnie to wyszło tak (nie ma już sensu klikać, wróciliśmy do normalnej podstrony autorów) .
bezczelnie dopisane, z nadzieją, że nikt się nie zorientuje
No tak, ale zapomniał bym o czymś równie ważnym, o czym przypomniał mi poniekąd komentarz kmh z motywu drogi, a dokładniej ich cotygodniowe podsumowanie tygodnia, które pisze kmh razem z pojepem. W końcu zatytułowałem ten wpis „kilku autorów na blogu”, a piszę zupełnie o czymś innym. W takim razie — co zrobić, jeżeli dany wpis czy artykuł tworzyliśmy z drugim autorem i chcemy to zaznaczyć? Na pewno przyda się do tego wtyczka Co-Authors, za pomocą której z łatwością dodacie drugiego autora (czy trzeciego, czwartego…) wpisu.
Nie obędzie się jednak bez zmian w kodzie. Po ściągnięciu i zainstalowaniu wtyczki trzeba jeszcze edytować szablon. Każde <?php author() ?> zamienić trzeba na <?php coauthors() ?>, a <?php the_author_posts_link(); ?> na <?php coauthors_posts_links() ?> .
No, to by było na tyle. Chyba.




O, sam nad tym teraz siedziałem, wielkie dzięki, przyda się:)
No tak, Wam to przydała by się jeszcze wtyczka co-authors, między innymi do niedziel. Bo jak na razie to chyba uprawiacie przy nich jakąś czarną magię ;)
po prostu stworzyliśmy użytkownika, który nazywa się „konrad i łukasz”:)
a powiedz mi królu złoty, czy rozgryzałeś już jak zaimplementować do skórki wątkowanie komentarzy z wersji 2.7?
Z Wordpressem bawiłem się pod kątem Miasta, a że tam ciężko o jakiekolwiek komentarze to nie miałem powodu się tym martwić.
Chociaż… O ile dobrze pamiętam, to ma to coś wspólnego z wtyczką IntenseDebate Comments działającej tylko z wp2.7, bo (nie jestem pewien, wygrzebuję to z zakamarków swej pamięci) wątkowanie komentarzy miało być wyłączane jak akismet czy opcja z gravatarami. Co do działania i dostosowywania, to miała być chyba pełna automatyka, jednak wymaga rejestracji w na stonie IntenseDebate. Ten filmik może coś jeszcze wyjaśni.
No właśnie z tego co zrozumiałem, to wątkowanie ma nie wymagać rejestracji, logowań itd, ma być raczej zbliżone do tej wtyczki
Synchronizowanie komentarzy z jakąś zewnętrzną bazą jest mi średnio na rękę.
No cóż, to chyba o tą opcję ci chodziło, bo Automattic (to ta firma od WordPressa) wykupiła ten cały serwis IntenseDebate.
Komentarze zapisywane są w ich bazie ze względów bezpieczeństwa. Podobno.
To mi powiedz, dobry człecze, jak uskutecznić ifa z author i coauthor.
A konkretnie, jeżeli autor jest jeden, to mi się wyświetla fragment kodu, który go linkuje do jego wpisów i podaje awatar (jak teraz), a jak występuje coauthor, to podaje kod inny (nie wiem, czy dane wyjściowe z tej zmiennej da się rozbić – co w tedy z gravatarem i potencjalnym linkowanie?)
Po wstawieniu normalnie skryptów co-author na stornę nie potrzebny jest żaden if – jeżeli jest jeden autor to po prostu wyświetla jego nazwę z linkiem, gravatar też powinien się wyświetlić normalnie. Jeżeli są dwaj, to wyświetla przy wpisie 2 nicki, z linkami do stron autorów.
Problem z tym, że nie używałem gravatarów i nie wiem co się wyświetli przy 2 osobowym poście. Ale chyba nie ma większego problemu ze sprawdzeniem – dla testu, przy pisaniu postu możesz dodać drugiego autora i zobaczyć na podglądzie co się wyświetli. Na mój gust – albo 2 gravatary, albo tylko osoby pierwotnie dodającej wpis.
Hm, zainstalowałem, przy okazji pisania czegoś przetestuję, się okaże. Pewnie zadziała, chociaż mam tan narzeźbione w kodzie odrobinę.
Dzięki za pomoc , przyda się .
no a jaka jest składnia do wpisu w polu Name jeśli chce się podlinkować autora odpowiedzi by można przejść do jego bloga tak jak ‚godala’ czy ‚marka’??