
Usunięcie linku autora w widget Najnowsze komentarze
Witam po krótkiej przerwie. Ostatnio pisało do mnie w tej sprawie kilka osób, a mianowicie w jaki sposób usunąłem link do autorów komentarzy z widgetu w stopce ,,Najnowsze Komentarze”. Otóż szybki i niepolecany sposób na tą modyfikację polega na edycji pliku default-widgets.php, który znajduje się w folderze wp-includes. Dodam, że takich modyfikacji nie powinno się stosować, ponieważ po każdej aktualizacji wordpressa, modyfikacja znika i trzeba ją na nowo wprowadzać, tym bardziej teraz, gdzie niektóre konieczne aktualizacje robione są w tle, więc nawet możemy nie wiedzieć kiedy nasza modyfikacja zniknie, a ponadto w przypadku grzebania w plikach źródłowych WordPressa, jesteśmy narażeni na stworzenie błędy, który mogą wykorzystać osoby trzecie do chociażby uzyskania dostępu do bloga. W dolnej części artykułu znajduje się lepsze rozwiązanie na wprowadzenie takiej modyfikacji.
Plik default-widgets.php przed wprowadzeniem modyfikacji:
if ( $comments ) { // Prime cache for associated posts. (Prime post term cache if we need it for permalinks.) $post_ids = array_unique( wp_list_pluck( $comments, 'comment_post_ID' ) ); _prime_post_caches( $post_ids, strpos( get_option( 'permalink_structure' ), '%category%' ), false ); foreach ( (array) $comments as $comment) { $output .= '<li class="recentcomments">' . /* translators: comments widget: 1: comment author, 2: post link */ sprintf(_x('%1$s on %2$s', 'widgets'), get_comment_author_link(), '<a href="' . esc_url( get_comment_link($comment->comment_ID) ) . '">' . get_the_title($comment->comment_post_ID) . '</a>') . '</li>'; } }
Plik default-widgets.php po wprowadzeniu modyfikacji:
if ( $comments ) { // Prime cache for associated posts. (Prime post term cache if we need it for permalinks.) $post_ids = array_unique( wp_list_pluck( $comments, 'comment_post_ID' ) ); _prime_post_caches( $post_ids, strpos( get_option( 'permalink_structure' ), '%category%' ), false ); foreach ( (array) $comments as $comment) { $output .= '<li class="recentcomments">' . /* translators: comments widget: 1: comment author, 2: post link */ sprintf(_x('%1$s on %2$s', 'widgets'), get_comment_author(), '<a href="' . esc_url( get_comment_link($comment->comment_ID) ) . '">' . get_the_title($comment->comment_post_ID) . '</a>') . '</li>'; } }
Pisząc w wielkim skrócie w linii numer 700 należy zmienić: get_comment_author_link() na get_comment_author(), i to by było na tyle. Plik należy zapisać i przesłać na serwer.
Wygląd w postaci zdjęć jak to wygląda przed i po:
Lepsze rozwiązanie
Lepszym rozwiązaniem, aby uniknąć utraty modyfikacji po update WordPress jest stworzenie własnego widgetu na wzór obecnego. W zasadzie wystarczy skopiować cały kod widgetu z najnowszymi komentarzami, zmodyfikować pod swoje potrzeby i wkleić go do pliku functions.php. Krótkie info na ten temat: http://wordpress.stackexchange.com/questions/19587/how-to-hack-recent-comments-default-widget
Mam nadzieję, że wszystko jest zrozumiałe.
Wtyczka, która umożliwia stworzenie bardziej zaawansowanego widgetu najnowsze komentarze: http://wordpress.org/plugins/bwp-recent-comments/
Możliwe także dodanie daty i inne. Link do imienia może być np. linkiem do wpisu itd. Warto przetestować.
Artykuł przedstawia informację na temat. Eng: How to Remove comment author link from WordPress Recent_Comments widget without plugin.
Zostaw komentarz
Musisz się zalogować, aby móc dodać komentarz.
Pingback: Better WordPress Recent Comments - Wtyczka - Plugin WP.
Nico
Dzięki za rozwiązanie problemu, który moim zdaniem wpływał na estetykę bloga, a jak wiadomo blog musi dobrze wyglądać. Zaraz zabieram się za instalacje wtyczki. Muszę tutaj częściej zaglądać.
Bartek
Nie jestem zwolennikiem WordPressa, ale im więcej wiedzy na różne tematy się posiada – tym lepiej. Niemniej jednak zdarzają mi się sytuacje, w których jestem zmuszony użyć tego szablonu. Więc dzięki za ten wpis. Na pewno się przyda.
Chciałbym spytać dodatkowo dlaczego tak rzadko umieszczasz wpisy w tym dziale? Moim zdaniem zagadnienia związane z PHP i MySQL są na tyle ciekawe że warto poświęcać im czas 🙂
Dzięki!
Dawid Boho
Ostatnio prawie nic tu nie publikuje, gdyż obecnie nie mam czasu na to. Może w przyszłości powrócę do systematycznego tworzenia jakichś poradników itd.