Как сделать ссылку на случайный пост | Random Redirect

На сайте создателя WordPress давно уже размещен плагин Random Redirect. Этот плагин делает одну забавную штуку – если вы кликните по определенной ссылке, то попадете на страницу случайного поста.

Иногда такой подход увеличивает количество посещений, да и может быть просто полезен, ведь таким образом можно заинтересовать читателя не только свежими статьями, но и опубликованными давно. Ссылка, на которую нужно кликнуть, должна иметь вид:

http://вашсайт.ru/?random

Так же можно с помощью плагина Random Redirect сделать и вывод случайного поста из определенной категории:

http://вашсайт.ru/?random&random_cat_id=XXX

вашсайт.ru – это домен вашего сайта
XXX – это ID категории

[dl url=”http://ma.tt/2008/08/random-redirect-plugin-2/” title=”Random Redirect”]
Автор tiaurus 2182 Articles
Являюсь создателем n-wp.ru — блога о WordPress для новичков. Мне интересно многое, поэтому еще я сделал 123-box.ru — блог о программах для Windows, и tiaurus.info — блог о красоте.

2 Комментарии

  1. Если кто-то, подобно мне, маниакально против лишних плагинов, можно сделать иначе:
    В functions.php вносим код:

    // // // Вывод случайного поста (из категории ***) // // //
    add_action('init','random_add_rewrite');
    function random_add_rewrite() {
           global $wp;
           $wp->add_query_var('random');
           add_rewrite_rule('random/?$', 'index.php?random=1', 'top');
    }
    add_action('template_redirect','random_template');
    function random_template() {
           if (get_query_var('random') == 1) {
                   $posts = get_posts('post_type=post&orderby=rand&cat=***&numberposts=1');
                   foreach($posts as $post) {
                           $link = get_permalink($post);
                   }
                   wp_redirect($link,307);
                   exit;
           }
    }
    ?>

    Ссылка обычная: ваш_домен.ru/random/ Знаю, что с каким-то SEO-плагином это не срабатывает, но не помню уже, с каким…

Оставить комментарий

Ваш электронный адрес не будет опубликован.


*