Spectacle de rupture de stock des produits à la fin, dans le Thème
Est-il possible de montrer la rupture de stock des produits à la fin d'une catégorie ou d'une page dans wordpress?
De sorte que le client d'abord voir les produits qui sont disponibles et après que les produits qui sont en rupture de stock.
Vous devez vous connecter pour publier un commentaire.
Accéder à la configuration globale des options pour la gestion des stocks dans le Thème, regardez à gauche de votre admin WordPress et cliquez sur Thème, puis sur Paramètres, puis cliquez sur l'onglet Inventaire.
Vous trouverez cette "rupture de Stock Visibilité"
En rupture de Stock Visibilité - Cette case à cocher vous permettra de déterminer si vous voulez cacher des articles en stock dans le Thème de catalogue.
http://www.inmotionhosting.com/support/website/woocommerce/managing-inventory-in-woocommerce
Pour les faire apparaître à la fin de la catégorie que vous pourriez utiliser pre_get_posts de commande basée sur le stock, mais alors, vous allez perdre votre tri.
C'est le même que Viktor & Bogdan réponse, mais sans le code de la Classe.
Il utilise le
post_clause
filtre de modifier le produit de la requête. NousJOIN
la table wp_postmeta à la requête et ajouter unorderby _stock_status
de la clause de la requête existante. De cette façon, toutes les autresorderby
clauses restent dans la requête en tant que bien.Vous pouviez changer
istockstatus.meta_value ASC
àistockstatus.meta_value DESC
si vous pour une raison quelconque, voulait les articles en rupture De Stock en premier.Testé sur WP: 4.8; WC 3.0.8
add_filter('posts_clauses', 'order_by_stock_status', 999);
Sans 999 priorité, il ne produit aucun effet pour moi.is_tax()
dans la condition de la custom taxonomies comme des marques de produits.Ici est un extrait de reformulation de produits (en stock venir en premier):
https://www.snip2code.com/Snippet/114858/WooCommerce-Products-Order-by-Stock-Stat
Outofstock
les produits bas mais cloné de nombreuxinstock
éléments de trop. Quel est le problème?Ce code fonctionne pour moi:
});
C'est la meilleure solution:
}, PHP_INT_MAX );
Essayer ce code (mis en functions.php de votre thème):
Pris ici.
Pour les dernières versions de Thème voir la réponse ci-dessous: https://stackoverflow.com/a/44597448/3925099