0

私はこのコードを持っています:

<?php
$terms = get_terms("category");
$count = count($terms);
$url= get_bloginfo("url");
 if ( $count > 0 ){
 echo "<ul class='spis_kate'>";
 foreach ( $terms as $term ) {
$nazwa = $term->name;
$wyswietl= strtolower($nazwa);
$przed = array ('ą', 'ę', 'ó', 'ś', 'ć', 'ń', 'ź', 'ż', 'ę', 'ł', ' ');
$po = array ('a', 'e', 'o', 's', 'c', 'n', 'z', 'z', 'e','l', '-');
$wynik= str_replace($przed, $po, $wyswietl);
   echo "<li><a href=".$url."/produkt/?category_name=" . $wynik. ">" . $term->name . "</a></li>";

 }
 echo "</ul>";
 }
?>

カテゴリが子の場合、li にクラス (たとえば子) を追加する方法。

4

2 に答える 2

1

代わりに組み込みのwp_list_categoriesを使用することをお勧めします。ネストされたリストが表示されます。

<?php wp_list_categories(); ?>

また、独自のスラッグを生成していることもわかります。すでに生成されたスラッグは にあります$term->slug

ただし、何らかの理由で特定の用語に親があるかどうかを知る必要がある場合は、 の値を確認できます$term->parent。設定されていない場合は、用語が最上位であることを意味します。

<li class="cat<?php if ( $term->parent ) echo " child"; ?>">
于 2012-09-23T18:53:38.873 に答える
0
$li_class=($wynik==="child")?"child":"";
echo '<li class="'.$li_class.'"><a href=' ...
于 2012-09-23T18:21:42.517 に答える