Php — Обернуть Тегом Span Вокруг Количества Сообщений Автора

  • Автор темы Snake55
  • Обновлено
  • 20, Oct 2024
  • #1

Можно ли обернуть тегом span вокруг количества сообщений автора, чтобы я мог применить некоторые стили CSS к данным в квадратных скобках для использования в карте сайта?

При поиске я нашел решения для архивов и категорий, как показано ниже:

 
 
 <li><a href="http://domain.com/author/user123/" title="Сообщения пользователя123">user123</a> <span>(8)</span></li>  
 

Эти два очень хорошо работают для архивов и категорий, и я надеялся, что будет что-то похожее для подсчета сообщений автора.

HTML на данный момент выглядит так:

<li><a href="http://domain.com/author/user123/" title="Сообщения пользователя123">user123</a> (8)</li>

Мне бы хотелось, чтобы это было так:

//archives function my_get_archives_link($links) { $links = str_replace('</a>&nbsp;(', '</a> <span>(', $links); $links = str_replace(')', ')</span>', $links); return $links; } add_filter('get_archives_link', 'my_get_archives_link'); //categories function my_wp_list_categories($links) { $links = str_replace('</a> (', '</a> <span>(', $links); $links = str_replace(')', ')</span>', $links); return $links; } add_filter('wp_list_categories', 'my_wp_list_categories');

Есть идеи?

Заранее спасибо.

#php #фильтры #список авторов

Snake55


Рег
24 Jan, 2006

Тем
78

Постов
203

Баллов
613
  • 25, Oct 2024
  • #2

Не похоже, что

 $author_html 
К сожалению, предоставляет соответствующий крючок для изменения чего-либо. Следующим лучшим вариантом было бы просто заменить строку и надеяться на лучшее:/

$start_wrapper = '<span class="author-post-count">'; // Set our wrapper start tag $end_wrapper = '</span>'; // Set our wrapper end tag $author_html = wp_list_authors( array( // Get Author HTML 'optioncount' => true, 'echo' => false, // Ensure we return and do not echo ( default is TRUE ) ) ); $author_html = str_replace( '</a> (', "</a> {$start_wrapper}(", $author_html ); $author_html = str_replace( '</li>', "{$end_wrapper}</li>", $author_html ); echo $author_html;

Вышеуказанное попытается заменить HTML-тег привязки, чтобы у вас была подходящая оболочка. В этот момент вы можете повторить или добавить wp_list_authors() where you see fit.

 

Nik582


Рег
17 Apr, 2007

Тем
70

Постов
212

Баллов
592
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно