Как сделать автозаполнение полей данным из профиля пользователя - автоматически при создании материала

Главные вкладки

Аватар пользователя andreystrelkov andreystrelkov 10 февраля 2012 в 10:56

Т.е. допустим пользователь создаёт материал, допустим обьявление, и чтобы при создании материала и заполнении полей, были поля (например Имя, телефон и т.п.) которые сами заполнялись информацией из его профиля

Комментарии

Аватар пользователя andreystrelkov andreystrelkov 10 февраля 2012 в 11:56

хотя нет,... не получилось
я создал поля у пользователя при регистрации,
и решил добавить их в тип материала при создании (т.к. их нет в ОТОБРАЖЕНИИ, пока не поставишь в поля при создании), однако при попытке создать материал, он эти поля рисует, но они пустые

Аватар пользователя sas@drupal.org sas@drupal.org 10 февраля 2012 в 20:21

Стоп! Для того, чтобы они были в ОТОБРАЖЕНИИ не надо их ставить в СОЗДАНИЕ, надо просто вывести их и пользователя это можно сделать в теме например в template.php "достать" и добавить в тема_preprocess_node() . Если же Вы таки отит определить по умолчанию значения полей при создании материала, то используйте для определения PHP code в настройках поля.

Аватар пользователя andreystrelkov andreystrelkov 11 февраля 2012 в 21:42

я где то читал что в поле можно вставить PHP код который бы писал значение переменной (в моём случае значение одного из полей профиля)
а как это сделать, как настроить это поле?

Аватар пользователя sas@drupal.org sas@drupal.org 11 февраля 2012 в 22:32

В D6 был PHP code для вычисления значения по умолчанию в настройках поля, в D7 не нахожу, но всегда можно использовать _alter( для изменения значений по умолчанию для формы создания материала и ее полей.

Аватар пользователя andreystrelkov andreystrelkov 13 февраля 2012 в 11:02

мда тяжело это всё для меня оказалось с php
так и не понял что к чему.

в итоге пришёл немного к другой идее, поля не буду спрашиваться при создании а только выводится, т.е. при просмотре материала

нашёл идею с использованием токенов, а именно Token Field модуль, поставил, создал новые поля с этим модулем, но беда, он может выводить поля текущего пользователя в материала, но не может выводить поля пользователя создавшего материал, он их не распознает а пишет лишь сам токен Sad

быть может есть решение, или кто нибудь подскажет какой код нужно вставить в тема_preprocess_node() для отображения поля

Аватар пользователя placid placid 20 октября 2016 в 16:47

Как разобрались?
Есть идентичная задача - при создании пользователем ноды показывать где-нибудь в ноде телефон из его профиля независимо от желания самого пользователя.

Аватар пользователя placid placid 23 октября 2016 в 0:27

Junegton wrote:

решение в лоб- рулсы, с действием на добавление новой ноды


Черт возьми, я так и думал) Придется все таки понять эти рулсы

Аватар пользователя Junegton Junegton 24 октября 2016 в 8:39

placid wrote:

Junegton написал:

решение в лоб- рулсы, с действием на добавление новой ноды

Черт возьми, я так и думал) Придется все таки понять эти рулсы


а без них никуда