前提・実現したいこと
WordPressで、投稿ページにカテゴリ一覧のリンクを作っています。
カテゴリー一覧ページ内に、カテゴリーリンクと全ての記事を表示させる「ALL」カテゴリリンクを追加し、
そのリンクと現在表示しているページ名が一緒であれば、
カレントクラスを追加しようとしていたのですが、どうしてもうまくいきません。
該当のソースコード
php
1<ul class="category-list"> 2 <li><a href="<?php echo home_url(); ?>/news">ALL</a></li> 3<?php 4 $categories = get_categories('hide_empty=1&title_li='); 5 if (is_array($categories)) { 6 foreach($categories as $category): 7 $cat_id = $category->cat_ID; 8 $cat_title = $category->cat_name; 9 $cat_url = get_category_link($cat_id); 10 echo "<li"; 11 if (is_category($cat_id)) { 12 echo ' class="current"'; 13 } 14 echo '><a href="'.$cat_url.'" title="'.$cat_title.'">'.$cat_title.'</a></li>'; 15 endforeach; 16 } 17?> 18</ul>
試したこと
WordPressで「wp_list_categories」を使いカテゴリ名の出力とそこにカレントリンクを追加することはできましたが、カテゴリにない「ALL」カテゴリを追加し、そこに同じ様にカレントリンクを追加する方法がわかりません。
補足情報(FW/ツールのバージョンなど)
WordPress バージョン 5.2.2
PHP7.2.17
JSでも、「if(document.URL.match」で文字列を判定する方法も試してみましたが、
「news」タグが全てのリンク内に含まれるので、
他のリンクの場合にもnewsのカレントクラスが外れない状態になっています。
もし何か解決方法を少しでもご存知の方がいらっしゃいましたら、
お力をお貸しいただきたいです。
どうぞよろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー