Как вывести поля пользователя по условию?
Добрый день.
Делаю каталог фирм. При регистрации все данные фирмы записываются в поля пользователя (имя, телефон, адрес, а также дополнительные поля — там реквизиты фирмы).
Для фирмы я сделал контейнер типа Коллекция, внутри страница фирмы (с коротким описанием фирмы, пару фото — все из поля content). Как на этой же странице вывести данные из полей пользователя, если название фирмы в заголовке совпало с названием поля Фирма у пользователя.
Намудрил или есть более рациональное решение?
Делаю каталог фирм. При регистрации все данные фирмы записываются в поля пользователя (имя, телефон, адрес, а также дополнительные поля — там реквизиты фирмы).
Для фирмы я сделал контейнер типа Коллекция, внутри страница фирмы (с коротким описанием фирмы, пару фото — все из поля content). Как на этой же странице вывести данные из полей пользователя, если название фирмы в заголовке совпало с названием поля Фирма у пользователя.
Намудрил или есть более рациональное решение?
Комментарии: 3
Для решения этой задачи использовал pdoUser для вывода всех пользователей.
Затем сделал сниппет для сбора данных с полей пользователя bedrijfsProfiel:
Теперь посмотреть данные о фирме (пользователе) можно по ссылке [[++ste_url]]/profile.html?bedrijf=[[+id], где id — это айди нужного пользователя.
Затем сделал сниппет для сбора данных с полей пользователя bedrijfsProfiel:
<?php
// получаем шаблон
$tpl = $modx->getOption('tpl',$scriptProperties,'bedrijfsProfielTpl');
// получаем значение переменной "user" из _GET
$userId = intval($_GET["bedrijf"]);
if($userId == 0){return "Bedrijf niet gevonden!";}
// формируем запрос для загрузки информации из БД
$user = $modx->getObject('modUser',array('active' => true, 'id' => $userId ));
if($user == null){return "Bedrijf niet gevonden!";}
$profile = $user->getOne('Profile');
// копируем данные в массив.
$data = array();
$data['user'] = $user->toArray();
$data['profile'] = $profile->toArray();
// выводим результат
return $modx->getChunk($tpl,$data);
И делаем чанк-шаблон для вывода этих данных bedrijfsProfielTpl:Логин: <strong>[[+user.username]]</strong><br />
Имя: <strong>[[+profile.fullname]]</strong><br />
Последний вход: <strong>[[+thislogin:date]]</strong><br />
Город: <strong>[[+profile.city]]</strong><br />
Сайт: <strong>[[+profile.website:default='не указан']]</strong>
Создаем ресурс с выводом данных, название, допустим, Профиль (страница разрешена только для зарегистрированных пользователей). Там вызываем [[!bedrijfsProfiel? &tpl=`bedrijfsProfielTpl`]]Теперь посмотреть данные о фирме (пользователе) можно по ссылке [[++ste_url]]/profile.html?bedrijf=[[+id], где id — это айди нужного пользователя.
Теперь вопрос: как сделать ресурс на каждого пользователя (пока можно вручную) и вывести его, если id пользователя совпало с TV «id пользователя» у ресурса?
Наверно я это и хотел спросить вначале :)
Наверно я это и хотел спросить вначале :)
[[!pdoResouerces?
&parents=`[[*id]]`
&tvFilters=`???`
&where=`???`
]]
Как-то так?
&parents=`[[*id]]`
&tvFilters=`???`
&where=`???`
]]
Как-то так?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.