Content Profile - полная интеграция с форумом и сайтом
Прислано: kiev1
вс, 29/08/2010 - 17:21
Подскажите пожалуйста сниппет что бы заменить поля профиля полями из Content Profile - например что бы заменить упоминание логина пользователя везде (на форуме, в комментах, в авторстве статей) - полем реального имени из Content Profile и аватар тоже картинкой из image_field
- kiev1's blog
- Для комментирования войдите или зарегистрируйтесь
hook_user в помощь
- Для комментирования войдите или зарегистрируйтесь
ммм... не совсем понял, но отвечу Realname
- Для комментирования войдите или зарегистрируйтесь
Спасибо, реальное имя заработало через Realname, а аватарки наверно прийдется делать через hook_user потому что ImageField Avatar как-то не работает - в advanced форуме не появляются аватарки, и еще -
при использовании Content Profile у пользователя получаются 2 страницы - одна нода и другая user - вот как бы их профессионально объединить?
так что бы везде и всегда по сайту была у пользователя одна какая-то страница с его данными - как это принято делать?
- Для комментирования войдите или зарегистрируйтесь
Так она и будет одна. Простую ноду он видеть небудет.
- Для комментирования войдите или зарегистрируйтесь
«при использовании Content Profile у пользователя получаются 2 страницы - одна нода и другая user - вот как бы их профессионально объединить?»
panels + views
- Для комментирования войдите или зарегистрируйтесь
да, но как лучше? темизировать страницу пользователя users/111 или ноду которую делает Content Profile ? плюс надо делать видимо переадресацию если вдруг попадаем каким-то путем на одну из них - переадресацию на ту которая более правильно темизирована
- Для комментирования войдите или зарегистрируйтесь
У вас и там и там будут одинаковые класы. Так как нода профайла и то что выводится на странице пользователя используют одну тплку.
- Для комментирования войдите или зарегистрируйтесь
делать одну tpl-ку для 2-х адресов? или переадресацию на один адрес?
- Для комментирования войдите или зарегистрируйтесь
Нет смотрите. Для вывода информации с профайла на странице user/[uid] используется node-profile.tpl.php. То есть вывод и там и там будет одинаковый. А вариантов попасть на эту страницу(страницу ноды) простому пользователю невозможно - так как страница просмотра и страница редактирования профайла находится за адресами user/[uid] и user/[uid]/edit/profile соответственно. Но если очень хочется сделать редирект, то hook_init в помощь.
- Для комментирования войдите или зарегистрируйтесь
Настроил вывод профиля с помощью user-profile.tpl.php и node-profile.tpl.php, на сайте везде ссылки вида user/uid. Но при использовании поиска (например я ищу "Андрей") выдаются ссылки вида content/andrei-profile, и по ней отображаются только поля, созданные с помощью Content profile.. Подскажите, что можно сделать чтобы и через поиск выдавались пути вида user/uid? Или как можно привести эти профили к единому виду?
- Для комментирования войдите или зарегистрируйтесь
ага - вот и я о том-же
- Для комментирования войдите или зарегистрируйтесь
Нашел описание проблемы на д.орг http://drupal.org/node/661572
На данный момент сделал редирект со страницы content profile на user profile:
function MY_THEME_preprocess_node(&$variables) {
$node = $variables['node'];
switch ($node->type) {
case 'profile':
if (arg(0) == 'node' && arg(1) == $node->nid && arg(2) == "") {
// If we are postitive we are on node/N where N is the NID of a profile
// node, then redirect to the user profile page instead.
drupal_goto("user/$node->uid");
}
}
}
- Для комментирования войдите или зарегистрируйтесь
да, но теперь непонятно где пользователь сможет себе пароль сменить? ведь в ноде профиля он не меняется...
- Для комментирования войдите или зарегистрируйтесь
Я использую в качестве основного профиля user-profile.tpl.php, и в него подгружаю дополнительно созданные через Content Profile поля таким образом
<?php
$variables = $content_profile->get_variables('profile');
if ($variables['field_prof'][0]['value'])
{
print "Должность: ".$variables['field_prof'][0]['value']."<br>";
}
?>При этом в режиме редактирования профиля user/1/edit есть 2 вкладки - "Учетная Запись" и "Профиль". Логин и пароль меняется в первой вкладке, дополнительные поля - во второй.
- Для комментирования войдите или зарегистрируйтесь
а как запретить юзеру видеть поля "Заголовок" и "содержание"? в процессе редактирования "Профайла"?
- Для комментирования войдите или зарегистрируйтесь
Заголовок - модуль auto_nodetitle, в настройках типа материала стоит Automatically generate the title and hide the title field
- Для комментирования войдите или зарегистрируйтесь




Комментарии