Перейти к публикации
View in the app

A better way to browse. Learn more.

Дизайн и модификация Invision Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Html в дополнительных полях IP.Content

Опубликовано:

Всем привет!

 

Версия IPB4, IP.Content

 

Есть проблема. IP.Content подставляет значения из кастомных полей значения обрамляя их в знак "

 

Например, вот такая конструкция:

 

{$record->customFieldDisplayByKey('education_speaker')|raw}

 

В итоге, на сайте дает такой результат:

 

"<a>Speaker</a>"

 

Соответственно игнорируется вся верстка и не работает ссылка.

Рекомендованные сообщения

Опубликовано:

В дополнительные поля ip.content можно вставлять html?

Попробуйте непосредственно обратится к этому полю по ид $record->field_ид

Опубликовано:
  • Автор
Попробуйте непосредственно обратится к этому полю по ид $record->field_ид

 

Не помогает ни в какую. Как бы не обращался все равно в ковычки оборачивает и игнорирует верстку. Сравнил с другими полями которые нормально отображают верстку и заметил в БД параметр - field_html равный 0. Поставил 1, обновил содержимое поля, но все равно проблема не решилась.

Опубликовано:

@vinegredz, Вы бы написали с какими параметрами создано поле и где используется для воспроизведения проблемы.

Опубликовано:
  • Автор

Версия IPB4, IP.Content 4.0.13.1.

 

И так, поле типа Редактор. То есть при создании записи используется стандартный редактор текста для IPB. Значение поля пробовал все возможные {$formValue} и {$value}. Вывожу это поле на странице записи (record). В редакторе делают список, а на странице в итоге только разметка вида:

 

<ol><li>Для тех кто хочет</li><li>Для тех кто может и хочет</li><li>Для тех кто не знает чего хочет</li></ol>

Опубликовано:

В редакторе делают список, а на странице в итоге только разметка вида:

Это разве не список?

Опубликовано:
  • Автор

Это список, но разметка игнорируется и на странице в итоге такой вид:

 

post-55941-0-77149700-1445525569_thumb.png

 

А в коде, это будет так:

 

post-55941-0-85942100-1445525616_thumb.png

Опубликовано:

А в коде, это будет так:

Это ваш дебагер так показывает. Как это будет в коде нужно смотреть непосредственно в исходном коде страницы. На скриншоте нет поддержки html - теги заменяются на сущности. Вы приводите валидный html и вводите людей еще больше в заблуждение. Смотрите настройки дополнительного поля, поддерживают они html или нет.

Опубликовано:
  • Автор

В исходноме коде страницы вот такая штука:

<div class="webinars_p"><ol><li>Для тех кто хочет</li><li>Для тех кто может и хочет</li><li>Для тех кто не знает чего хочет</li></ol></div>

Можно ли как то включить через БД поддержку HTML для конкретного поля? Поддержка HTML есть только для одного типа поля во всем IP.Content. И еще не понятнее то, что стандартное поле Описание для записи, является полем типа Редактор, но в итоге все теги нормально обрабатываются.

Опубликовано:

Если используется тип Custom в Listing View Format или Display View Format, то читаем описание

You may need to add the '|raw' modifier to preserve HTML, i.e. {$value|raw}, but this can introduce security issues if not used carefully.

Т.е. вместо

{$formValue} и {$value}

должно быть {$formValue|raw} и {$value|raw}

Опубликовано:
  • Автор

Спасибо огромное! Вы решили недельную проблему. Не подскажите где эта документация?

Опубликовано:

Не подскажите где эта документация?

В АЦ. Это описание типа Custom

cf.jpg

Опубликовано:
  • Автор

В АЦ. Это описание типа Custom

post-47589-0-84154700-1445588099_thumb.jpg

 

Капец. В русификации просто эту строку вырезали... Спасибо. Теперь буду знать.

Создайте аккаунт или войдите в него для комментирования

Сейчас на странице 0

  • Нет пользователей, просматривающих эту страницу.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.