Вывод популярных постов по количеству лайков Facebook

Как отсортировать записи по количеству лайков фейсбука? В данном уроке я расскажу о том, как занести в дополнительные поля количество лайков из соц. сети Facebook, и отсортировать записи по популярности. На основании данного урока можно сделать различные социальные опросы, рейтинги и многое другое.

Узнаем количество лайков, или стук стук в фейсбук

В первую очередь, нам нужно узнать количество лайков, для этого нужно отправить запрос на сервера фейсбука. Facebook любезно предоставил всем пользователям реализовать данную возможнсть с помощью Facebook Graph. И так приступим, в файле single.php внутри цикла (после if(have_posts()) ), вставляем:

$fb = json_decode( file_get_contents( 'http://graph.facebook.com/?id='.get_permalink() ) );
$likes_count = $fb->shares;
update_post_meta($post->ID, 'fb_likes_count', $likes_count, false);

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

Сортировка на основании данных счетчика Facebook

После того, как мы получили и занесли данные счетчика в дополнительное поле, можем отсортировать их с помощью WP_Query, или с query_posts с которым я знакомил вас в прошлых уроках. В моем случае я буду выводить 5 популярных записей по лайкам  на главной странице. Для этого в файле index.php в нужном месте вставляем код перед циклом:

<?php 
$blog_args = array(
    'posts_per_page' => 5,
    'post_type' => 'post',
    'meta_key' => 'fb_likes_count',
    'orderby' => 'meta_value_num',
    'order' => 'DESC'
);
$blog_query = new WP_Query($blog_args);
?>

Вы можете указать другое количество выводимых записей, изменив цифру в поле posts_per_page, либо отсортировать записи по нарастающей изменив в поле order DESK на ASC. На официальном сайте можно более детально познакомится с функцией WP_Query, с помощью которой вы сможете выводить записи с определенной категории, определенного пользователя, записи по дате и с многими другими параметрами.

После данного кода формируете стандартный цикл с выводом записей в нужном вам виде, а также после цикла обязательно вставляем код:


<?php wp_reset_query(); ?>

Это делается для того, чтобы сбросить условие WP_Query.

Вот и подошел наш урок к концу, используйте данные с умом, продумывайте структуру шаблона и скрипта и вы получите уникальный и функциональный сайт. Помните, можно сделать всё, нужна лишь ваша фантазия, и базовые знания.

Если вам понравился данный урок, буду благодарен репостам и лайкам.

Хотите подобный функционал, верстку либо помощь в настройке вашего сайта?
Свяжитесь со мной

Оставить отзыв

(обязательно)

(обязательно)


Наши друзья
- ARTtime - Блог о Photoshop и Дизайн
- Блог о дизайне и арте
Реклама