Перейти к публикации

Безопасный режим в доп. поле.


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

Можно-ли как-нибудь отключить безопасный режим в однострочном доп. поле?

Понадобилось вывести плеер через доп. поле. Вставил, оформил, добавил, открываю - не работает.

Этот момент изменений в описании новой версии пропустил, а в админке этого ни где не сказано... В результате часа три насиловал в жесткой форме себе мозг и не мог понять почему-то не работает. Оказывается одна строчка по дефолту в безопасном режиме. Как его отключить? У меня в новости десятки доп. полей и все они должны быть в несколько строк что-бы безопасный режим был отключён и это сильно напрягает ибо размеры......

Спасибо!

Ссылка на сообщение
Поделиться на других сайтах

Что касается второго пункта, то это не отключается, т.к. полностью

переработан принцип работы полей и их безопасности, поэтому вам нужно либо

включать тип несколько строк, если хотите добавлять BB теги, либо

возвращаться на версию 9.0.

ответ целсофта. Пока что нашел выход только включением нескольких строк.

Ссылка на сообщение
Поделиться на других сайтах

Что касается второго пункта, то это не отключается, т.к. полностью

переработан принцип работы полей и их безопасности, поэтому вам нужно либо

включать тип несколько строк, если хотите добавлять BB теги, либо

возвращаться на версию 9.0.

ответ целсофта. Пока что нашел выход только включением нескольких строк.

Мда... это плохо! Это очень плохо... Ну ок помучаемся, может в следующей версии он исправит эту погрешность...

Ссылка на сообщение
Поделиться на других сайтах

ArtemNY, не копал пока где что и как там, в чём различия версий, ну, оно мне просто не нужно, я этой лабудой не пользуюсь, но могу как вариант предложить костыль сделать. Я свои моды стараюсь максимально универсальными делать и обычно прибегаю к практике "замены" тегов, тогда от версий ничего не зависит. :)

Попробуйте сделать так. Откройте, например, файл: /engine/modules/show.short.php

найдите что-то типа:

		if( $xfound ) {

			$xfieldsdata = xfieldsdataload( $row['xfields'] );

			foreach ( $xfields as $value ) {

				$preg_safe_name = preg_quote( $value[0], "'" );

				if( empty( $xfieldsdata[$value[0]] ) ) {

					$tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );

				} else $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "\\1", $tpl->copy_template );

				$tpl->copy_template = str_replace( "[xfvalue_{$preg_safe_name}]", stripslashes( $xfieldsdata[$value[0]] ), $tpl->copy_template );

			}

		}
Вместо этого можно написать своё. Например, что-то типа:
		/* ********* Обработка дополнительных полей ******* */

		if ($xfound) {

			$xfieldsdata = xfieldsdataload($row['xfields']);

			foreach ($xfields as $value) {

				$preg_safe_name = preg_quote($value[0],"'");

				if (empty($xfieldsdata[$value[0]])) {

					$tpl->copy_template = preg_replace("'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is",'',$tpl->copy_template);

				} else $tpl->copy_template = preg_replace("'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is","\\1",$tpl->copy_template);

				$x = stripslashes($xfieldsdata[$value[0]]);

				if (strpos($preg_safe_name,'date_release')=='КАКАЯ-ТО_МЕТКА_ПОЛЯ_ДЕФОЛТНО') {

					$x = 'ЧЁ-ТО_СВОЁ';

				} else $tpl->copy_template = str_replace("[xfvalue_{$preg_safe_name}]",$x,$tpl->copy_template);

				unset($x);

			}

		}

		/* ********* /Обработка дополнительных полей ******* */

Всегда так пишу в модах. Если устроит, напишу здесь конкретный вариант под вашу конкретную проблему. Правда, этот код на 9.0, на 9.2, вроде так же должно быть :)

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

Ссылка на сообщение
Поделиться на других сайтах

...

Огромное спасибо за помощь, но я моды и хаки на сайт никогда не ставлю...

КПД низкое, гемморой с модами и хаками не окупается :)

Ссылка на сообщение
Поделиться на других сайтах

П.С. Напишите код, который вы хотите вывести у себя на сайте через ДП.

А, ну, ваше дело :) Просто хотел помочь.

Ссылка на сообщение
Поделиться на других сайтах

Выдает ошибку

Parse error: syntax error, unexpected '>' in /engine/modules/show.short.php on line 380

:(

можете подсказать как решить эту проблему с дополнительными полями?

Ссылка на сообщение
Поделиться на других сайтах

Выдает ошибку

Parse error: syntax error, unexpected '>' in /engine/modules/show.short.php on line 380

:(

можете подсказать как решить эту проблему с дополнительными полями?

Ссылка на сообщение
Поделиться на других сайтах

llbarmenll, я написал всего лишь пример того, как можно сделать, а не готовый вариант костыля однострочного доп.поля. Напишите свой код, который вы хотите вывести на страницу, я вам для вашего конкретного случая напишу как это сделать. Тогда вы в доп.поле пишите тег/фразу, например, {player}, а он будет подменяться уже готовым вашим плеером. Это просто, для примера.

П.С. Здесь на форуме код разрывается и переходит на другую строку, нужно, чтобы он был в одной строке, тогда ошибки не будет. ;)

Ссылка на сообщение
Поделиться на других сайтах

У меня картинки вставляются в дополнительные поля с [thumb][/thumb], по этому единственным для меня выходом пока что является убрать новую обработку или же полностью редактировать все дополнительные поля, что не есть хорошо.

Еще у меня в дополнительных полях к сожалению из-за парсера тоже необходимо оставить в дополнительных полях

так и не понял я что туда вписать :)

Изменено пользователем llbarmenll
Ссылка на сообщение
Поделиться на других сайтах

Что-то я тупанул... Можно же все скриптовые теги вывести в шаблон, а в поле даже в сафе мод выводить чистую ссылку и всё...

Ссылка на сообщение
Поделиться на других сайтах

так и не понял я что туда вписать

Вы же сами процитировали :D Пишите, например, в доп.поле "The_text", а он автомам при показе вашей новости выведет вместо "The_text" что-то другое, например, "This_other_text".

Таким образом вы напишете просто тег, например, {my_music}, а вместо него будет в новости отображён плеер для прослушивания музыки. Если имеете представление, что такое HTML, то проблем быть не должно, если же всё-таки не получается сделать задуманное, то напишите свой код, который хотите вывести в новости вместо доп.поля, я напишу вам здесь конкретный вариант для вашего сайта под ваши запросы - уже сколько раз это всем повторил и пример показал... :)

П.С. Я не знаю, к сожалению, можно это как-то проще сделать или нет, но я, например, так всегда делаю.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...