Вывод произвольных полей

Автор KainCq, 24 июня 2011, 22:02:25

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

KainCq

Произвольные поля выводятся под аватаром только если в них есть какие-то данные, а так они скрыты. Так вот, как сделать данные по умолчанию в этих полях?

Ну или на крайний случай можно просто вывести данные поля без значений, за вывод полей отвечает следующий код: if (!empty($message['member']['custom_fields']))
{
foreach ($message['member']['custom_fields'] as $custom)
if (empty($custom['placement']) || empty($custom['value']))
echo '
<li class="custom">', $custom['title'], ': ', $custom['value'], '</li>';
} */

Что подправить что бы поля отображались постоянно, даже если они не заполнены.

GeorG

Восклицательный знак перед empty, в первой строке убери.
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

KainCq

Убрал восклицательный знак и поля вообще пропали.

KainCq

Залез в БД, таблица custom_fields, установил default_value равным 0, далее подправил код на следующий:
     if (!empty($message['member']['custom_fields']))
     {
foreach ($message['member']['custom_fields'] as $custom)
if (empty($custom['placement']) || empty($custom['value']))
echo '
<li class="custom">', $custom['title'], ': ', $custom['value'], '</li>';
   else echo '
                <li class="custom">', $custom['title'], ': ', $custom['default_value'], '</li>';
}


Но все равно не отображаются ни сами поля, ни значения по умолчанию. Поля начинаю отображаться только после внесения в них данных... В чем ошибка? Как сделать что бы поля сразу отображались под аватаркой с пустыми или дефолтными значениями?

GeorG

А как вообще понять - "вывести данные поля без значений", и что вы там хотите вывести, если этого (значения) нет? Какое значение по-умолчанию?
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

Макар

Георг, не суть важно что :)
путь будет пробел :)
Если Вы здесь недавно, не обольщайтесь тоном некоторых дискуссий.
Все чаще слова - юзай поиск, приобретают смысл - иди в ж..........  Приобретение смысла автоматизированно - Ответы на любой вопрос по SMF
Не пишите несколько сообщений подряд - тут вам не Twitter  >:( в остальных ситуациях мы не сильно зверствуем 2funny

GeorG

#6
Макар, где нибудь он поставили это пробел, который по-умолчанию? И с чем должен показываться пробел?
Просто так, и так, можно сказать что он есть, только его не видно. В общем, я не понимаю, дайте мне скриншот того, что вы хотите увидеть.

UPD:
Тьфу, кажись понял о чём он, тогда так:
Заменить тот код выше:
if (!empty($message['member']['custom_fields']))
{
foreach ($message['member']['custom_fields'] as $custom)
if (empty($custom['placement']) || empty($custom['value']))
echo '
<li class="custom">', $custom['title'], ': ', $custom['value'], '</li>';
}


Вот этим:
if (!empty($message['member']['custom_fields']))
{
foreach ($message['member']['custom_fields'] as $custom)
if (empty($custom['placement']) || empty($custom['value']))
echo '
<li class="custom">', $custom['title'], ': ', $custom['value'], '</li>';
}
else
echo '
<li class="custom">', $custom['title'], '</li>';
Верстка тем по шаблону, их доработка/переработка, переделка тем с версии smf 1.1 на smf 2.0. Примеры работ - insidestyle.ru
Установка модов (заточка под ваш форум); Моды под заказ; Обновление форума; Правильный перенос; Удаление/лечение вирусов; Устранения ошибок.
Обращаться в ЛС
Мой форум
Модуль анти-спама CleanTalk, сам пользуюсь
Сервера которыми сам пользуюсь - cadedic.ru

KainCq

Помогло, но выводит только первое произвольное поле =)