Aslında bu koda çok başka yerde rastladım. Soranlar oluyordu yazayım dedim. Sizinle aşağıda paylaşacağım kod ile sitedeki tüm kullanıcıları -ya da yazar da diyebiliriz- listeleyebilirsiniz. Gravatar’ın yardımıyla bu kullanıcıların avatarlarını da gösterebilirsiniz. Özelleştirebileceğiniz bir fonksiyon olduğunu düşünüyorum.
Kullanıcıları Listelemek
Aşağıdaki kodu temanızda oluşturacağınız herhangi bir sayfa şablonuna ya da istediğiniz herhangi bir alanda kullanabilirsiniz. Yapmanız gereken kodun listeleme alanını kendi temanıza göre düzenlemek. Gerisini koda bırakın ve arkanıza yaslanın…
<?php $yoneticileri_goster = false; $siralama = 'post_count'; // 'nicename', 'email', 'url', 'registered', 'display_name', ya da 'post_count' $sirala = 'DESC'; $kullanici_turu = ''; // 'subscriber', 'contributor', 'editor', 'author' - tüm kullanıcıları seçmek için boş bırakın $avatar_boyutu = 161; // Avatar boyutu, kendi temaıza göre değişiklik yapın $bos_olani_goster = false; // Yazıya sahip olmayan yazarları gizle if(!empty($yoneticileri_goster)) { $kullanicilar = get_users('orderby='.$siralama.'&role='.$kullanici_turu); } else { $yoneticiler = get_users('role=administrator'); $exclude = array(); foreach($yoneticiler as $ad) { $exclude[] = $ad->ID; } $exclude = implode(',', $exclude); $kullanicilar = get_users('exclude='.$exclude.'&orderby='.$siralama.'&order='.$order.'&role='.$kullanici_turu); } $yazarlar = array(); foreach ($kullanicilar as $kullanici) { $kul = get_userdata($kullanici->ID); if(!empty($bos_olani_goster)) { $sayac = count_user_posts($kul->ID); if($sayac < 1) continue; } $yazarlar[] = (array) $kul; } //Yazar listeleme alanı echo '<ul id="grid-contributors">'; foreach($yazarlar as $yazar) { $gorunen_ad = $yazar['data']->display_name; $avatar = get_avatar($yazar['ID'], $avatar_boyutu); $yazar_profil_url = get_author_posts_url($yazar['ID']); echo '<li class="single-item">'; echo '<div class="author-gravatar"><a href="', $yazar_profil_url, '">', $avatar , '</a></div>'; echo '<div class="author-name"><a href="', $yazar_profil_url, '" class="contributor-link">', $gorunen_ad, '</a></div>'; echo '</li>'; } echo '</ul>'; ?>
Yukarıdaki alanda bazı değişkenleri düzenlemek isteyebilirsiniz. Açıklamalarını aşağıya yazıyorum.
$yoneticileri_goster
Kullanıcı listesinde kullanıcıları göstermek isterseniz true
, istemezseniz false
olarak değer atayabilirsiniz.
$siralama
Neye göre sıralanacağını belirlediğiniz alandır. ‘nicename’, ’email’, ‘url’, ‘registered’, ‘display_name’, ya da ‘post_count’ değerlerinden birini alır.
$sirala
ASC veya DESC olarak değer atanabilir, artan veya azalan sıralama yapar
$kullanici_turu
‘subscriber’, ‘contributor’, ‘editor’, ‘author’ olarak belirtebilirsiniz. Kullanıcıların tümü için boş bırakın.
$avatar_boyutu
Avatar boyutu, kendi temaıza göre değişiklik yapabilirsiniz. Sayısal bir değer olmak zorundadır.
$bos_olani_goster
Yazıya sahip olmayan yazarları gizle. Gizlemek isterseniz true
, gösterilsin derseniz true
olmalıdır.
Herhangi bir sorunuz olursa lütfen yorum bırakmaktan çekinmeyin.
Selametle