ГлавнаяWordpressАвторские Функции → Функция вывода записей по количеству просмотров

Функция вывода записей по количеству просмотров

Комментариев: 124Функция вывода записей по количеству просмотров
  • А зачем городить такое количество текста в function, если можно короче, и не менее функциональней - прямо в тему:

    <?php $popular=new WP_Query('orderby=comment_count&showposts=7');?>
    <?php if ($popular->have_posts()):?>
    <ul>
    <?php while ($popular->have_posts()):$popular->the_post();?>
    <li><a href="<?php the_permalink();?>"><?php the_title();?></a> | <small>Опубликовано <?php echo human_time_diff(get_the_time('U'), current_time('timestamp')) . ' тому назад'; ?></small></li>
    <?php endwhile;?>
    </ul>
    <?php endif;?>

    А смотрится это так - смотрим в табе "Популярное".

    ОТВЕТИТЬ ↓
    • Здесь записи выводятся по значению произвольного поля, которое ко всему прочему числовое и чтобы сделать правильную числовую сортировку я сделал так: (pm.meta_value+0) AS views.

      Согласен, что можно сделать и через WP_Query (лучше get_posts()), но это сейчас, а когда я писал этот пост, тогда еще в параметрах WP_Query не была предусмотрена возможность указывать тип данных (число) для произвольных полей и соответственно запрос получался неправильный.

      И опять же, этот нагорожденный код можно в functions.php сунуть или куда-нить в низ файла шаблона, а где нужен вывод одной строкой вызвать функцию. Получится аккуратно и нагляднее. Не люблю когда в шаблоне много кода - глаза мозолит.

      ОТВЕТИТЬ ↓
  • Здравствуйте! Очень нравится ваша функция, еще раз огромное спасибо!
    А как исключить категорию или наоборот выводить только из определенной категории посты?

    ОТВЕТИТЬ ↓
  • Здравствуйте Кама. Спасибо большое за ваш сайт. Нахожу много полезного для себя. Он для меня как настольная книга.
    У меня есть несколько вопросов к вашей функции:
    1. Как в вашей функции выводить имя автора?
    2. Вывожу список записей через таблицу. в файле function.php ваш код вывода изменил на

    $out .= "<tr>$Sformat</tr>";

    , а на странице архива вывод наиболее просматриваемых записей за сегодня сделал

    <?php kama_get_most_viewed("num=100&days=1&format=<td>{date:d.m.Y}</td><td class='autorarchive'>{a}{title}{/a}</td><td>{views}</td><td>{comments}</td>"); ?> 

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

    3. Каким образом, используя вашу функцию, можно вывести числовую статистику - просмотров за сегодня - (20) например.

    Очень жду на ваш совет
    Спасибо.

    ОТВЕТИТЬ ↓
    • Уточню по 3 вопросу. Количество просмотров необходимо общее по всем статьям за определенный период.

      ОТВЕТИТЬ ↓
  • Было бы очень полезным добавить параметр, определяющий принадлежность выводимых постов к категории, например, вывести самые просматриваемые записи из категории (cat=ID или slug или name)
    Возможно я что-то упустил, есть такая возможность на данный момент?

    ОТВЕТИТЬ ↓
  • Спасибо, работает! Очипятка: в 63-й строке кода лишняя буковка "n" затесалась:

    $out .= "n<li class='$x'>$Sformat</li>";
    ОТВЕТИТЬ ↓
    • Спасибо за поправку!

      ОТВЕТИТЬ ↓
  • Здравствуйте, а как можно склонять месяцы? при таком выводе:

    Чтоб было не так: 4 Март 2012, 15:03, а так 4 марта 2012, 15:03

    В блоге использую плагин для русского вывода времени, можно ли их подружить?
    Плагин "TheRussianDate", вызывается так:

    Спасибо))

    ОТВЕТИТЬ ↓
    • Вообще, функция дружит вроде с плагином: http://mywordpress.ru/plugins/russian-date/ или нет, по коду должна!

      ОТВЕТИТЬ ↓
  • Собралась вывести самые читаемые записи за последний месяц и обнаружила, что функция выводит только статьи, опубликованные в последний месяц, естественно с количеством просмотров.

    Если за месяц опубликовано, например, 2 статьи, то выводит только 2.

    А хотелось, чтобы выводились 10, самых читаемых в этом месяце.

    Может я что то не учла?

    Выводила так:

    kama_get_most_viewed("num=10 &days=30 &format={a}{title}{/a} Просм. {views} раз. Коммент. {comments}");

    ОТВЕТИТЬ ↓
  • Пробовал пользоваться разными плагинами, но пришлось отказаться из-за нагрузки на сервер.
    Воспользовался вашей функцией + вывел популярные записи в виджете в админ панели для себя/статистики.
    Отлично получилось, большое спасибо!

    ОТВЕТИТЬ ↓
Форма комментирования

¤ Вставляйте код кнопкой: "Код" (php, js, html, css, sql);
¤ Выделяйте HTML код кнопкой: "Выделить" (<div>);
¤ Перед отправкой комментария используйте "Превью";
¤ Не пишите спам/бред — бесполезно!

Подписаться на комментарии без комментирования:

X

Забыли пароль?