Bir Kategoriden Rastgele Yazı Getirme [WordPress]

Yükleniyor

<br/><a href="http://oi49.tinypic.com/fvbjad.jpg" target="_blank">View Raw Image</a>

Merhaba sayın 1fincan takipçileri, webmasterlar, Romalılar.

Bu yazımda sizlere tek link ile bir kategoriden rastgele yazı nasıl getirilir, hangi kod kullanılır, nereye ne yapılır anlatacağım. Sıkı durun.

Öncelikle bir kategoriden rastgele yazı örneği için tıklayınız (yeni sekmede açılır). Ben kendi blogum olan 1fincan.com’da “flash oyun” kategorisi için böyle bir şey uyguladım. Siz farklı şeyler yapabilir, küçük sürprizler katabilirsiniz. Linki birkaç kere deneyerek test edebilirsiniz.

Eğer aradığınız şey “tüm kategorilerden” rastgele yazı getirmekse, 1fincan’da o kod da mevcut. Buyrunuz.

Gelelim kategoriye göre rastgele yazı kodumuza. Aşağıdaki kodu functions.php’nizin ilk satırında yer alan <?php den sonra, bir iki satır boşluk bıraktıktan sonra yapıştırın.

 function fincan() {
 global $wpdb;
 $_GET['random_cat_id'] = XXX;
 if ( isset( $_GET['random_cat_id'] ) ) {
 $random_cat_id = (int) $_GET['random_cat_id'];
 $query = "SELECT DISTINCT ID FROM $wpdb->posts AS p INNER JOIN $wpdb->term_relationships AS tr ON (p.ID = tr.object_id AND tr.term_taxonomy_id = $random_cat_id) INNER JOIN $wpdb->term_taxonomy AS tt ON(tr.term_taxonomy_id != tt.term_taxonomy_id AND taxonomy = 'category') WHERE post_type = 'post' AND post_password = '' AND post_status = 'publish' ORDER BY RAND() LIMIT 1";
 }

if ( isset( $_GET['random_post_type'] ) ) {
 $post_type = preg_replace( '|[^a-z]|i', '', $_GET['random_post_type'] );
 $query = "SELECT ID FROM $wpdb->posts WHERE post_type = '$post_type' AND post_password = '' AND post_status = 'publish' ORDER BY RAND() LIMIT 1";
 }

$random_id = $wpdb->get_var( $query );
 wp_redirect( get_permalink( $random_id ) );
 exit;
 }

if ( isset( $_GET['Linkiniz'] ) )
 add_action( 'template_redirect', 'fincan' );

XXX ile gösterilen yere kategori id’niz +1’i koyun

Örneğin kategori ID’niz 25 ise 26 yazın. Kategori ID’mi nerden, nasıl bulabilirim diyenler için: WordPress Kategori ID Öğrenme

Linkiniz yazan yeri ise silip, nasıl bir url ile rastgele yazınıza ulaşacağınızı belirleyin. Örneğin Linkiniz kısmını değiştirmezseniz http://siteniz.com/?linkiniz şeklinde rastgele konunuza ulaşılabilir.

Kodla ilgili bir sorununuz olursa lütfen yorum göndererek iletişime geçin.

Katkılarından dolayı Ertuğrul Sağlam hocamıza teşekkürler.