Loop personalizzato di Woocommerce per mostrare tutti i prodotti
-
-
Ehi,haimaitrovato una rispostaper questo?Se sì,perfavore condividi.Ciò saràmolto apprezzato.Grazie.Hey, did you ever find an answer for this? If yes, please share. That will be highly appreciated. Thanks.
- 0
- 2013-06-14
- Devner
-
Ecco unpostmigliore da copiare :) 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 risposta
- voti
-
- 2013-06-14
Non ho risolto completamenteilmioproblema. Ilmio cliente ha cambiatoideae non hapiù voluto lo smistamento.
Maper quanto riguardailpaging,sono riuscito afarlofunzionare aggiungendo unnuovo argnellamia query,eccoil codice che hafattofunzionareperme:
<?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. } ?>
La variabile
$paged
mi aiuta afarpassare lapagina correntenell'URLtramite GET.Ancora una volta,non so se siailmodomiglioreperfarlo. Ma hafattoil lavoroperme.
Spero chepossa aiutare qualcuno.
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` è deprecato dalla versione 3.0 ... usainvece` wc_get_template_part` ... Puoi anche usare un'istruzioneif perfarein modo cheiltuo codice supporti sia la vecchia che lanuova versione di 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
Neltuo array $ args,dovrestiesserein grado di aggiungere
'posts_per_page' => -1
permostraretuttii prodotti.Il risultato sarebbe simile a questo:$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 );
Attualmente sto lavorando a un sito die-commercee ho riscontrato unproblema. Ilmio cliente desidera unapaginae-boutique contutte le categorie diprodotti visualizzate,seguita datreprodottipromossie unpulsante "mostratutto".
Questopulsante "Mostratutto" dovrebbemostraretuttoilprodotto contenutonelnegozio con l'ordinamentoe lapaginazionepredefiniti di woocommerce.
Prima ditutto,non so difarlonelmodogiusto. Quello che hofinora è lapagina chemostra le categorie diprodottie quando su questapaginafaccio clic sulpulsante "mostratutto",ricarico lapagina con un argomento
GET
/?all=1
e visualizzareilprodotto.Ho copiato l'idea da questopost ,edeccoilmio codice:
Iprodotti sonoben visualizzatie la selezioneper l'ordinamento è visibile. Quando voglio cambiare l'ordinamento,lapagina viene ricaricatama l'ordinenon vienemodificatoe l'impaginazione èimpostata su 3prodottiperpaginamanon viene rispettata. (ipulsanti dipagingnon vengono visualizzati).
Vorrei aggiungere che èilmioprimo sito web che utilizza WordPresse WooCommerce.