すべての製品を表示するWoocommerceカスタムループ
-
-
ねえ、あなたはこれに対する答えを見つけたことがありますか?はいの場合、共有してください.それは高く評価されます.ありがとう.Hey, did you ever find an answer for this? If yes, please share. That will be highly appreciated. Thanks.
- 0
- 2013-06-14
- Devner
-
コピーするのに適した投稿は次のとおりです:)https://cfxdesign.com/create-a-custom-woocommerce-product-loop-the-right-way/Here's a better post to copy from :) https://cfxdesign.com/create-a-custom-woocommerce-product-loop-the-right-way/
- 0
- 2018-05-24
- cfx
-
2 回答
- 投票
-
- 2013-06-14
問題を完全に解決できませんでした.私のクライアントは考えを変えて、もうソートを望んでいませんでした.
しかし、ページングに関しては、クエリに新しい引数を追加することで、ページングを機能させることができました.これが、ページングを機能させるコードです:
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $args = array( 'post_type' => 'product', 'paged' => $paged, ); $wp_query = new WP_Query($args); if (isset($_GET['all'])) { ?> <?php do_action('woocommerce_archive_description'); ?> <?php if (have_posts()) : ?> <?php // I don't want the sorting anymore //do_action('woocommerce_before_shop_loop'); ?> <ul class = "products-list"> <?php while (have_posts()) : the_post(); ?> <?php woocommerce_get_template_part('content', 'product'); ?> <?php endwhile; // end of the loop. ?> </ul> <?php /* woocommerce pagination */ do_action('woocommerce_after_shop_loop'); ?> <?php elseif (!woocommerce_product_subcategories(array('before' => woocommerce_product_loop_start(false), 'after' => woocommerce_product_loop_end(false)))) : ?> <?php woocommerce_get_template('loop/no-products-found.php'); ?> <?php endif; ?> <?php } else { // Code to display the product categories with thumbnails. } ?>
$paged
変数は、GETを介してURLで渡された現在のページを取得するのに役立ちます.もう一度、それが最善の方法かどうかはわかりません.しかし、それは私のために仕事をしました.
誰かの助けになることを願っています.
I didn't entirely resolved my problem. My client changed his mind and didn't want the sorting anymore.
But concerning the paging, I managed to have it working by adding a new arg in my query, here is the code that made it worked for me :
<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $args = array( 'post_type' => 'product', 'paged' => $paged, ); $wp_query = new WP_Query($args); if (isset($_GET['all'])) { ?> <?php do_action('woocommerce_archive_description'); ?> <?php if (have_posts()) : ?> <?php // I don't want the sorting anymore //do_action('woocommerce_before_shop_loop'); ?> <ul class = "products-list"> <?php while (have_posts()) : the_post(); ?> <?php woocommerce_get_template_part('content', 'product'); ?> <?php endwhile; // end of the loop. ?> </ul> <?php /* woocommerce pagination */ do_action('woocommerce_after_shop_loop'); ?> <?php elseif (!woocommerce_product_subcategories(array('before' => woocommerce_product_loop_start(false), 'after' => woocommerce_product_loop_end(false)))) : ?> <?php woocommerce_get_template('loop/no-products-found.php'); ?> <?php endif; ?> <?php } else { // Code to display the product categories with thumbnails. } ?>
The
$paged
variable helps me to get the current page passed in the URL via GET.Once again, I dunno if it is the best way to do it. But it did the job for me.
I hope it can help someone.
-
`woocommerce_get_template_part`はバージョン3.0以降非推奨です...代わりに` wc_get_template_part`を使用してください...ifステートメントを使用して、コードでwoocommerceの古いバージョンと新しいバージョンの両方をサポートすることもできます.`woocommerce_get_template_part` is deprecated since version 3.0 ... use `wc_get_template_part` instead ... You can as well use a if statement to make your code support both older and newer version of woocommerce
- 0
- 2019-12-10
- Kolawole Emmanuel Izzy
-
- 2014-09-16
$ args配列に、
'posts_per_page' => -1
ですべての商品を表示します.結果は次のようになります:$args = array( 'post_type' => 'product', 'paged' => $paged, 'posts_per_page' => -1 );
In your $args array, you should be able to add
'posts_per_page' => -1
to show all products. The result would look like this:$args = array( 'post_type' => 'product', 'paged' => $paged, 'posts_per_page' => -1 );
現在eコマースのウェブサイトで作業していますが、問題が発生しました. 私のクライアントは、すべての商品カテゴリが表示され、その後に3つのプロモート商品と[すべて表示]ボタンが表示されたページのeブティックを望んでいます.
この[すべて表示]ボタンは、デフォルトのwoocommerceの並べ替えとページングでストアに含まれるすべての商品を表示することになっています.
まず第一に、私はそれを正しい方法でやっているのかわからない.これまでのところ、製品カテゴリを表示するページがあります.このページで[すべて表示]ボタンをクリックすると、
GET
引数/?all=1 <を使用してページを再読み込みします./code>そして製品を表示させます.
商品が適切に表示され、並べ替えの選択が表示されます. 並べ替えを変更したい場合、ページは再読み込みされますが、順序は変更されず、ページングは1ページあたり3製品に設定されますが、尊重されません. (ページングボタンは表示されません).
WordPressとWooCommerceを使用した最初のウェブサイトであることを付け加えたいと思います.