Вывод всех постов пользователя — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «Задача: вывести все посты в блогах, созданные определенным пользователем. Для реализации …»)
 
Строка 18: Строка 18:
 
Каждый найденный пост будет оформляться в виде ссылки и выводиться списком.
 
Каждый найденный пост будет оформляться в виде ссылки и выводиться списком.
  
Вызов кастома пропишем в шаблоне \templates\demoold\tpls\users\profile\default.tpl, который отвечает за вывод страницы с профилем пользователя. При вызове кастома передаем id пользователя:
+
Вызов кастома пропишем в шаблоне /templates/demoold/tpls/users/profile/default.tpl, который отвечает за вывод страницы с профилем пользователя. При вызове кастома передаем id пользователя:
  
 
<pre>
 
<pre>

Версия 06:04, 30 января 2013

Задача: вывести все посты в блогах, созданные определенным пользователем.

Для реализации данной задачи напишем кастомный макрос в файле /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>