Манипуляции с дополнительными полями в профиле

Форум для авторов модов для phpBB 3.0.x. Здесь можно попросить помощи в разработке у коллег.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Манипуляции с дополнительными полями в профиле

Сообщение Alecto »

Нужно разнести в разные места профиля предопределенные дополнительные поля.
Исходный код доп.полей шаблона memberlist_view.html выглядит следующим образаом:

Код: Выделить всё

		<!-- BEGIN custom_fields -->
				<dt>{custom_fields.PROFILE_FIELD_NAME}:</dt> <dd>{custom_fields.PROFILE_FIELD_VALUE}</dd>
		<!-- END custom_fields -->
удалось заставить работать условие следующего вида:

Код: Выделить всё

		<!-- BEGIN custom_fields -->
			<!-- IF custom_fields.PROFILE_FIELD_NAME == "Название поля на русском" -->
				<dt>{custom_fields.PROFILE_FIELD_NAME}:</dt> <dd>{custom_fields.PROFILE_FIELD_VALUE}</dd>
			<!-- ENDIF -->
		<!-- END custom_fields -->
Насколько этот вариант приемлем?
Может есть лучшее решение?
Адресоваться к ID доп.поля у меня никак не получается.
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Манипуляции с дополнительными полями в профиле

Сообщение MIT »

Лучше проверять <!-- IF S_PROFILE_[b]идентификатор[/b] -->, где [b]идентификатор[/b] задаётся тобой в админке и приводится в верхний регистр. Т.е., например <!-- IF S_PROFILE_MYFIELD --> для идентификатора myfield.
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Манипуляции с дополнительными полями в профиле

Сообщение Alecto »

если используется значение
<!-- IF custom_fields.PROFILE_FIELD_NAME == "Видимый e-mail" -->
результат правильный - выводится заданное значение.
b36ed847b63b.jpg
меняю эту строку на
<!-- IF S_PROFILE_EMAIL -->
выборка не работает
c0a08f0f1912.jpg
Добавлено спустя 1 минуту 14 секунд:
похоже надо было так
<!-- IF custom_fields.S_PROFILE_EMAIL -->
?

Добавлено спустя 14 минут 55 секунд:
Практически победил!
Осталось одно НО...

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

каким-то образом в доп-поля затесалась ссылка на записи пользователей в дневниках (блогах - user blog mod 1.0.15)
в профиле пользователя строка имеет вид:
Дневник: Просмотр записи (17)
В шаблоне за эту строку в данный момент отвечает условие

Код: Выделить всё

			<!-- IF custom_fields.PROFILE_FIELD_NAME == "Дневник" -->
				<dt>{custom_fields.PROFILE_FIELD_NAME}:</dt> <dd>{custom_fields.PROFILE_FIELD_VALUE}</dd>
			<!-- ENDIF -->
В админке, в доп.полях такого значения нет.
Откуда оно берется - пока не могу сообразить... Перешерстил User Blog Mod: доработки от Некстати - на первой странице не нашел.
Я ступоре, наверно надо идти спать.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Манипуляции с дополнительными полями в профиле

Сообщение Alecto »

нашел похожее место в функции add_blog_links файла blog/includes/functions_view.php

там есть параметр PROFILE_BLOG

но, попытка вставить его таким образом
<!-- IF custom_fields.S_PROFILE_BLOG -->
результата не дала - поле перестает выводиться.
пробовал варианты: custom_fields.S_PROFILE_BLOG, custom_fields.S_PROFILE_PROFILE_BLOG, custom_fields.PROFILE_BLOG - не работает.

на 99.9% уверен, что это нужное место и нужная переменная, но почему не работает? и как к ней адресоваться....?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: Манипуляции с дополнительными полями в профиле

Сообщение HAMMER663 »

FomenkoAndrey ну правильно что не работает))
Откуда ты custom_fields взял?
Аватара пользователя
Alecto
phpBB 3.0.12
Сообщения: 2857
Стаж: 16 лет 9 месяцев
Откуда: Украина! Харьков
Благодарил (а): 80 раз
Поблагодарили: 292 раза

Re: Манипуляции с дополнительными полями в профиле

Сообщение Alecto »

из шаблона memberlist_view.html

Код: Выделить всё

		<!-- BEGIN custom_fields -->
			<!-- IF custom_fields.S_PROFILE_ORIGINAL_NAME -->
				<dt>{custom_fields.PROFILE_FIELD_NAME}:</dt> <dd>{custom_fields.PROFILE_FIELD_VALUE}</dd>
			<!-- ENDIF -->
.............. и тд и тп ..................
		<!-- END custom_fields -->
HAMMER663 писал(а):ну правильно что не работает)
будешь смеяться, но ...
сейчас для поля блога у меня прекрасно работает вариант

Код: Выделить всё

			<!-- IF custom_fields.PROFILE_FIELD_NAME == "Дневник" -->
				<dt>{custom_fields.PROFILE_FIELD_NAME}:</dt> <dd>{custom_fields.PROFILE_FIELD_VALUE}</dd>
			<!-- ENDIF -->
но, хотелось бы привести его к виду, который подсказал MIT и к которому я уже привел все доп.поля.

постом выше я писал, где блог заполняет этот массив (или я думаю, что он там заполняет).
все выложил, файл во вложении.

со своей "колокольни" я ошибку, к сожалению, не вижу.
Аватара пользователя
boloto
phpBB 1.4.4
Сообщения: 126
Стаж: 16 лет 11 месяцев
Благодарил (а): 57 раз
Поблагодарили: 10 раз

Re: Манипуляции с дополнительными полями в профиле

Сообщение boloto »

Помогите сделать сортировку в memberlist.php для дополнительного поля.
Поле у меня в виде "Раскрывающийся список".

Вывод в memberlist_body.html, естественно, сделал. Теперь очень хочется чтобы оно было "сортирующимся". Может есть готовый аддон?

Я понимаю, что нужно добавить в memberlist.php код для сортировки и вывода. Но как это сделать?
Аватара пользователя
boloto
phpBB 1.4.4
Сообщения: 126
Стаж: 16 лет 11 месяцев
Благодарил (а): 57 раз
Поблагодарили: 10 раз

Re: Манипуляции с дополнительными полями в профиле

Сообщение boloto »

Сделал по инструкции https://www.phpbb.com/community/viewtop ... f#p6254095 и чуть далее там

Вернуться в «Для авторов (phpBB 3.0.x)»