• 25-03-2020, 11:49:51
    #1
    İçeriğin bulunduğu kategorinin ismini çekmek için aşağıdaki kodu kullanıyorum ancak içerik 1 kategoride olduğunda da sonuna virgül geliyor, kötü görünmesine neden oluyor. Nasıl 1'den fazla kategori varsa aralarında virgül eklemesini sağlayabilirim?

    ilgili kod:
    <?php foreach((get_the_category()) as $category){echo $category->name.", ";} ?>
  • 25-03-2020, 11:55:48
    #2
    kategori sayısını çekip if koşulu ile bahsettiğiniz işlemi yapabilirsiniz
  • 25-03-2020, 11:56:03
    #3
    <?php
    $i = 1;
    foreach((get_the_category()) as $category){
        if($i == 1) {
            echo $category->name;
        } else {
            echo ", ".$category->name;
        }
        $i++;
    } ?>
  • 25-03-2020, 11:58:10
    #4
    En sağlıklısı substr metodu olacaktır : https://codeshare.io/aJVWVn



    metehandemir adlı üyeden alıntı: mesajı görüntüle
    <?php
    $i = 1;
    foreach((get_the_category()) as $category){
        if($i == 1) {
            echo $category->name;
        } else {
            echo ", ".$category->name;
        }
        $i++;
    } ?>
    Hocam ilk olarak foreach döngüsü içerisinde if else kullanmak yerine substr metodu'da iş görücektir.
    2.si if ve else 'in altına parantez kullanmanıza gerek yok (1 satır için), Parantez; 1 satırdan fazla kod blokları için kullanılır aksi halde kullanıldığında gereksiz kod kullanımı olucaktır.
  • 25-03-2020, 12:14:51
    #5
    mixerdating adlı üyeden alıntı: mesajı görüntüle
    Ya milyonlarca data olursa ?
    Milyonlarca datayı wordpress'de işlemek ve yayınlamak ne kadar akıl karı orasını siz düşünün?
  • 25-03-2020, 13:16:34
    #6
    Bu kodun yazılımın düzgün hali @mixerdating; yazdığı gibidir.

    Tartışacağınız birşey yok burada.

    @SkyGhostAir; çözümü her iki şekillede olur fakat benim nacizane tavsiyem @mixerdating; yazdığı gibi kullanmandır
  • 25-03-2020, 13:35:21
    #7
    Herkes kod yazabilir fakat herkes iyi kod yazamaz.