WordPressのテンプレートタグ「wp_list_authors()」の挙動が変だったので修正してみました。これってバグですか?
「wp_list_authors」は、Authorのリストを出すWordPressのテンプレートタグです。このテンプレートタグの詳しい使い方はこちら。
日本語のドキュメントもありますが、英語の方のドキュメント見た方が早いので、結局、英語の方を見ちゃうんですよねぇ。てか、wikiの編集に参加しろって話ですよね。
で、テンプレートをいじっているときに気がついたのですが、どうもテンプレートに
wp_list_authors('style=none');
と書いた場合に、リストが出てこないようです。ちなみにWordpress 2.8.5です。これってバグかしら?
一応、この関数が入っているファイル「wp-includes/author-template.php」を開いてみたところ、なんとなく直せそうだったので直してみました。
wp_list_authorsが定義されているのは、ファイルの最後の方で、修正したのは330行目です。
if ( !($posts == 0 && $hide_empty) && 'list' == $style )
$return .= $link . '</li>';
else if ( ! $hide_empty )
$return .= $link . ', ';
となっているのを以下のように修正しました。
if ( !($posts == 0 && $hide_empty) && 'list' == $style )
$return .= $link . '</li>';
elseif ( !($posts == 0 && $hide_empty) || ! $hide_empty )
$return .= $link . ', ';
これで出るようになりました。でも、またなにか別の問題が出ているかもしれませんが。たぶん大丈夫だと思いますが。
あとで検索してみたら、同じ問題を上げている人がいました。やっぱりこれ、バグみたいですね。
<?php wp_list_authors(‘style=none’); ?>
WordPress › Support » new author style ‘none’ fails to return authors list
this fails to return author list
argument ‘style=list’ returns authors list
argument ‘style=’ sporadically returns authors list ( maybe 1 out of 100 )
そんなわけで、WordPressのバグフィックス出来たっぽいんですけど、これ、WordPressにフィードバックしたほうがいいんですかね?やり方とか良く分かんないんですけれども。
[改訂版]WordPress 仕事の現場でサッと使える! デザイン教科書[WordPress 5.x対応版] (Webデザイナー養成講座)
- メーカー:技術評論社
- カテゴリ:単行本(ソフトカバー)