WordPress Rastgele Yazı Göstermek

Merhaba Arkadaşlar, dünyanın en iyi () içerik yönetim sistemi olan ve yüz binlerce web sitenin kullandığı ‘te sizlere nasıl rastgele yazılar gösterilir onu anlatacağım. Bu işlemi yaparken eklenti kullanmayacağız. Çünkü 1 eklenti derken her ne kadar az da olsa sonuçta web sitemizi yavaşlatıyor ve google tarafından bu durum hiç de hoş görülmüyor.
Örnek olarak kendi sitemde kini gösterebilirim.
Rastgele-300x110
Şimdi işlemlerimize başlayalım ister fileziladan isterseniz de Admin Panelini – Görünüm – Düzenleyiciyi kullanarak da bu işlemleri yapabilirsiniz.
Öncelikle Function dosyamızı açıp
/*-----------------------------------------------------------------------------------*/
# Daha Fazlası İçin Rilura.Com - Kod Başlangıcı

/*-----------------------------------------------------------------------------------*/
function rastgele() {
global $wpdb;
$query = "SELECT ID FROM $wpdb->posts WHERE post_type = 'post' AND post_password = '' AND post_status = 'publish' ORDER BY RAND() LIMIT 1";
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['rastgele'] ) ) {
add_action( 'template_redirect', 'rastgele' );
}

Kodlarımızı ekledik ama bunu ziyaretçilerimiz göremeyecek çünkü halen web sitemizde hiç bir yerde göstermedik. Hemen gösterelim.
Admin Panelinde görünüm sekmesinden menüler bağlantımıza tıklayalım oradan bağlantılar sekmesinden url kısmına
www.siteniz.com/?rastgele
yazdıktan sonra menüyü kaydedebilirsiniz. Bir sonraki makalemiz de görüşmek üzere.
Bir önceki yazımız olan
Php Veritabanına Kayıt Ekleme

başlıklı makalemizde Kayıt Ekleme, Php Veritabanına Kayıt Ekleme ve Veritabanına Kayıt Ekleme hakkında bilgiler verilmektedir.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir