WordPress Tips

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

2022-04-11

本記事にはプロモーションが含まれています。

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

ソラミ♪

Webエンジニアをやりつつ、デザインにも携わる株式会社コムワークの中の人。WordPress、Adobeアプリ、カワウソ好き。 2015年から当ブログ運営|2008年からGmail使用中|WordPress制作10年以上|15社以上のレンタルサーバー利用経験|100件以上のドメイン取得運用|サイト・ドメイン移転多数 »  もっとくわしく

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

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

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

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

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

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

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

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

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

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

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

理想のパンくずリスト

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

Breadcrumb NavXTのカスタマイズ

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

https://ja.wordpress.org/plugins/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だけでなくパンくずリストも生成してくれます。

https://ja.wordpress.org/plugins/wordpress-seo/

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

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

https://gist.github.com/amboutwe/ea0791e184668a5c7bd7bbe357c598e9

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関数です。

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

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

https://www.welcart.com/

Welcart対応のオシャレで高機能テーマ

WordPressテーマ「ICONIC」

  • ショップロゴ表示可能なGoogleマップカスタムピンマーカー
  • ローディング画面
  • トップページニュースティッカー
  • レコメンド商品一覧表示機能、関連商品

WordPressテーマ「GLAMOUR」

  • トップページを自由に構成できるコンテンツビルダー
  • レコメンド商品一覧表示機能
  • 画像つきメガグローバルナビゲーション2タイプ
  • ショップロゴ表示可能なGoogleマップカスタムピンマーカー
  • 固定ページテンプレート「CONCEPT」「ITEM RANKING」「投稿者一覧」
  • カスタム投稿タイプ「お知らせ」「特集記事」

WordPressテーマ「EGO.」

  • 静止画、MP4、Youtubeに対応したトップページヘッダー
  • 画像付きメガグローバルナビゲーション
  • ローディング画面の設定機能
  • 固定ページテンプレート「ランディングページ」「ランキング」
  • カスタム投稿タイプ「お知らせ」

  • この記事を書いた人
  • 最新記事

ソラミ♪

Webエンジニアをやりつつ、デザインにも携わる株式会社コムワークの中の人。WordPress、Adobeアプリ、カワウソ好き。 2015年から当ブログ運営|2008年からGmail使用中|WordPress制作10年以上|15社以上のレンタルサーバー利用経験|100件以上のドメイン取得運用|サイト・ドメイン移転多数 »  もっとくわしく

-WordPress Tips
-