WP widget 地方地域(カスタムタグ) 20230222実装コード
地方地域(カスタムタグ)
<div class="tagcloud custom-region"> <?php $taxonomy='region'; add_filter('wp_generate_tag_cloud_data', 'custom_wp_generate_tag_cloud_data'); echo wp_tag_cloud( "taxonomy=".$taxonomy."&show_count=0&pad_counts=true" ); remove_filter( 'wp_generate_tag_cloud_data', 'custom_wp_generate_tag_cloud_data' ); function custom_wp_generate_tag_cloud_data($tags_data) { $taxonomy='region'; // タームの親子構造の配列を取得 $tree_terms = wp_dropdown_categories('taxonomy='.$taxonomy.'&hierarchical=1&echo=0&value_field=slug'); // slug抜き出し配列に入れる preg_match_all('/value="(.*?)"/', $tree_terms, $matches); // タームのオブジェクトの配列で取得 // 親子構造にタームを並べ替えと $order = $matches[1]; $array1 = $tags_data; $sorted_array = []; foreach ($order as $i => $search_id) { foreach ($array1 as $idx => $record) { if ($search_id == $record[slug]) { $sorted_array[] = $record; unset($array1[$idx]); break; } } } $tags_data = $sorted_array; return $tags_data; } ?> </div>外観>カスタマイズ>追加 CSS
/*SideBar PHP Code Widget タグクラウド地域*/ .custom-region a[aria-label^="近畿"], .custom-region a[aria-label^="関東"], .custom-region a[aria-label^="九州"], .custom-region a[aria-label^="中部"], .custom-region a[aria-label^="北海道"] { /*display:block;*/ background: #ddd; /*color: white;*/ }