概要
bcn_default_hierarchy_display
フィルタは、WordPress プラグイン Breadcrumb NavXT のイベントにフックするためのものです。このフィルタを使用することで、パンくずリストのデフォルトの階層表示を変更したり、カスタマイズしたりすることができます。具体的には、以下のような状況で頻繁に使用されます:
- パンくずリストの階層構造のカスタマイズ
- 特定の条件に基づくパンくずリストの項目の表示・非表示
- カスタムポストタイプやタクソノミーのパンくずリストの制御
- SEO向けに最適化されたパンくずリストの構築
- デザインやユーザー体験に基づいたパンくずリストのスタイリング
- 多言語対応のパンくずリストの構築
構文
add_filter('bcn_default_hierarchy_display', 'your_custom_function');
パラメータ
$display
: デフォルトの階層表示内容(配列形式)
戻り値
- 変更された階層表示の内容(配列形式)
使用可能なバージョン
- Breadcrumb NavXT:6.0.0以降
- WordPress:5.0以降
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル1: デフォルトの表示を変更する
このサンプルコードでは、デフォルトのパンくずリストをカスタムテキストに変更しています。
add_filter('bcn_default_hierarchy_display', 'custom_breadcrumb_display');
function custom_breadcrumb_display($display) {
$display[] = 'カスタムテキスト';
return $display;
}
(著作権フリーのコード)
サンプル2: 特定の投稿タイプのみ表示する
特定の投稿タイプに対してパンくずリストをカスタマイズする方法です。
add_filter('bcn_default_hierarchy_display', 'custom_post_type_breadcrumb');
function custom_post_type_breadcrumb($display) {
if (get_post_type() === 'custom_post') {
$display[] = 'カスタム投稿タイプ';
}
return $display;
}
(著作権フリーのコード)
サンプル3: 特定の条件で表示しない
一定の条件下で特定の項目を非表示にするサンプルです。
add_filter('bcn_default_hierarchy_display', 'conditional_breadcrumb_display');
function conditional_breadcrumb_display($display) {
if (is_single() && in_the_loop()) {
// 不要な項目を削除
unset($display[0]);
}
return $display;
}
(著作権フリーのコード)
サンプル4: 多言語対応のカスタム表示
多言語対応したパンくずリストを用いるサンプルです。
add_filter('bcn_default_hierarchy_display', 'multilingual_breadcrumb_display');
function multilingual_breadcrumb_display($display) {
if (function_exists('pll_current_language')) {
$current_lang = pll_current_language();
$display[] = $current_lang === 'en' ? 'Home' : 'ホーム';
}
return $display;
}
(著作権フリーのコード)
サンプル5: SEOのための特定順序の設定
SEO向けにパンくずリストの順序を変更するサンプルです。
add_filter('bcn_default_hierarchy_display', 'seo_friendly_breadcrumb_display');
function seo_friendly_breadcrumb_display($display) {
// 特定のSEOフレンドリーな順序設定
array_unshift($display, 'SEOホーム');
return $display;
}
(著作権フリーのコード)
これらのサンプルを元に、具体的なニーズに合わせてさらにカスタマイズすることができます。