質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

2716閲覧

WooCommerceでターム毎の商品一覧ページ作成

oyashiro

総合スコア37

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2018/04/26 03:47

WordpressのWooCommerceが入った海外の有料テーマ(Chirstiano)を使用しているのですが、
カテゴリーごとの商品一覧ページはありますが、
一覧ページにはそのカテゴリーの商品が並ぶだけのページとなっております。
商品に、"人気"や"期間限定"などのタグを付けたときに、

人気
人気タブの商品の一覧

期間限定
期間限定タブがついた商品の一覧

のような並びを行いたくコーディングしていたのですが、
WooCommerceの標準価格の項目が出力出来ず困ってます。

下記が実装してみたソースです。

<?php $taxonomy_name = 'product_tag'; $taxonomys = get_terms($taxonomy_name); if(!is_wp_error($taxonomys) && count($taxonomys)): foreach($taxonomys as $taxonomy): $tax_posts = get_posts(array('post_type' => get_post_type(), 'taxonomy' => $taxonomy_name, 'term' => $taxonomy->slug ) ); if($tax_posts): $bakery_tag = $taxonomy->name; //print $bakery_tag; if(($bakery_tag == "人気") or ($bakery_tag == "新商品") or ($bakery_tag == "期間限定")){ ?> <div class="category"> <h1><?php echo esc_html($taxonomy->name); ?></span></h1> <ul id="product-list" class="cols-3 col-sm-6 margin-large"> <?php foreach($tax_posts as $tax_post): ?> <li> <div <?php post_class(); ?>> <a class="image" href="<?php echo get_permalink($tax_post->ID); ?>"> <?php if(get_the_post_thumbnail($tax_post->ID)): ?> <?php echo get_the_post_thumbnail($tax_post->ID); ?> <?php else: ?> <img src="//nikunoiijima.co.jp/so-zai/wp-content/themes/cristiano/images/placeholder.jpg" alt="image" class="woocommerce-placeholder wp-post-image"> <?php endif; ?> <?php // do_action( 'woocommerce_before_shop_loop_item_title' ); //do_action( 'woocommerce_after_shop_loop_item_title'); ?> </a> <div class="description"> <h2 class="title"> <a href="<?php echo get_permalink($tax_post->ID); ?>"> <?php if (has_term('limited','product_tag')){ ?> <span class="limited_menu">期間限定</span> <?php }elseif (has_term('top','product_tag')){ ?> <span class="limited_menu">人気№1</span> <?php } ?> <?php echo esc_html($tax_post->post_title); ?> </a> </h2> <p> <?php echo $tax_post->post_content; ?> </p> <a rel="nofollow" href="<?php echo get_permalink($tax_post->ID); ?>" class="btn-cart">詳細を見る</a> </div> </div> </li> <?php endforeach; ?> </ul> </div> } else { ?> <?php } endif; endforeach; endif; ?>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

こちらに同様の質問がありました。
https://teratail.com/questions/112573

今回は

echo get_post_meta( $tax_post->ID, '_price', true );

で解決しました。

投稿2018/04/26 08:54

oyashiro

総合スコア37

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問