WooCommerce Kategori Açıklaması Filtrelenmiş Mağaza Sayfasında Gösterilmiyor
Varsayılan olarak, WooCommerce arşiv (kategori) sayfalarında ürün kategorisi açıklamalarını görüntüler. Ancak, HUSKY ürün filtresi aktif olduğunda, mağaza sayfası URL'si gerçek bir kategori arşivinden filtrelenmiş bir mağaza sayfasına dönüşür — örneğin, /shop/?swoof=1&product_cat=my-category. Bu tür bir sayfada, WordPress taksonomi nesnesini yüklemez, bu nedenle is_product_taxonomy() işlevine güvenen herhangi bir kod bir kategori bulamaz ve açıklama görüntülenmez.
Bu, WordPress'in beklenen davranışıdır ve HUSKY'de bir hata değildir.
Filtrelenmiş mağaza sayfasında kategori açıklamasını görüntülemek için, temanızın functions.php dosyasına veya bir kod parçacığı eklentisi aracılığıyla aşağıdaki kod parçacığını ekleyin:
add_action('woocommerce_before_shop_loop', function() {
// Exit if this is a normal category page without WOOF filter
if (is_product_taxonomy() AND empty($_GET['swoof'])) return;
$term = null;
// Try to get term from taxonomy archive
if (is_product_taxonomy()) {
$term = get_queried_object();
}
// If not found, try HUSKY's really_curr_tax parameter
if ((!$term || is_wp_error($term)) AND !empty($_GET['really_curr_tax'])) {
$raw = sanitize_text_field($_GET['really_curr_tax']);
$term_id = (int) explode('-', $raw)[0];
if ($term_id > 0) {
$term = get_term($term_id, 'product_cat');
}
}
// Exit if term not found or has no description
if (!$term || is_wp_error($term) || empty($term->description)) return;
echo '<div class="term-description">';
echo do_shortcode(wp_kses_post(wpautop($term->description)));
echo '</div>';
}, 5);
Bu kod parçacığı, HUSKY'nin URL'de ilettiği really_curr_tax parametresinden mevcut kategoriyi okur ve ürün döngüsünden önce açıklamayı manuel olarak çıktılar.
Not: .term-description bloğunun stili temanıza bağlıdır.
Referans: https://pluginus.net/support/topic/husky-products-filter-professional-for-woocommerce-solution