Полезные сниппеты и функции для WordPress

11 марта 2012 года, Размещено в категории: WordPress

Добрый день, сегодня хочу представить вам несколько полезных снипеттов и коротких скриптов для WordPress.

Этим постом я хочу начать цикл статей, в которых буду публиковать интерестные хаки, решения и хитрости для WordPress. И объединить их в итоге в один сборник полезных хаков на отдельной странице блога. Поэтому сразу советю подписаться на RSS или начать следовать за блогом Dicim.net в Твиттере.

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

  • Подсчитывать кол-во просмотров статей;
  • Выводить текстовое количество ваших фанов в Facebook;
  • Выводить текстовое число фолловеров в Twitter;
  • Если нет миниатюры, то выводим стандартное изображение;

Считаем просмотры поста

Для того, чтобы подсчитать, какое количество раз была просмотрена страница, надо в файл functions.php добавить вот такой код:

 
function PosViews($postID) { //Функция подсчёта просмотров
    $count_key = 'post_views_count';
    $count = get_post_meta($postID, $count_key, true);
    if($count==''){
        $count = 0;
        delete_post_meta($postID, $count_key);
        add_post_meta($postID, $count_key, '0');
    }else{
        $count++;
        update_post_meta($postID, $count_key, $count);
    }
}
function getViews($postID){ //Вывод данных о просмотрах записи
    $count_key = 'post_views_count';
    $count = get_post_meta($postID, $count_key, true);
    if($count==''){
        delete_post_meta($postID, $count_key);
        add_post_meta($postID, $count_key, '0');
        return "0 Просмотров";
    }
    return 'Всего просмотров: ' $count;
}

После этого, надо добавить обработчик подсчёта просмотров. Для этого, в файл single.php к циклу вывода записи, добавить вот такой код:

<?php PosViews(get_the_ID()); ?>

Чтобы вывести числовое значение просмотров к определённой записи, надо сделать вот такой вывод:

<?php echo getViews(get_the_ID()); ?>

То есть, мы обращаемся к функции getViews, которая выводит количество просмотров, которые насчитала функция PosViews. Всё довольно просто.

Если вы хотите вывести подборку постов, у которых самое большое количество просмотров на сайте, то надо воспользоваться специальным выводом для WordPress - query_posts.

<ul>
 <?php
  query_posts('meta_key' => 'post_views_count', 'numberposts' => 5, 'orderby' => 'meta_value_num');
  while ( have_posts() ) : the_post();?>
 
  <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
 
 <?php endwhile; ?>
</ul>

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

Выводим количесвто фанов в Фейсбук

Тут всё очень просто, скрипт парсит xml файл c помощью api facebook и оттуда получает значение тех, кто читает вас.

<?php
 $id = "Введите ID вашей страницы";
 $xml = @simplexml_load_file("http://api.facebook.com/restserver.php?method=facebook.fql.query&query=SELECT%20fan_count%20FROM%20page%20WHERE%20page_id=".$id."") or die ("a lot");
 $fan = $xml->page->fan_count; // Получаем данные
 echo $fan; // Выводим
?>

Выводим текстовое число фолловеров в Twitter

Так же, как и в прошлом скрипте, мы вытаскиваем количество читателей в Твиттере и числовое значение выводим на сайте.

<?php 
$tw = get_option("twitterfollowers");
if (!isset($tw['lastcheck'])) $tw['lastcheck'] = 0; 
 
if (!isset($tw['count'])) $tw['count'] = 0;
 
if ($tw['lastcheck'] < (mktime() - 3600)) {
 $xml=file_get_contents('http://twitter.com/users/show.xml?screen_name=dicim');//dicim замените на свой ник в Твиттере
 
 if (preg_match('/followers_count>(.*)</',$xml,$match)!=0) $tw['count'] = $match[1];
 $tw['lastcheck'] = mktime();
 update_option("twitterfollowers",$tw);
 echo $tw['count']; //Выводим количество фолловеров
}
?>

Стандартное изображение вместо миниатюры

Вывод миниатюрных изображений возле анонса поста, очень популярно в современных тенденциях дизайна блогов. Эти изображения так же называют Превьюшками, Thumbnail. Но суть одна - маленькое изображение у постов, как сделано на главной страницы этого блога. Кстати о том как настраивать миниатюры и Thumbnail в WordPress, я писал в статье - "Миниатюры в WordPress".

И так, для вывода стандартной картинки если у поста нет миниатюры, вы можете использовать вот такой код:

if(has_post_thumbnail()){
  the_post_thumbnail();// Вывод миниатюры (Thumbnail)
}else{
  echo '<img src="'.get_bloginfo('template_directory').'/images/default_post_thumb.jpg" />';
}

Вот такие сегодня полезные наработки и скрипты для вашего блога на WordPress.
А комплексно оценить и проверить дизайн и удобство вашего сайта, можно у http://sitepolice.ru/, правда услуги платные, но они могут помочь Вам правильно настроить сайт, подобрать цвета и места расположения основных блоков.

На сегодня всё, спасибо за внимание и если что-то не понятно, то пишите в комментариях.






1 Комментарий

  • 6 лет назад Ответить

    Интересно =) Вообще мне нравятся всякие такие трюки делать. Возьму на вооружение. Подобные фишки притягивают пользователей. Правда и ими тоже надо пользоваться с умом.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Перед отправкой формы: