Master-X
Форум | Новости | Статьи
Главная » Форум » Блоги и Социальные сети » 
Тема: Как суммировать значения поля Custom Fields?
цитата
17/11/10 в 16:44
 log
Задача подбить сумму для всех значений поля Custom Fields под названием "rating" во всех опубликованных постах пользователем, например, "vovka".

Т.е., "vovka" опубликовал пять постов, где в каждом ему присвоили по одному полю Custom Fields под названием "rating".

Например, так:

Пост 1 = 3
Пост 2 = 4
Пост 3 = 5
Пост 4 = 3
Пост 5 = 5

т.е., мне нужно получить сумму этих полей, которая равна 20.
цитата
18/11/10 в 01:32
 Microne2010
тема, наверно, для программирования icon_smile.gif
цитата
18/11/10 в 02:39
 artursn
есть одна идея
вытаскиваешь сначало список пользователей.
потом делаешь в цыкле читаешь значение этого поля.
rating = rating +Костом значение
потом делаешь массив например или назад в базу записуешь общее значение рейтинга.
там проходишь по всем пользователям.
и потом выводишь сумарные значения
короче смысл это все делать каждый раз нет.
нужна сделать типа крона, который раз в день или два будет куда то или в файл или в базу записывать итоговые данные и сделать на блоге инклуд вывода.
примерно так...
цитата
19/11/10 в 04:16
 log
А как вытащить список пользователей? Нашел функцию

Код:
wp_list_authors('exclude_admin=0&optioncount=1&hide_empty=0');


Но там просто список выводится, не думаю, что с ним что-то можно сделать.

А дальше что? Допустим ID пользователя "vovka" я вытащил, например:

$userid = 3;

теперь не знаю правильную ли функцию выбрал для второго этапа, но должно быть что-то вроде этого, как я понимаю:

query_posts('author='.$userid.'&post_status=publish&meta_key=rating');

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

Помогите плиз.
цитата
19/11/10 в 16:55
 st01en
http://codex.wordpress.org/Custom_Fields
а для вытаскивания юзера, думаю
$user_id = username_exists( $user_name );
if ( $user_id ) { *** }
цитата
21/11/10 в 12:27
 log
так функция username_exists проверяет существует ли пользователь, а те выводит список авторов...

по функцию get_post_custom() знаю, просто не знаю, как запихнуть полученные данные в массив (с массивами редко что-то делал).


Эта страница в полной версии