Wordpress 2.8.6で現在のカテゴリテキストをスパンで折り返す
-
08-07-2019 - |
質問
このコードでカテゴリを表示しています。通常、問題はありません。
<?php
$categories = wp_list_categories('current_category=1&hide_empty=0&title_li=&echo=0&link_before=<span>&link_after=</span>');
$categories = preg_replace('/title=\"(.*?)\"/','',$categories);
echo $categories;
?>
ただし、現在のカテゴリのテキストを<span>
タグにラップして、現在のカテゴリの画像を表示します。
要するに:
<a href="#">Home</a>
から<a href="#"><span>Home</span></a>
へ。
PHPでどうすればよいですか?
ありがとう。
解決
次のコードの2行目を次のように置き換えます。
$categories = preg_replace(
array('/title=\"(.*?)\"/','/(<a.*?>)(.*?)(<\/a>)/'),
array('','$1<span>$2</span>$3'),
$categories);
そして、title
タグを削除し、各<span></span>
タグ内に<a>
を追加し続けます。
他のヒント
これは機能しますか?:
<?php $categories = get_categories(); foreach ($categories as $cat) {echo '<a href="'.get_option('home').'/'.get_option('category_base').'/'.$cat->category_nicename.'/"><span>'.$cat->cat_name.'</span></a>'; } ?>
所属していません StackOverflow