Вывод всех постов пользователя — различия между версиями
Материал из Umicms
Yulia (обсуждение | вклад) |
Mad grant (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
+ | |||
+ | '''Актуально для версии 2.9''' | ||
+ | |||
Задача: вывести все посты в блогах, созданные определенным пользователем. | Задача: вывести все посты в блогах, созданные определенным пользователем. | ||
Версия 08:21, 5 июня 2013
Актуально для версии 2.9
Задача: вывести все посты в блогах, созданные определенным пользователем.
Для реализации данной задачи напишем кастомный макрос в файле /classes/modules/custom.php:
public function postList($id){
$posts = new selector('pages');
$posts->types('hierarchy-type')->name('blogs20', 'post');
$posts->where('owner')->equals($id);
$res = "";
foreach ($posts as $post){
$res.= "<li><a href=\"{$post->link}\">{$post->name}</a>\n";
}
return $res;
}
Каждый найденный пост будет оформляться в виде ссылки и выводиться списком.
Вызов кастома пропишем в шаблоне /templates/demoold/tpls/users/profile/default.tpl, который отвечает за вывод страницы с профилем пользователя. При вызове кастома передаем id пользователя:
Посты в блогах: <ul>%custom postList(%id%)%</ul>