Wordpress Rastgele Yazı Göstermek

Bazı wordpress bloglarda görmüştürsünüz.Menüde ya da herhangi başka bir yerde rastgele yazı linki bulunur.Bu linke tıkladığınızda blogda bulunan herhangi bir yazı açılır.Bugün size wordpress bloglarınıza bu özelliği eklemeyi anlatıyorum.Sitenizde rastgele yazı linkini göstermenin birçok yolu var.Bunu yapan eklentiler var.Ama wordpress sitelerde gereğinden fazla eklenti kullanmak zararlıdır.Bu yüzden eklenti kullanmadan sitenize ekleme yöntemini göstereceğim.Blogumun üst menüsüne bakarsanız benim de kullandığımı görebilirsiniz.

Aşağıdaki kodu temanızın “ functions.php ” uygun bir yere yapıştırınız.

[php]
function yazi_yonlendir() {
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’, ‘yazi_yonlendir’ );
[/php]

Yukarıdaki kodu ekledikten sonra aşağıdaki linki sitenizde herhangi bir yere ekleyin.İsterseniz bir resme aşağıdaki linki verebilirsiniz.

[php]http://www.siteadiniz.com/?rastgele[/php]

Cem Karakurt:

Yorumları gör (8)