WordPress Türkiye Forumları

WordPress Türkiye Forumları » Temalar

Yazar listesine nasıl sınırlama getiririm?

(13 mesaj(lar))
  • 1 yıl önce baturica tarafından başlatıldı
  • baturica tarafından son cevap
  • Bu konu Çözülmüş
  1. Merhaba arkadaşlar; Kullandığım temada çok güzel bir şekilde yazarlar listeleniyor. Yazarın ismi - profili gibi istediğiniz özellikler mevcut.
    Lakin benim şöyle bir sorunum var
    Çok fazla üye/yazar olduğu için bu liste uzayıp gidiyor. Benim istediğim ise burada sadece son olarak gönderilmiş 10 yazının sahiplerini burada listelesin.
    Kod şu şekilde;



    <p class=\\"title\\"><?php bloginfo('name'); ?> Authors

    <ul class=\\"linkage\\">

    <?php
    $order = 'user_nicename';
    $user_ids = $wpdb->get_col(\\"SELECT ID FROM $wpdb->users ORDER BY $order\\"); // query users
    foreach($user_ids as $user_id) : // start authors' profile \\"loop\\"
    $user = get_userdata($user_id);
    ?>

  2. <?php echo '' . 'user_login . '\\">' . $user->user_nicename . ' ' . $user->last_name . '' . $user->description; ?>
  3. <?php
    endforeach; // end of authors' profile 'loop'
    ?>

Ayrıcabu forumda bir çok arkadaş böyle bir özelliği arayorlardı. Bu kodlar onların işin çözebilir belki.

1 yıl önce #
  • baturica
    Üye

    $user_ids = $wpdb->get_col(\\\"SELECT ID FROM $wpdb->users ORDER BY $order\\\"); // query satırında bir düzenleme yapmam gerektiğini buldum biryerlerde ama ne şekilde bir düzenleme yapacağımı bilemiyiorum.

    1 yıl önce #
  • baturica
    Üye

    arkadaşlar bu konuya bir çözüm yoksa bu kodları sitemden kaldıracağım.

    1 yıl önce #
  • eylultoprak
    Editör

    ben bilmiyorum ilgilenen yada bilen bir arkadaş yok galiba.. sen kararını ver istersen :)

    1 yıl önce #
  • baturica
    Üye

    Arkadaşlar php bilen kimse yok mu? şu orderby'da bir değişiklik yapmak gerekiyor galiba. ama bir tüelü bulmadım .wordpressin bazı eklnetilerinde filan varya hani son 5 yazıyı göster gibi. burada yapılmasını istediğim yazarların tümünün listesi değide sadece beş tanesi yada olabiliyorsa yazı gönderen son 5 yazar gibi.

    1 yıl önce #
  • canarkadas
    Editör

    Aşağıda kodu benzer yazılar eklentisinden aldım, bu kod sayesinde en fazla 5 benzer yazı sıralanıyor, siz bu kodu kendi kodlarınıza uyarlayabilirseniz işe yarayabilir, benimde php bilgim yok sadece yardım etmeye çalışıyorum.

    Kodları yazdığımda hatalı görüntüleniyordu, buradan indirebilirsiniz.

    Bunlarda kullanabileceğiniz diğer seçeneklerin kodlarıymış.


    $limit - Gösterilecek benzer yazı sayısı. (Varsayılan: 5)
    $len - İstenilen parça uzunluğu (kelime sayısı). (Varsayılan: 10)
    $before/after_title - Başlık bölümünden önce/sonra eklenecek olan metin.
    $before/after_post - Yazıdan bir parça bölümünden önce/sonra eklenecek metin,
    eğer görüntülenecekse.
    $show_pass_post - Parola korumalı yazıları göster/gösterme. (Varsayılan: Hayır)
    $show_excerpt - Parçayı göster/gizle. (Varsayılan: Hayır)

    1 yıl önce #
  • baturica
    Üye

    Teşekkür ederim kodlara baktım. Lakin Bu kodlar işimi görmedi. Araştırmaların sonucu ulaştığım nokta şu :

    $user_ids = $wpdb->get_col(\\\"SELECT ID FROM $wpdb->users ORDER BY $order\\\");

    satırında birşey yapmam gerekiyor. sizin verdiğiniz bilgiler arasında $limit bu işi çözebilir mi acaba. Çözecekse bu kod dizininde nereye yerleştirmem gerekir.

    1 yıl önce #
  • Xenuan
    Üye

    Öncelikle sendeki o kodlar sitendeki üyeleri listeler wordpress codex sayfasında vardı bunun ornegi bende bunu kendi siteme uyelerimi gosterirken avatarları ile birlikte gösteriyorum. Yanlış hatırlamıyorsam sıralama ID, İsim, uyelik tarihine gore yapılıyordu. Son 10 yazı işi bana olmaz gibi geldi. ama istersen ileride loopu sayfalara ayırma kodlarını yollarım [bende yaptıktan sonra :)]

    1 yıl önce #
  • yakupgov
    Üye

    En son yazdığınız kodu aşağıdaki şekilde değiştirirseniz veritabanından çekilen verilerden 10 tanesini almış olursunuz. Limit ifadesi bu işi yapıyor.
    SELECT ID FROM $wpdb->users ORDER BY $order limit 10

    1 yıl önce #
  • baturica
    Üye

    Çok teşekkür ederim. Bu işimi çözdü. tabi istekler bitmiyor. Şimdi bu limiti şöyle geliştrebilirmiyiz. En son kayıt olan yazarlar yada random 10 yazar ya da en güzeli yazı göndermiş son 10 yazar

    1 yıl önce #
  • baturica
    Üye

    random 10 yazarı yaptım arkadaşlar hemde kedi kedime.

    $user_ids = $wpdb->get_col(\\"SELECT ID FROM $wpdb->users ORDER BY RAND() limit 10\\"); // query users
    şimdi sadece son 10 yazıyı gönderen yazar mevzusu kaldı
    Onuda çözersem hemen bildireceğim. ama bilen varsa daha iyi olur tabi ki :)

    1 yıl önce #
  • yakupgov
    Üye

    Son 10 yazının yazarlarının id'sini veren sorgu. Sorguda dikkat edersen id'ler posts tablosundan alınıyor. Post tablosu yazıların kaydedildiği tablo olup, post_author yazının sahibinin ID'sini tutar.

    $user_ids = $wpdb->get_col(\\\"SELECT post_author FROM $wpdb->posts ORDER BY post_date_gmt limit 10\\\"); // query users

    1 yıl önce #
  • baturica
    Üye

    Son kodlar çalıştı ama son yazı gönderenleri değilde başka bir şekilde listeledi. ama neye göre listeledi bilmiyorum. Ama artık sorun çözüldü varsayıyorum. Ve konuyu çözüldü olarak işaretliyorum. Yine de fikri olanlar cevap yazsınlar konuyu takip etmey devam ediyorum. Katkıta bulunana herkese teşekkürler.

    1 yıl önce #

  • Bu konu için RSS beslemesi

    Cevapla

    Mesaj göndermek için giriş yapmalısınız.