WooCommerce Fiyat Gizlemenin 7 Farklı Yolu
WooCommerce, e-ticaret siteleri için sunduğu esneklikle birçok özelliği özelleştirilebilir hale getiriyor. Bu yazıda, WooCommerce fiyat gizleme konusunu ele alacağız ve bu işlemi gerçekleştirmenin 7 farklı yöntemine detaylıca değineceğiz. Bu yöntemleri uygulayarak ürün fiyatlarınızı belirli sayfalardan, kullanıcı gruplarından ya da kategorilerden kolayca gizleyebilirsiniz.
Eğer kodlamada destek almak ya da profesyonel bir çözüm arıyorsanız, bana 0 (539) 219 79 78 numaralı telefondan veya [email protected] adresinden ulaşabilirsiniz. 😊 Hazırsanız, detaylara geçelim!
1. Ürün Sayfalarında WooCommerce Fiyat Gizleme
E-ticaret sitenizin yalnızca ürün detay sayfalarında fiyatları gizlemek istiyorsanız, aşağıdaki yöntemi kullanabilirsiniz. Bu çözüm, ürün sayfalarında fiyat bilgisi yerine boş bir alan göstermek için uygundur.
Bu işlem için, functions.php dosyanıza şu kodu eklemeniz yeterli:
<?php
// Aşağıdaki kod, WooCommerce'deki tekil ürün sayfasında ürün fiyatını kaldırır.
// "remove_action" fonksiyonu, belirli bir aksiyonu kaldırmak için kullanılır.
// Bu örnekte, "woocommerce_single_product_summary" aksiyonuna bağlı olan
// "woocommerce_template_single_price" fonksiyonu kaldırılıyor.
// İkinci parametre: Kaldırılacak olan fonksiyonun adı ("woocommerce_template_single_price").
// Üçüncü parametre: Fonksiyonun çalışma önceliği (10).
remove_action('woocommerce_single_product_summary', 'woocommerce_template_single_price', 10);
Bu kanca yalnızca ürün detay sayfalarını etkiler. Böylece mağaza sayfasında fiyat bilgisi görünmeye devam eder, ancak ürün detayına tıklayan kullanıcılar fiyat bilgisini göremez.
2. WooCommerce Arşiv Sayfalarında Fiyat Gizleme
Fiyatları yalnızca mağaza arşiv sayfalarından, örneğin alışveriş sayfası, ürün kategorileri ya da arama sonuçlarından kaldırmak istiyorsanız, aşağıdaki kodu kullanabilirsiniz:
<?php
// Aşağıdaki kod, WooCommerce ürün listesi sayfasında (ör. mağaza sayfası),
// ürün başlığından sonra gösterilen fiyat bilgisini kaldırır.
// "remove_action" fonksiyonu, belirli bir aksiyonu kaldırmak için kullanılır.
// Bu örnekte, "woocommerce_after_shop_loop_item_title" aksiyonuna bağlı olan
// "woocommerce_template_loop_price" fonksiyonu kaldırılıyor.
// İkinci parametre: Kaldırılacak olan fonksiyonun adı ("woocommerce_template_loop_price").
// Üçüncü parametre: Fonksiyonun çalışma önceliği (10).
remove_action('woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_price', 10);
Bu yöntemle fiyat bilgisini şu alanlardan kaldırabilirsiniz:
- Mağaza ana sayfası
- Ürün kategorileri
- Arama sonuçları
- İlgili ürünler ve upsell alanları
Arşiv sayfalarında fiyat bilgisini gizlemek, fiyat bilgisinin sadece ürün detayında gösterilmesini sağlayabilir.
3. Tüm Sayfalarda WooCommerce Fiyat Gizleme
Fiyat bilgilerini tamamen kaldırmak ve tüm WooCommerce sayfalarında fiyatları gizlemek istiyorsanız, aşağıdaki yöntemi tercih edebilirsiniz.
<?php
// WooCommerce'deki tüm ürünlerin fiyatlarını gizleyen bir filtre tanımlıyoruz.
// "add_filter" ile, WooCommerce'in ürün fiyatını döndüren filtresine müdahale ediyoruz.
// "__return_empty_string" fonksiyonu, WordPress'te sabit olarak boş bir string ("") döndürmek için kullanılır.
// Bu da ürün fiyatlarının hiçbir yerde görünmemesini sağlar.
add_filter( 'woocommerce_get_price_html', '__return_empty_string' );
Bu yöntem sayesinde fiyat bilgisi, kullanıcı giriş durumu fark etmeksizin hiçbir sayfada görünmez.
Dikkat: Bu kod, ürün sepeti ve ödeme sayfalarındaki fiyat bilgilerini de etkiler.
4. Belirli Kullanıcı Rolleri İçin WooCommerce Fiyat Gizleme
Fiyat bilgilerini yalnızca belirli kullanıcı rolleri için gizlemek istiyorsanız, aşağıdaki kodu kullanabilirsiniz.
<?php
// Belirli kullanıcı rollerine göre ürün fiyatını gizleyen bir fonksiyon tanımlıyoruz.
function hide_price_for_roles( $price ) {
// Mevcut kullanıcıyı alıyoruz.
$user = wp_get_current_user();
// Fiyatların gizleneceği rollerin listesini tanımlıyoruz.
$restricted_roles = array('bayi', 'toptanci'); // Bu listeye istediğiniz rolleri ekleyebilirsiniz.
// Kullanıcının rollerinden herhangi biri kısıtlı rollerle eşleşiyorsa fiyatı gizliyoruz.
if ( array_intersect( $user->roles, $restricted_roles ) ) {
return ''; // Boş döndürerek fiyatı gizler.
}
// Eğer kullanıcı kısıtlı rollere sahip değilse fiyatı olduğu gibi döndürür.
return $price;
}
// WooCommerce'in ürün fiyatını döndüren filtresine müdahale ediyoruz.
add_filter('woocommerce_get_price_html', 'hide_price_for_roles');
Örneğin, bayi ve toptancı gibi rollere sahip kullanıcılar fiyat bilgilerini göremez. Diğer kullanıcılar için fiyat bilgisi görünür olmaya devam eder.
5. Ziyaretçilere Fiyat Gizleme
Sitenize giriş yapmayan ziyaretçilerden fiyat bilgisini gizlemek için aşağıdaki yöntemi uygulayabilirsiniz:
<?php
// Bu fonksiyon, giriş yapmamış kullanıcılar için WooCommerce ürün fiyatlarını gizler.
function hide_price_for_guests( $price ) {
// Kullanıcının giriş yapıp yapmadığını kontrol ediyoruz.
if ( !is_user_logged_in() ) {
return ''; // Giriş yapmamış kullanıcılar için fiyat bilgisini boş döndür.
}
// Giriş yapmış kullanıcılar için fiyat olduğu gibi döndürülür.
return $price;
}
// WooCommerce'de ürün fiyatı HTML çıktısını kontrol eden filtreye müdahale ediyoruz.
add_filter( 'woocommerce_get_price_html', 'hide_price_for_guests' );
Bu sayede yalnızca giriş yapmış kullanıcılar fiyat bilgisine erişebilir. Özellikle toptan satış yapan e-ticaret siteleri için oldukça işlevsel bir yöntemdir.
6. Belirli Kategorilerde WooCommerce Fiyat Gizleme
Belirli ürün kategorilerinde fiyat bilgisini gizlemek istiyorsanız, şu kodu kullanabilirsiniz:
<?php
// Belirli kategorilerdeki ürünlerin fiyatlarını gizleyen bir fonksiyon tanımlıyoruz.
function hide_price_for_categories( $price, $product ) {
// Fiyatların gizleneceği kategorilerin sluglarını burada tanımlayın.
$restricted_categories = array( 'aksesuar', 'elektronik' ); // Kategori sluglarını düzenleyebilirsiniz.
// Ürün, belirtilen kategorilerden birine ait mi kontrol ediyoruz.
if ( has_term( $restricted_categories, 'product_cat', $product->get_id() ) ) {
return ''; // Kategori eşleşiyorsa fiyatı gizle (boş döndür).
}
// Kategori eşleşmiyorsa fiyat olduğu gibi döndürülür.
return $price;
}
// WooCommerce ürün fiyatlarını kontrol eden filtreyi kullanarak bu fonksiyonu bağlıyoruz.
// Bu filtreye $price (fiyat) ve $product (ürün nesnesi) parametreleri iletilir.
add_filter( 'woocommerce_get_price_html', 'hide_price_for_categories', 10, 2 );
Bu yöntemle, yalnızca belirttiğiniz kategorilere ait ürünlerin fiyatlarını gizleyebilirsiniz.
7. Belirli Ürünler İçin WooCommerce Fiyat Gizleme
Bazı özel ürünlerde fiyat bilgisini göstermek istemiyorsanız, aşağıdaki kodu kullanabilirsiniz:
<?php
// Belirli ürünlerin fiyatlarını gizleyen bir fonksiyon tanımlıyoruz.
function hide_price_for_specific_products( $price, $product ) {
// Fiyatını gizlemek istediğiniz ürünlerin ID'lerini burada belirtebilirsiniz.
$restricted_products = array( 123, 456 ); // Ürün ID'lerini buraya ekleyin.
// Eğer ürün ID'si belirtilen ürün ID'leri arasında ise fiyatı gizle.
if ( in_array( $product->get_id(), $restricted_products ) ) {
return ''; // Boş döndürerek fiyatı gizler.
}
// Eğer ürün ID'si kısıtlı ürünler arasında değilse, fiyatı olduğu gibi döndür.
return $price;
}
// WooCommerce'in ürün fiyatlarını kontrol eden filtresine bu fonksiyonu ekliyoruz.
// Filtre, $price (fiyat) ve $product (ürün nesnesi) parametrelerini alır.
add_filter( 'woocommerce_get_price_html', 'hide_price_for_specific_products', 10, 2 );
Ürün ID’sini, düzenlemek istediğiniz ürünlerin ID’leriyle değiştirerek fiyat gizlemeyi kolayca özelleştirebilirsiniz.
WooCommerce Kodları Nereden Eklenir?
Tüm bu kodları, WordPress tema klasörünüzde yer alan functions.php dosyasına eklemeniz yeterlidir. Ancak bu işlemi yaparken dikkatli olun; bir hata tüm sitenizi etkileyebilir. Eğer bu konuda yardıma ihtiyacınız varsa, profesyonel destek almak için 0 (539) 219 79 78 numaralı WhatsApp hattından bana ulaşabilirsiniz.
Boran Karadeniz’den Tavsiyeler
- Yedek Almayı Unutmayın: Functions.php dosyanızı düzenlemeden önce mutlaka bir yedek alın. Olası hatalarda geri dönüş yapmanız kolaylaşır.
- Kodları Test Edin: Eklediğiniz kodların doğru çalıştığından emin olmak için sitenizi farklı cihaz ve kullanıcı rolleriyle test edin.
- Özel Çözümler: Fiyat gizleme ihtiyacınız daha karmaşıksa (örneğin, dinamik fiyat gizleme gibi), bir WordPress uzmanından destek alın.
- Alternatif Eklentiler: Kod yazmak istemiyorsanız, fiyat gizleme işlemleri için WooCommerce Role Based Pricing gibi eklentileri değerlendirebilirsiniz.
- SEO’ya Dikkat: Fiyat gizlerken ürün sayfalarınızın SEO sıralamalarını etkileyebilecek değişikliklerden kaçının. Doğru yapılandırma ile SEO kaybını önleyebilirsiniz.
Herhangi bir sorunuz varsa veya bu işlemleri uygulamak için desteğe ihtiyacınız varsa, [email protected] adresine e-posta gönderebilir ya da beni arayabilirsiniz. 😊
Hemen İletişime Geçin
📞 Telefon: 0539 219 79 78
💬 WhatsApp: Buradan mesaj gönderin
📧 E-posta: [email protected]
🌐 Fiyat teklifi almak için: Fiyat Teklifi Al
WordPress ile tasarlanmış muhteşem bir web sitesine ne dersin?
Bir uzman desteği alBoran Karadeniz
Boran Karadeniz, 8+ yıllık deneyimiyle WordPress, WooCommerce, SEO, sosyal medya yönetimi ve dijital reklam hizmetlerinde uzman bir profesyoneldir.
Yorum Yaz