Bu yazıda
WooCommerce Stokta Olmayan Ürünler Nasıl Gizlenir veya Sonda Gösterilir?
WooCommerce’te stokta olmayan ürünler nasıl gizlenir? Ürünleri tamamen katalogdan kaldırmak için WooCommerce > Ayarlar > Ürünler > Envanter bölümündeki stokta olmayan ürünleri gizleme seçeneğini etkinleştirebilirsiniz. Ürünleri silmeden göstermeye devam etmek fakat mağaza sıralamasının sonuna taşımak için ise güvenli bir kod parçacığı veya bu işi yapan bir WooCommerce eklentisi kullanmanız gerekir.
Stokta olmayan ürünleri gizlemek ile sıralamanın sonuna taşımak aynı işlem değildir. Gizleme seçeneği ürünü mağaza ve kategori listelerinden kaldırırken sona taşıma yöntemi ürün sayfasını ve ürün kartını erişilebilir tutar, ancak satın alınabilir ürünlere öncelik verir.
Dilerseniz konuyu işlediğimiz videoyu YouTube kanalımızdan izleyebilir aklınıza takılan her türlü soruya cevap bulabilmek için yorum yapabilirsiniz. Sizin de stokta olmayan ürünlerle başınız dertteyse gelin bu ürünleri nasıl saklayabileceğimizden bahsedelim.
Stokta Olmayan Ürünler Nasıl Gizlenir?
WooCommerce çekirdeği, stokta olmayan ürünleri katalogdan gizlemek için yerleşik bir ayar sunar. Bunun için şu adımları uygulayın:
- WordPress yönetim paneline giriş yapın.
- WooCommerce > Ayarlar bölümünü açın.
- Ürünler sekmesine geçin.
- Envanter alt sekmesini açın.
- Stokta olmayan ürünlerin görünürlüğü seçeneğini etkinleştirin.
- Değişiklikleri kaydedin.
WooCommerce’in resmî dokümantasyonuna göre bu seçenek, stok miktarı yönetimi kapalı olsa bile kullanılabilir. Ayar etkinleştirildiğinde stokta yok durumundaki ürünler müşteri tarafındaki katalog listelerinden çıkarılır. (WooCommerce)
Ürünü gizlemek ürün sayfasını siler mi?
Hayır. Katalog görünürlüğünü kapatmak, ürün kaydını veya ürün URL’sini otomatik olarak silmek anlamına gelmez. Ürün bağlantısı daha önce paylaşılmışsa, tema veya başka bir eklenti farklı davranış uygulamadığı sürece tekil ürün sayfasına doğrudan erişim devam edebilir.
Bu nedenle ürünün geçici mi yoksa kalıcı mı tükendiği ayrıca değerlendirilmelidir.
Eşdeğer ürün yoksa kullanıcıyı ilgisiz kategoriye veya ana sayfaya yönlendirmeyin.
Geçici stok tükenmesinde ürün sayfasını açık tutun.
Tahmini stok tarihini yalnızca güvenilir bir tedarik tarihi varsa gösterin.
Benzer veya alternatif ürünlere bağlantı verin.
Yeniden stok bildirimi seçeneği sunun.
Kalıcı olarak kaldırılmış üründe eşdeğer bir ürün varsa alakalı 301 yönlendirmesi değerlendirin.
Woocommerce > Ayarlar

WooCommerce Stok Ayarları Ne İşe Yarar?
WooCommerce > Ayarlar > Ürünler > Envanter ekranında stok takibi, eşikler, bildirimler ve katalog görünürlüğü yönetilir. Güncel resmî dokümantasyonda bu ekran stok yönetiminin temel kontrol merkezi olarak tanımlanmaktadır. (WooCommerce)
Stok yönetimini etkinleştir
Bu seçenek etkinleştirildiğinde ürünler için sayısal stok miktarı tutulabilir. Satış yapıldığında stok azaltılır; sipariş iade edildiğinde veya iptal koşulları oluştuğunda stok tekrar artırılabilir.
Seçenek kapalı olduğunda sayısal stok miktarı otomatik takip edilmez. Buna rağmen ürün durumu manuel olarak şu değerlerden biriyle yönetilebilir:
- Stokta
- Stokta yok
- Geri siparişte
Stokta olmayan ürünleri katalogdan gizleme ayarı için sayısal stok takibinin açık olması zorunlu değildir. (WooCommerce)
Stoğu tut
Stoğu tut ayarı, bekleyen ödeme durumundaki siparişlerde ürünün kaç dakika ayrılmış sayılacağını belirler.
Örneğin bu değer 30 dakika olarak ayarlanırsa, ödemesi tamamlanmamış uygun siparişlerde stok 30 dakika boyunca ayrılabilir. Süre dolduğunda sipariş iptal edilerek stok yeniden kullanılabilir hâle getirilebilir.
Bu ayar, beklemede durumundaki siparişlere uygulanmaz. Alan boş bırakılırsa zaman sınırı devre dışı bırakılır. (WooCommerce)
Düşük stok eşiği
Düşük stok eşiği, ürün miktarı belirlenen seviyeye düştüğünde bildirim gönderilmesini sağlar.
Örneğin:
- Mevcut stok: 100
- Düşük stok eşiği: 10
- Bildirim zamanı: Stok 10 adede ulaştığında
Genel eşik mağaza ayarlarından tanımlanabilir. Ürün veya varyasyon düzeyindeki özel stok ayarları kullanılıyorsa ilgili ürünlerin ayrıca kontrol edilmesi gerekir.
Stok tükenme eşiği
Stok tükenme eşiği, ürünün hangi miktarda stokta yok kabul edileceğini belirler. Çoğu mağazada bu değer sıfırdır ancak rezervasyon, üretim toleransı veya güvenlik stoğu kullanan işletmeler farklı bir eşik belirleyebilir.
Stok gösterim biçimi
WooCommerce, ürün sayfasında stok miktarının nasıl gösterileceğini seçmenize olanak tanır:
- Her zaman stok miktarını göster
- Yalnızca stok azaldığında miktarı göster
- Stok miktarını hiçbir zaman gösterme
Bu ayar, müşterinin satın alma kararını etkileyebileceği için ürün türüne göre seçilmelidir. Sınırlı üretim yapan mağazalarda miktar göstermek aciliyet oluşturabilir; sürekli tedarik edilen ürünlerde yalnızca stokta bilgisini göstermek daha temiz bir deneyim sağlayabilir.
Ürünler > Stok

Stokta Olmayan Ürünler Nasıl Sonda Gösterilir?
WooCommerce’in temel ayarları ürünleri gizleyebilir ancak çekirdek arayüz, stokta olmayan tüm ürünleri mevcut fiyat, tarih veya popülerlik sıralamasını koruyarak otomatik biçimde sona taşıyan genel bir ayar sunmaz.
Bu ihtiyaç için iki yöntem kullanılabilir:
- Kod kullanmadan stok durumuna göre sıralama sağlayan bir WooCommerce eklentisi kullanmak.
- Test edilmiş bir PHP kod parçacığını Code Snippets veya özel işlev eklentisine eklemek.
WooCommerce’in resmî pazaryerinde stokta olmayan ürünleri gizleme veya aşağı taşıma amacıyla hazırlanmış çözümler bulunmaktadır. (WooCommerce)
Kodu eklemeden önce yapılması gerekenler
Aşağıdaki işlemleri tamamlamadan canlı siteye PHP kodu eklemeyin:
Kritik satış döneminde doğrudan canlı değişiklik yapmayın.
Site dosyalarının ve veri tabanının güncel yedeğini alın.
Mümkünse kodu önce staging ortamında çalıştırın.
WooCommerce ve tema sürümlerini kaydedin.
Mağaza şablonunun klasik arşiv mi yoksa Product Collection bloğu mu kullandığını belirleyin.
Önbellek eklentisi ve CDN kullanılıyorsa temizleme erişiminizin bulunduğunu doğrulayın.

Güncel PHP kodu
Aşağıdaki kod, stok durumunu birincil sıralama grubu hâline getirir. Ürünler önce şu sırayla gruplanır:
- Stokta
- Geri siparişte
- Stokta yok
Kullanıcının seçtiği fiyat, yenilik, puan veya popülerlik sıralaması her stok grubunun içinde korunur.
/**
* WooCommerce kataloglarında stokta olmayan ürünleri sona taşır.
*
* Sıralama:
* 1. Stokta
* 2. Geri siparişte
* 3. Stokta yok
*
* Mevcut fiyat, tarih, puan veya popülerlik sıralaması
* her stok grubunun içinde korunur.
*/
add_filter(
'posts_clauses',
'site_stokta_olmayan_urunleri_sona_tasi',
2000,
2
);
function site_stokta_olmayan_urunleri_sona_tasi( $clauses, $query ) {
if ( is_admin() ) {
return $clauses;
}
$is_classic_catalog = (
'product_query' === $query->get( 'wc_query' )
);
$is_product_collection = (
(bool) $query->get( 'site_product_collection_stock_sort' )
);
if ( ! $is_classic_catalog && ! $is_product_collection ) {
return $clauses;
}
global $wpdb;
$lookup_table = $wpdb->wc_product_meta_lookup;
if ( false === strpos( $clauses['join'], 'wc_product_meta_lookup' ) ) {
$clauses['join'] .= "
LEFT JOIN {$lookup_table} wc_product_meta_lookup
ON {$wpdb->posts}.ID = wc_product_meta_lookup.product_id
";
}
$stock_orderby = "
CASE wc_product_meta_lookup.stock_status
WHEN 'instock' THEN 0
WHEN 'onbackorder' THEN 1
WHEN 'outofstock' THEN 2
ELSE 3
END ASC
";
if ( ! empty( $clauses['orderby'] ) ) {
$clauses['orderby'] = $stock_orderby . ', ' . $clauses['orderby'];
} else {
$clauses['orderby'] = $stock_orderby;
}
return $clauses;
}
/**
* Product Collection bloklarının ön yüz sorgularını işaretler.
*/
add_filter(
'query_loop_block_query_vars',
'site_product_collection_stok_siralamasini_etkinlestir',
11,
3
);
function site_product_collection_stok_siralamasini_etkinlestir(
$query_vars,
$block,
$page
) {
$is_product_collection = (
$block->context['query']['isProductCollectionBlock'] ?? false
);
if ( $is_product_collection ) {
$query_vars['site_product_collection_stock_sort'] = true;
}
return $query_vars;
}
WooCommerce çekirdeği; fiyat, satış ve puan gibi sıralamalarda wc_product_meta_lookup tablosundan yararlanır. Yukarıdaki yaklaşım da stok durumunu aynı lookup tablosu üzerinden okur ve mevcut ORDER BY ifadesinin önüne stok grubunu ekler. (GitHub)
Kodun eski yöntemden farkı nedir?
Eski yöntem yalnızca _stock_status meta değerini sıralama ölçütü yapıyordu. Bu nedenle ziyaretçi fiyata veya popülerliğe göre sıralama seçtiğinde sonuç geçersiz kılınabiliyordu.
Yeni yöntemde:
- Önce stok durumu dikkate alınır.
- Ardından WooCommerce’in mevcut sıralaması korunur.
- Mağaza ve klasik ürün arşivleri hedeflenir.
- Product Collection bloklarının ön yüz sorguları ayrıca işaretlenir.
- Yönetim paneli ürün listesi değiştirilmez.
- Geri sipariş durumu ayrı bir grup olarak ele alınır.
Product Collection bloğunda neden ek kod gerekiyor?
WooCommerce, güncel mağaza düzenleme yapısında Product Collection bloğunu katalog, kategori, etiket, marka ve ürün arama şablonlarında kullanabilir. (WooCommerce)
Bu blokların sorgusu klasik mağaza arşivinden farklı bir bağlamda oluşturulabildiği için query_loop_block_query_vars filtresi üzerinden işaretlenmiştir. WooCommerce geliştirici tartışmalarında bu filtre, Product Collection ön yüz sorgularını değiştirmek için kullanılan genişletme noktası olarak açıklanmaktadır. (GitHub)
Site Düzenleyici içindeki ön izleme, ön yüzdeki sonuçtan farklı görünebilir. Asıl kontrol yayımlanmış mağaza sayfasında yapılmalıdır.

Kod Nereye Eklenmeli?
Önerilen yöntem: Code Snippets
WooCommerce, özel kodların doğrudan tema dosyasına eklenmesi yerine Code Snippets gibi yönetilebilir bir yöntem kullanılmasını önerir. Bu yaklaşım kodu etkinleştirmeyi, devre dışı bırakmayı ve hata durumunda müdahale etmeyi kolaylaştırır. (The WooCommerce Developer Blog)
Uygulama adımları:
- WordPress yönetim panelinde Eklentiler > Yeni Ekle bölümünü açın.
- Güvenilir bir kod parçacığı yönetim eklentisi kurun.
- Yeni PHP kod parçacığı oluşturun.
- Açıklayıcı bir ad yazın:
- WooCommerce stokta olmayan ürünleri sona taşı
- PHP kodunu ekleyin.
- Yalnızca ön yüzde çalıştırma seçeneği varsa onu tercih edin.
- Kaydedin ve etkinleştirin.
- Önbelleği temizleyin.
- Mağaza sayfasını gizli tarayıcı penceresinde test edin.
Code Snippets ekranına eklenen kodda başlangıç <?php etiketi çoğu zaman kullanılmaz. Kullanılan eklentinin talimatı esas alınmalıdır.
Alternatif yöntem: Alt tema
Kod bir alt temanın functions.php dosyasına da eklenebilir. Alt tema, ana tema güncellemelerinde özelleştirmenin silinmesini önler. WordPress, tasarımdan bağımsız işlevler için yine de eklenti yaklaşımının daha uygun olduğunu belirtir. (WordPress Developer Resources)
Önerilmeyen yöntem: Ana tema düzenleyicisi
Aşağıdaki yöntemlerden kaçının:
- Ana temanın functions.php dosyasını doğrudan düzenlemek
- WooCommerce çekirdek dosyalarına kod eklemek
- Canlı sitede yedeksiz değişiklik yapmak
- Kaynağı ve sürüm uyumluluğu bilinmeyen kodları çalıştırmak
Tema güncellendiğinde ana tema dosyasındaki değişiklikler kaybolabilir. Tek bir PHP söz dizimi hatası da siteyi erişilemez duruma getirebilir. (The WooCommerce Developer Blog)

Değişken Ürünler Nasıl Kontrol Edilmeli?
Değişken ürünlerde ana ürünün stok durumu, varyasyonların stok durumundan etkilenebilir. Örneğin bir tişörtün üç bedeninden biri stokta kaldıysa ana ürün hâlâ stokta gösterilebilir.
Uygulama sonrasında şu senaryoları test edin:
- Tüm varyasyonları stokta olan ürün
- Yalnızca bir varyasyonu stokta olan ürün
- Tüm varyasyonları stokta olmayan ürün
- Bazı varyasyonları geri siparişte olan ürün
- Ana ürün düzeyinde stok yönetilen ürün
- Varyasyon düzeyinde stok yönetilen ürün

Değişken Ürünler Nasıl Kontrol Edilmeli?
Değişken ürünlerde ana ürünün stok durumu, varyasyonların stok durumundan etkilenebilir. Örneğin bir tişörtün üç bedeninden biri stokta kaldıysa ana ürün hâlâ stokta gösterilebilir.
Uygulama sonrasında şu senaryoları test edin:
- Tüm varyasyonları stokta olan ürün
- Yalnızca bir varyasyonu stokta olan ürün
- Tüm varyasyonları stokta olmayan ürün
- Bazı varyasyonları geri siparişte olan ürün
- Ana ürün düzeyinde stok yönetilen ürün
- Varyasyon düzeyinde stok yönetilen ürün
Sık Sorulan Sorular
WooCommerce’te stokta olmayan ürünler nasıl gizlenir?
WooCommerce > Ayarlar > Ürünler > Envanter bölümünü açın ve stokta olmayan ürünlerin görünürlüğü seçeneğini etkinleştirin. Bu işlem stokta yok durumundaki ürünleri mağaza kataloğundan kaldırır. (WooCommerce)
Stokta olmayan ürünü gizlemek ürün sayfasını siler mi?
Hayır. Katalog görünürlüğünü kapatmak ürün kaydını veya URL’sini otomatik olarak silmez. Tekil ürün sayfasının erişimi tema, eklenti ve özel yönlendirme ayarlarına bağlı olarak devam edebilir.
Stok yönetimi kapalıyken stokta olmayan ürünler gizlenebilir mi?
Evet. WooCommerce’in stokta olmayan ürünlerin görünürlüğü ayarı, sayısal stok yönetimi kapalıyken de kullanılabilir. Ürünlerin stok durumu bu durumda manuel olarak belirlenir. (WooCommerce)
Stokta olmayan ürünleri silmeden en sona taşıyabilir miyim?
Evet. Stok durumunu birincil sıralama ölçütü yapan özel kod veya bu işi sağlayan bir WooCommerce eklentisi kullanılabilir. Kodun fiyat, tarih ve popülerlik sıralamasını bozmaması gerekir.
Kod neden doğrudan functions.php dosyasına eklenmemeli?
Ana tema dosyasına eklenen kod tema güncellemesinde silinebilir. PHP hataları sitenin çalışmasını da engelleyebilir. WooCommerce, kod parçacıklarının yönetilebilir bir eklenti üzerinden eklenmesini önerir. (The WooCommerce Developer Blog)
Kod fiyat sıralamasını bozar mı?
Bu içerikteki güncel kod, stok durumunu önce uygular ve mevcut fiyat, tarih, puan veya popülerlik sıralamasını stok gruplarının içinde korur. Eski meta_value yöntemi ise ziyaretçinin seçtiği sıralamayı tamamen değiştirebilir.
Geri siparişteki ürünler stokta olmayan ürün sayılır mı?
WooCommerce geri sipariş durumunu stokta ve stokta yok durumlarından ayrı tutar. Önerilen kod geri siparişteki ürünleri stokta ürünlerden sonra, stokta olmayan ürünlerden önce sıralar.
Product Collection bloğunda kod çalışır mı?
İçerikte verilen kod Product Collection ön yüz sorgularını işaretlemek için ek bir filtre içerir. Bununla birlikte blok yapısı, tema ve WooCommerce sürümüne göre staging ortamında test yapılmalıdır. Site Düzenleyici ön izlemesi ile gerçek ön yüz sonucu farklı olabilir.
Stokta olmayan ürünleri gizlemek SEO açısından zararlı mı?
Her durumda zararlı değildir ancak iç bağlantı ve ürün keşfi azalabilir. Geçici stok tükenmesinde sayfayı açık tutmak, doğru stok şeması kullanmak ve alternatif ürünler göstermek çoğu mağaza için daha yararlı olabilir.
Stokta olmayan ürün sayfasında hangi schema değeri kullanılmalı?
Product veya Offer yapılandırılmış verisindeki availability alanında https://schema.org/OutOfStock kullanılabilir. Görünen sayfa içeriği ile şema verisi aynı stok durumunu göstermelidir. (Schema.org)
Kayseri'den 17+ ülkeye web tasarım, e-ticaret, reklam ve SEO hizmeti veren ekibimiz; sahada test ettiği yöntemleri burada paylaşıyor.





Yorum yazın