Всем привет 8)
Сегодня утром я задумался о том, как бы в ворпдрессе выводить пару рандомных постов из тех категорий, к которым принадлежит текущий пост.
Покопался в инете, ничего толкового не нашел, кроме плагинов с дикими запросами к базе, ищущими ключевые слова по всем текстам. Так что, пришлось писать самому 8)
Я не задавался целью создавать плагин, а просто написал кусок PHP-кода в файл single.php. Если найдутся энтузиасты, которые сделают из этого простой плагин — общественность будет безмерно благодарна 8))
Вот сам код:
<?php
echo '<h2>По теме</h2>
<ul class="related">';
global $post;
function get_random_related($postID) {
global $wpdb;
$sql = ”
select ID, post_title
from $wpdb->posts
where post_type = ‘post’ and ID in
(select post_id
from $wpdb->post2cat
where post_id<>$postID and category_id in
(select category_id from $wpdb->post2cat WHERE post_id = $postID)
)
order by rand()
limit 0,2″;
$results = $wpdb->get_results($sql);
foreach ($results as $result) {
$permalink = get_permalink($result->ID);
$output .= ‘<li><a href=”‘.$permalink.’”>’.$result->post_title.’</a></li>’;
}
return $output;
}
echo get_random_related($post->ID);
echo ‘</ul>’;
?>
Если в родственных рубриках всего один пост, кроме текущего, то он выведется один 8)
О плагинах ты истину глаголишь.
Попробовать разобраться - можно и ногу и руку сломать. Такое впечатление, что код писался инопланетным разумом. :)
А твой труд заюзаем. Спасибо.
Странно, что нелегко разобраться 8) Каментов, конечно, нет, но табуляция везде проставлена.
Кстати, если найдешь плагин для красивого отображения кода — буду очень благодарен 8)
А я вот нашел код для перелинковки страниц, но там в тексте ссылок используются заголовки постов.
(Т.е. внизу каждого отдельного поста блок:
Предыдущие посты: текст 1, текст 2, текст 3, …)
А мне бы вытянуть именно TITLE, который я для каждого поста задавал отдельно (через плагин SEO Title). Жаль я на php не пишу. :) Попытался так разорабраться сходу - пока не вышло. Там отдельная таблица для этого дела…
Если дашь скриншот на структуру этой таблицы — могу написать код под это дело 8)
Справился! :) http://blog.kmint21.com/2007/09/24/effective-internal-link-structure/
[...] сделать из этого плагин (эх, кто бы еще из случайных постов [...]