welcartでショップ&ブログのページを作ってます。
アーカイブ、カテゴリページにおいて、
welcartにおける商品カテゴリと、ブログにおける記事カテゴリの振り分けするときのお話。
その記事が商品かブログ記事かを振り分けるときのコードは発見したけど、
そのカテゴリが商品カテゴリか否かを振り分けるコードが無いみたいなので、cat_is_ancestor_of()を使用。
[sourcecode language=”php”]
<?php /* If this is a category archive */ if (is_category()) {
/* 現在のカテゴリのカテゴリIDを取得 */
$catnow = get_the_category();
$catnow = $catid[0];
/* welcartにおける商品カテゴリの親玉『商品』のcat_idを取得 */
$catitem = get_category_by_slug(‘item’);
$catitem = $catitem->term_id; ?>
[/sourcecode]
ここまでで、現カテゴリーページのID及び、商品カテゴリの大親カテゴリIDの取得。
あとは、現カテゴリーページが商品カテゴリの子もしくは孫に当たるかどうかを調べるので、
[sourcecode language=”php”]
<?php if(cat_is_ancestor_of( $catitem, $catid ) or is_category($catitem)): ?>
/* ここに商品カテゴリの場合の処理 */
<?php else : ?>
/* ここにブログ記事の場合の処理 */
<?php endif; ?>
[/sourcecode]
以上で振り分けることが出来ます。
ちなみにcat is ancestor of()についてはリファレンスにて確認を。
また、その記事が商品かブログ記事かを振り分けるときのコードに関しては、
[sourcecode language=”php”]
<?php if(usces_is_item()): ?>
[/sourcecode]
という感じで便利な条件分岐タグが実装されているようです。
このタグを使用して、月別あーカーイブ等のページでも通常の記事のレイアウトと商品の場合のレイアウトを分けることができます。
[sourcecode language=”php”]
<?php while (have_posts()) : the_post(); usces_the_item(); ?>
<?php if(usces_is_item()): ?>
/* 商品の時の処理 */
<?php else : ?>
/* ブログ記事の場合の処理 */
<?php endif; ?>
<?php endwhile; ?>
[/sourcecode]
- Facebook GraphAPI v2.9でいいね・シェア数をPHPで取得して表示 - 2017年9月7日
- phpstormのFilewatcherでautoprefixerを使う方法 - 2017年1月19日
- Custom Field Templateを使用してのプレビューを実装 - 2016年1月14日
- WordPress:WooCommerceを使ってみて分かったこと - 2013年7月5日
- 誰得なプラグイン Ultimate Google Analytics改をひっそりと公開します - 2013年6月4日
- プラグイン『WooCommerce Fields for Japan』を公開しました - 2013年4月21日
- 公式 WordPress.orgプラグインディレクトリでのプラグイン公開のススメ - 2013年4月17日
- WordPress:WooCommerceを日本仕様へと日本語化 - 2013年4月15日
- webクリエイター パソコンを買う。 - 2013年3月16日
- WordPress:『続きを読む』read moreをpタグで囲む - 2013年3月5日
0 comments found
Comments for: welcartとブログの共存:カテゴリの振り分け。大親カテゴリの追跡