En çok ihtiyaç duyduğunuzda güvenilir WordPress eğitimleri.
WordPress Başlangıç Rehberi
WPB Kupası
25 Milyon+
Eklentilerimizi kullanan web siteleri
16+
Yıllık WordPress deneyimi
3000+
Uzmanlardan WordPress eğitimleri

WordPress Temanızda Gönderilerden Sonra Sınırlı Sayıda Etiket Gösterme

Yakın zamanda bize, WordPress temanızda her gönderiden sonra sınırlı sayıda etiket göstermenin nasıl yapılacağı soruldu. Normalde, bir gönderinin ait olduğu etiketlere bağlantı göstermek için `the_tags()` işlevini kullanırsınız. Ancak bu işlev, gösterilecek etiket sayısını sınırlamak için bir parametreye sahip değildir. Yani gönderinizin 12 etiketi varsa ve temanızda yalnızca 5'i için yer varsa, tasarımda pek iyi görünmeyebilir. Birçok kişi yalnızca etiket kullanımını sınırlar veya bunları şablonlara dahil etmez bile. Ancak bu makalede, her gönderiye eklediğiniz etiket sayısını sınırlamadan WordPress temanızda gönderilerden sonra etiket sayısını nasıl sınırlayabileceğinizi göstereceğiz.

Düzenleme: Bu makaleyi yazdıktan sonra, en harika Otto (@otto42) bana daha basit bir yol olduğunu bildirmek için Google+ hesabımda yanıt verdi.

Öncelikle temanızın functions.php dosyasını açmanız ve şu fonksiyonu eklemeniz gerekir:

add_filter('term_links-post_tag','limit_to_five_tags');
function limit_to_five_tags($terms) {
return array_slice($terms,0,5,true);
}

5 sayısını istediğiniz maksimum sayıya değiştirebilirsiniz.

Ardından loop.php, single.php, index.php dosyalarınızı açın veya bu gönderi etiketlerini eklemek istediğiniz herhangi bir yeri (bir gönderi döngüsü içinde olmalı) açın, ardından aşağıdaki kodu yapıştırın:

<?php the_tags() ?>

Bu, benim bulduğumdan kesinlikle çok daha basit, bunu ilgilenenler için bu gönderide bırakacağım.

Eski Karmaşık Yöntem

Tek yapmanız gereken aşağıdaki kodu temanızın dosyasına (gönderi döngüsünün içine) yapıştırmak:

<?php
$posttags = get_the_tags();
$count=0; $sep='';
if ($posttags) {
	echo 'Tags: ';
	foreach($posttags as $tag) {
		$count++;
		echo $sep . '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a>';
$sep = ', ';
		if( $count > 5 ) break; //change the number to adjust the count
	}
}
?>

Yukarıdaki kod, temada 6 etiket gösterecektir. Daha az veya daha fazla etiket göstermek istiyorsanız, $count > 5 satırını istediğiniz sayıyla ayarlamanız yeterlidir. Unutmayın, sayı 5'ten büyük olsa da 6 etiket görürüz. Bunun nedeni, sayımın 0'dan başlamasıdır. Yani yalnızca 4 etiket göstermek istiyorsanız, sayının 3 olması gerekir.

Ayırıcıyı değiştirmek isterseniz, 9. satırı değiştirmeniz gerekir. Mevcut kod virgülle ayıracaktır. Ayrıca div'ler, liste öğeleri veya istediğiniz başka herhangi bir şeyi ekleyerek stilini de özelleştirebilirsiniz.

Açıklama: İçeriğimiz okuyucu desteklidir. Bu, bazı bağlantılarımıza tıklamanız durumunda komisyon kazanabileceğimiz anlamına gelir. WPBeginner'ın nasıl finanse edildiğini, neden önemli olduğunu ve bize nasıl destek olabileceğinizi görün. İşte editöryal sürecimiz.

Nihai WordPress Araç Seti

Araç Kitimize ÜCRETSİZ erişim kazanın - her profesyonelin sahip olması gereken WordPress ile ilgili ürün ve kaynaklardan oluşan bir koleksiyon!

Okuyucu Etkileşimleri

19 CommentsLeave a Reply

  1. Merhaba Sayın Beyefendi,

    Beyefendi, widget'ta rastgele etiketleri nasıl gösterebilirim, bunu nasıl yapabilirim? Bana fonksiyon.php dosyamıza ekleyebileceğim, rastgele etiketleri etiket sayısını sınırlayarak gösteren bir kod verebilir misiniz?

    Teşekkürler

  2. Bu kod parçacığı harika çalışıyor.

    Ancak bir değişikliğe ihtiyacım var: Her blog gönderisi için girdiğim ilk üç etiketi göstermem gerekiyor. Şu anda üç etiket gösteriyor, bu iyi bir adım.

    Ancak, web sitemin amacından ve araştırma verilerinin nasıl sunulduğundan dolayı, özellikle ilk üçünü belirttiğim sırada istiyorum. Örneğin:

    Jennifer Weaver, Dava #4455883, New Mexico

    Etiketleri şu şekilde giriyorum: İsim, dava numarası, konum — ve sonra bazı ek etiketlerim var. Ancak giriş meta verilerinde yalnızca ilk üçünün görüntülenmesini istiyorum.

    Bunu nasıl yapabileceğim konusunda herhangi bir öneriniz var mı? Paylaştığınız kod istediği sırayı seçiyor. Etiketlerim şu şekilde girilirse - bir, iki, üç, dört, beş - kendi düzenini seçiyor, örneğin:

    beş, dört, bir

    Bu konuda sunabileceğiniz her türlü yardım için teşekkürler!!

  3. Merhaba.
    Bu gönderi çok faydalıydı.
    Ancak, ürünlerimden biri hakkında açıklamalar içeren bir iletişim sayfası gibi tekil bir sayfa oluşturmak istiyorum.
    Bu açıklamalarla ilgili favori etiketlerimi sayfama nasıl ekleyebilirim?
    Başka bir deyişle, favori etiketlerimi tekil bir sayfaya nasıl ekleyebilirim?
    Çok teşekkür ederim.

  4. Rastgele etiketleri nasıl gösterebilirim?
    örnek: blog gönderimde 20 etiketim var,
    Ve ben 1 numaralı etiketi, 6 numaralı etiketi, 5 numaralı etiketi göstermek istiyorum,
    ve başka bir gönderide 20 kadar etiket var,
    ve ben 7 numaralı etiketi, 17 numaralı etiketi, 3 numaralı etiketi göstermek istiyorum.
    VB

  5. Merhaba!

    Bu "etiket kullanımını sınırlama" işlemini nasıl yapabilirim? Gönderi/ürün başına yalnızca 3 etiket istiyorum. 4üncüsünü seçersem, sayı siliniyor.

    Teşekkürler!

    • @Hector Öneri için teşekkürler. WordPress gönderileri için maksimum etiket sayısını ayarlama hakkında yeni bir makale yayınladık. Lütfen göz atın, yardımcı olup olmadığını bize bildirin.

      Yönetici

  6. Merhaba, bu fonksiyona if ifadesini nasıl ekleyebilirim?

    Ana Blog Sayfamda (id=99 olan statik sayfa) 5 etiket göstermek istiyorum,
    ve ardından tekil gönderi sayfasında tüm etiketleri göstermek istiyorum.
    Bu işlevi, gönderi kategorisiyle çalışacak şekilde birleştirmek mümkün mü?
    Yukarıdaki gibi, ana sayfada 5 kategori ve 5 etiket, tekil gönderide ise tam liste istiyorum...
    İngilizcem için üzgünüm ;/

    • Bunun için temanızın veya alt temanızın şablon dosyasını düzenlemeniz gerekecek. Etiketler için bu kodu deneyebilirsiniz:

      <?php
      $posttags = get_the_tags();
      $count=0;
      if ($posttags) {
      	$output = '';
      	foreach($posttags as $tag) {
      		$count++;
      		$output .= $tag->name . ' ';
      		if( $count >5 ) break;
      	}
      }
      echo $output;
      ?>
      

      Yönetici

  7. Harika bilgi. Bu siteye google araması aracılığıyla başka bir sorunun cevabını ararken geldim. Etiket sayfalarının, kendi etiket sayfalarının başlığı olarak etiket adlarını görüntülemesini istiyorum. Bunu yapan herhangi bir tema var mı? Şu anda Divi temasını kullanıyorum ve bu özellik mevcut değil.

  8. Etiketleri rastgele nasıl yazdırabilirim?
    Örneğin, 10'da 5'i rastgele gösterilen bir etikete sahip

  9. Sadece bilgi amaçlı... o 4 satırı fonksiyonlar dosyama yapıştırdığımda... tüm sitem karardı. Neredeyse panik atak geçirecektim. Hosting şirketim beni tekrar yayına alabildi.

  10. Etiketler aynı makale gönderi ve etiket sayfalarında olacağından, yinelenen içerik (Panda güncellemesinden sonra) ne olacak?

    Ayrıca, wp forumunda her gönderi için aşırı etiket (10'dan fazla etiket) kullanmanın olumsuz etkisi hakkında okudum.

    • @ata İnsanlar SEO için Etiketleri kullanmamalıdır. Etiketler, sitenizin kullanılabilirliğini artırmak için WordPress'e yerleştirilmiştir. Bir gönderi için 500 etiketiniz olabilir. Önemli olan, etiket sayfalarını noindex yapmanızdır. Böylece arama motorları bu sayfalara gider ve tüm bağlantıları takip eder, ancak bu sayfaları indekslemez. Bu, SEO sorununu çözecektir. Ne yaptıklarını bilmeyen çok sayıda kendi kendine ilan edilmiş SEO uzmanı var. Yukarıda bahsettiğiniz genel ifadeleri, söylediğimiz şeyleri takip ettiğiniz sürece tamamen yanlıştır.

      • Aslında etiketler bazı siteler için trafiği artırır. Bunun kanıtını Google'da bulabilirsiniz. Özellikle bir gönderiye eklenen uzun kuyruklu anahtar kelimeler.

        Arama motorunun, 'noindex' olarak ayarlanmış etiket bağlantılarınızı nasıl bulabileceğini merak ediyorum. Belki gönderi URL'sini bulabilir ama etiket bağlantılarını bulamaz çünkü bu mantıklı değil.

        'Genel ifade' hiç de bir ifade değildi. Yorumumu okuduysanız, bu daha çok bir sorgu/soru niteliğindeydi, bu yüzden bana saldırmanıza gerek yoktu.

        • @ata Öncelikle net olayım. Seni ısırmıyorum. Hayal kırıklığı, bu tür genel iddialarda bulunan uzmanlara yönelikti. WordPress birçok indeksleme yolu sunar. Çoğu kişi arşivlerinin birincil yöntemi olarak kategoriyi kullanır. Yinelenen içeriği önlemek için, indekslenebilir yalnızca BİR birincil arşiv yöntemi kullanabilirsiniz. Yinelenen içeriği önlemek için tüm ikincil yöntemler no-index olmalıdır.

          Arşivleme için ana yöntemimiz olarak Kategorileri kullanıyoruz. İsterseniz etiketleri birincil arşivleme kaynağı olarak kullanabilirsiniz. Bloglarımız için kategorilerin daha iyi performans gösterdiğini görüyoruz. Etiketleri birincil arşivleme kaynağı olarak kullanmak istiyorsanız, kategorileri ve tarih tabanlı arşivleri no-index yapın. Sitede tek yazar sizseniz, yazar arşivlerini de no-index yapmanızda fayda var çünkü bu da yinelenen içerik üretecektir. Bu makalede SEO teorileri hakkında daha fazla tartışmayacağım çünkü bu bir tasarım öğreticisi, SEO değil.

  11. Bunu arıyordum. Paylaştığınız için teşekkürler. @mrahmadawais ile aynı fikirdeyim, ilk yöntem gayet iyi çalışıyor ve aynı zamanda basit.

Cevap Bırakın

Yorum bırakmayı seçtiğiniz için teşekkürler. Lütfen tüm yorumların yorum politikamıza göre denetlendiğini ve e-posta adresinizin YAYINLANMAYACAĞINI unutmayın. Lütfen isim alanında anahtar kelime KULLANMAYIN. Kişisel ve anlamlı bir sohbet edelim.