wordpress (3.4) では、カスタム タグのアルファベット順のリスト/インデックスを返し、カスタム投稿をグリッド レイアウトでフィルター処理するコードをいくつか作成しました。タグの名前は「tagdirectory」です。カスタム投稿の名前は「ディレクトリ」です。
これはコードです:
<?php $list = '';
$tags = get_terms( 'tagdirectory' );
echo '<ul id="portfolio-filter">';
echo'<li><a href="#all" title="">All</a></li>';
$groups = array();
if( $tags && is_array( $tags ) ) {
foreach( $tags as $tag ) {
$first_letter = strtoupper( $tag->name[0] );
$groups[ $first_letter ][] = $tag;}
if( !empty( $groups ) ) {
foreach( $groups as $letter => $tags ) {
$list .= "\n\t" . '<h2>' . apply_filters( 'the_title', $letter ) .'</h2>';
$list .= "\n\t" . '<ul>';
foreach( $tags as $tag ) {
$lower = strtolower($tag->name);
$name = str_replace(' ', ' ', $tag->name);
$naam = str_replace(' ', '-', $lower);
$list .= "\n\t\t" . '<li><a href="#'.$naam.'">'.$name.'</a></li>';
}}}}else $list .= "\n\t" . '<p>Sorry, but no tags were found</p>';print $list;
echo "</ul>";
?>
これは完全に機能しますが、アルファベットの空の文字も表示したいと思います。
たとえば、次のように返されます。
あ
アイヒャー・オトル
アペロイグ・フィリップ
B
バスソール
ふ
フィッツジモンズ・モーリーン
... 等々
ただし、この文字で始まるタグがないため、空の文字グループは表示されません。ただし、次のように、空のグループの大文字を表示する必要があります。
あ
アイヒャー・オトル
アペロイグ・フィリップ
B
バスソール
ハ
D
え
ふ
フィッツジモンズ・モーリーン
G
... 等々
誰でも私を助けて、これを機能させるために追加する必要があるコードを教えてもらえますか?
ありがとう!