içinde mevcut gönderi sayımını al Döngü içinde bulunduğumda, geçerli gönderi sayısını almak istiyorum. Örneğin, her 3 yayından sonra bir reklam eklemek istiyorum.WordPress Döngü: Döngü
Yani, döngü sayısının değerini nasıl alabilirim?
içinde mevcut gönderi sayımını al Döngü içinde bulunduğumda, geçerli gönderi sayısını almak istiyorum. Örneğin, her 3 yayından sonra bir reklam eklemek istiyorum.WordPress Döngü: Döngü
Yani, döngü sayısının değerini nasıl alabilirim?
Geçerli posta iterasyonunu almak için WP_Query
nesne örneğinin current_post
nesnesini kullanabilirsiniz; Bir fonksiyon içerisinde bu kullanıyorsanız
while (have_posts()) : the_post();
// your normal post code
if (($wp_query->current_post + 1) % 3 === 0) {
// your ad code here
}
endwhile;
Not, sen $wp_query
globalize gerekir.
Neden bir değişkeni artırmıyorsunuz, sonra gerektiğinde reklamlarınızı görüntülüyorsunuz?
while(LOOP)
echo $i%3==0 ? $ad : '';
$i++
emin değil neden, ama önerilen yöntemler benim için yürümedi, ben başvurmak zorunda bana sorarsanız globaller ile oynamaktan daha
$loop_counter = 1;
while($query->have_posts())
{
//Do your thing $query->the_post(); etc
$loop_counter++;
}
Daha güvenli aşağıdaki.
Bu yöntemi denedim. Reklam her 3 yayından önce ve sonra ekleniyor! Reklamı yalnızca 3 yayından sonra eklemek için nasıl alabilirim? –
@KartikRao Gelecekte referans olması için, bu cevap hiç bu kadar az kusurlu. Dizinler 0'dan başlayacağından, ilk koşullu koşul çalıştırıldığında (while döngüsünün ilk yinelemesi), aslında true olarak dönecektir çünkü 0 modülü herhangi bir gerçek sayı her zaman 0'dır. Reklam kodu ilk önce yanlış bir şekilde eklenmiştir. posta, dördüncü gönderi, yedinci posta - vb. Güncellenen kod şunları okumalıdır: '($ wp_query-> current_post + 1)% 3'. –
@AdamMcArthur dördüncü ve yedinci mesajlardan önce reklam kodunu girerek * * doğru * yanıtı verildiğinde, her 3 mesajdan sonra * eklenmesi gerekir *. İlk gönderiden önce bir reklamı yerleştirmenin spesifikasyonlarla eşleşmediğinden haklısınız, ancak önerilen düzeltmeniz - istediğiniz gibi 3./5./9. yayınlar yerine 2./5./8. yayınlardan sonra reklam yerleştirecek olan - ya. –