パンくずリストからWelcartの「商品・商品ジャンル」カテゴリを消す

WordPress Tips

WordPressのECサイトプラグイン「Welcart」のパンくずリストのカスタマイズ。
パンくずリストの階層の一部を除去して表示する方法の覚え書きです。

スポンサーリンク

Welcartの商品データのカテゴリ構造

Welcartでは構造上、商品データは以下のカテゴリに属している必要があります。

商品 (item)
┣ お勧め商品( itemreco )
┣ 新着商品 ( itemnew)
┗ 商品ジャンル (itemgenre)

商品データは全て「商品(item)」カテゴリーに属します。商品(item)カテゴリの配下に「お勧め商品(itemreco)」、「新着商品(itemnew)」、「商品ジャンル(itemgenre)」というカテゴリーがあります。

商品をさらに細かいカテゴリーに分けたい場合、例えばファッションカテゴリとして、レディス、メンズ、キッズカテゴリを作りたい場合は、「商品ジャンル(itemgenre)」の下にレディス、メンズ、キッズカテゴリーを作っていくことになります。

商品ジャンルの子カテゴリ「レディス」に登録した商品「レディスブラウス」をお勧め商品としたい場合は、商品、お勧め商品、商品ジャンル、レディスの、4つのカテゴリーにチェックを付けます。

パンくずリストから「商品」「商品ジャンル」を消したい

上記のような構造となるため、パンくずリストは

トップ > 商品 > 商品ジャンル > レディス > レディスブラウス

となります。「商品」と「商品ジャンル」はショップページ側ではあまり意味がないのでパンくずリストからは除去した方がすっきりします。

理想のパンくずリスト

トップ > レディス > レディスブラウス

Breadcrumb NavXTのカスタマイズ

パンくずリストプラグイン「Breadcrumb NavXT」を導入している場合は公式サポートフォーラムにカスタマイズの方法が載っています。

Breadcrumb NavXT
人気の WordPress プラグイン「Breadcrumb Navigation XT」の後継であるBreadcrumb NavXT は、以前よりも良いものになるよう最初から書き直されました。

結構古い情報ですが問題なく動くようです。

パンくずリストのカスタマイズ方法について

function my_filter_breadcrumbs($bcnObj) {
	$trail = array();
	if ( count($bcnObj->trail) > 0 ) {
		for ( $i = 0; $i < count($bcnObj->trail); $i++ ) {
			if ( '商品' != $bcnObj->trail[$i]->get_title() && '商品ジャンル' != $bcnObj->trail[$i]->get_title() ) {
				$trail[] = $bcnObj->trail[$i];
			}
		}
	}
	$bcnObj->trail = $trail;
	return $bcnObj;
}
add_action('bcn_after_fill', 'my_filter_breadcrumbs');

Yoast SEOのパンくずリストのカスタマイズ

人気のSEO対策ができるプラグイン「Yoast SEO」。生憎、SEOの昨日はWelcartの商品ページでは機能しないですがSEOだけでなくパンくずリストも生成してくれます。

Yoast SEO
WordPress の SEO を向上させましょう: Yoast SEO プラグインを使用して、より良いコンテンツを執筆し、完全に最適化された WordPress サイトを作成しましょう。

こちらの場合は以下のページが参考になりました。

Yoast SEOパンくずリスト出力項目をカスタマイズ【wpseo_breadcrumb_links】

Multiple examples of how to customize the Yoast SEO breadcrumbs
Multiple examples of how to customize the Yoast SEO breadcrumbs - yoast_seo_breadcrumb_add_woo_shop.php

The breadcrumbs title setting

function custom_yoast_breadcrumb( $links ) {
    if(usces_is_item()){
       array_splice( $links, 1, 2 );
    }
    return $links;
}
add_filter( 'wpseo_breadcrumb_links', 'custom_yoast_breadcrumb' );

usces_is_itemは現在の記事が商品かどうかを判断するWelcart関数です。

とりあえず、商品、商品ジャンルは消せるんですが、お勧め商品や新商品の場合も消えてしまうので再考が必要です。

また時間ができたら考えようと思います。。。

【公式】Welcart | カスタマイズ開発に強いEC構築ツール
お客様に寄り添うECサイトを構築するならWelcart(ウェルカート)。 高いカスタマイズ性で、お客様のわがままと予算に応えるWordPressのネットショップが制作できます。 保守やセキュリティも開発チームでサポートします。まずは無料相談まで。
タイトルとURLをコピーしました