概要
bcn_breadcrumb_trail_object
フィルタは、WordPressのBreadcrumb NavXTプラグインにおいて、パンくずリストのトレイルオブジェクトを操作するために使用されるフックです。このフィルタを使用することで、パンくずリストの表示内容をカスタマイズしたり、特定の条件に応じた変更が可能になります。以下のような機能を実装する際によく使われます。
- パンくずリストの項目の追加または削除
- カスタムポストタイプ用の特別なパンくず項目の設定
- ユーザーのロールに応じたパンくずリストの表示
- 特定のカテゴリーやタグに関連するパンくずのカスタマイズ
- テーマによるスタイリングの調整
- SEO向けに構造化データを追加する
構文
apply_filters( 'bcn_breadcrumb_trail_object', $trail );
パラメータ
$trail
: Breadcrumb Trailオブジェクト。これに対して変更を加えることができます。
戻り値
- フィルタを通った後のBreadcrumTrailオブジェクト。
使用可能なバージョン
- Breadcrumb NavXTバージョン: 6.0.0以降
- WordPressバージョン: 4.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_breadcrumb_trail_object', 'add_custom_breadcrumb_item');
function add_custom_breadcrumb_item($trail) {
if (is_home()) {
$trail->add(new bcn_breadcrumb('ホーム', home_url()));
}
return $trail;
}
このコードは、ブログのホームページに「ホーム」というパンくず項目を追加します。
サンプルコード2: カスタムポストタイプ用の項目変更
add_filter('bcn_breadcrumb_trail_object', 'modify_breadcrumb_for_custom_post_type');
function modify_breadcrumb_for_custom_post_type($trail) {
if (is_singular('custom_post_type')) {
$trail->add(new bcn_breadcrumb('カスタムポスト', 'カスタムポストへのURL'));
}
return $trail;
}
このコードは、カスタムポストタイプのシングルページで新しいパンくず項目を追加します。
サンプルコード3: 特定のユーザーに基づくパンくずリストの調整
add_filter('bcn_breadcrumb_trail_object', 'adjust_breadcrumb_for_user_role');
function adjust_breadcrumb_for_user_role($trail) {
if (current_user_can('administrator')) {
$trail->add(new bcn_breadcrumb('管理者専用エリア', '管理者専用エリアのURL'));
}
return $trail;
}
このコードは、管理者ユーザー用に特別なパンくず項目を追加します。
サンプルコード4: カテゴリー別のパンくずリスト
add_filter('bcn_breadcrumb_trail_object', 'customize_breadcrumb_for_category');
function customize_breadcrumb_for_category($trail) {
if (is_category()) {
$trail->add(new bcn_breadcrumb('カテゴリページ', 'カテゴリページのURL'));
}
return $trail;
}
このコードは、カテゴリーアーカイブページに特別なパンくず項目を追加します。
サンプルコード5: SEO用に構造化データの追加
add_filter('bcn_breadcrumb_trail_object', 'add_schema_markup_to_breadcrumbs');
function add_schema_markup_to_breadcrumbs($trail) {
$trail->set_schema('#breadcrumblist');
return $trail;
}
このコードは、SEOを考慮してパンくずリストに構造化データのスキーマを追加します。