Павел Гвоздь

Павел Гвоздь

С нами с 31 мая 2015; Место в рейтинге пользователей: #3
Павел Гвоздь
10 сентября 2015, 11:48
+1
Используй настройки компонента. Укажи поля для изображения/видео — и выведи их.
Павел Гвоздь
10 сентября 2015, 09:56
0
Попробуй включить PHP в настройках Феном и вывести вот так свой TV:
{print_r($_modx->resource.video)}
Возможно Феном (или что-то ещё) декодит JSON ещё на стороне вывода. У меня сейчас так с новой версии pdoTools. Надо переписать пример будет.

Значит тебе надо выводить сразу вот так:
{set $video = $_modx->resource.video}

{if !empty($video['video'])}
	<iframe width="860" height="650" src="{$video['video']}" frameborder="0" allowfullscreen></iframe>
{else}
	Видео нет
{/if}
Павел Гвоздь
04 сентября 2015, 09:47
0
Спасибо, почти то, что надо. А вот как быть для главного админа? В любом случае получается простыня контекстов. Я так понимаю, тут никак это не решить?
Павел Гвоздь
01 сентября 2015, 07:36
+1
Тут свой сниппет надо, если хочешь получать такой вариант json, с годами или месяцами. Куда проще используя pdoResources, делать выборку строго за определенный период. А чтоб злоумышленникам не давать возможность открывать все ресурсы на сайте, то можно указать параметр parents — родительскую категорию новостей.

P.S.: И, да. Очень неприятно читать такой текст, в котором автор не постарался для других. Это ты такие заметки для себя делай, а вопрос надо стараться задавать, чтобы в нём была уже часть ответа. И название должно говорить о теме вопроса, а не «помогите, че не так?». Ещё пара таких неуважительных постов и вряд-ли кто-то тебе поможет.
Павел Гвоздь
01 сентября 2015, 07:20
0
+ файлы, я так понимаю, можно легко перенести в другой проект?
Павел Гвоздь
30 августа 2015, 18:30
0
А "+" не забыли?

/users/{user_firstname:[A-Za-z0-9]+}/
Павел Гвоздь
29 августа 2015, 20:36
+3
Для не особо больших сайтов вот эта штука с сообщением для конкретного пользователя в некоторых случаях — просто песня!
Павел Гвоздь
27 августа 2015, 16:24
+2
Удачного отпуска! :)
Павел Гвоздь
27 августа 2015, 15:25
0
Видел я его. Не подошёл он мне.
Павел Гвоздь
26 августа 2015, 16:50
+1
Сам лично видел что-то подобное:
[[#[[#[[#[[*id]].parent:ne=`0`:then=`
Павел Гвоздь
26 августа 2015, 10:41
+2
Супер! Этого очень не хватало в debugParser!
Тоже, кстати, уже 2ой сайт делаю исключительно на Fenom! Счастью нет предела, до сих пор вызывает радость то, насколько грамотно можно построить структуру шаблона с использованием шаблонизатора, а не тормозных MODX тегов!
Павел Гвоздь
24 августа 2015, 22:09
+1
Василий, я конечно не в тему поинтересуюсь, но создавать отдельный топик тоже не хочется. Ты как-то писал о том, что в будущем сделаешь курс по ExtJS, я очень жду до сих пор и хотелось бы узнать — а ждать ли вообще?)
Павел Гвоздь
24 августа 2015, 13:51
1
0
Всё-же немного поторопился публиковать сниппет. Перед последней строкой return $return; должно быть вот это:
$MobileDetect->saveSettings( $return );

Итого, более правильный код сниппета вот:
<?php
if( !$MobileDetect = $modx->getService('mobiledetect', 'MobileDetect', MODX_CORE_PATH . 'components/mobiledetect/') ) {return;}


$key = $MobileDetect->config['force_browser_variable'];

$device = !empty($_GET) && array_key_exists($key, $_GET)
		? $modx->stripTags($_GET[$key])
		: '';

if( empty($device) )
{
	$device = $MobileDetect->getSettings();
}

if( empty($device) )
{
	$detector = $MobileDetect->getDetector();
	
	if( $detector->isMobile() )
	{
		$return = 'mobile';
	}
	else {
		$return = 'standard';
	}
}
else {
	$return = $device;
}

$MobileDetect->saveSettings( $return ); // ставим печеньку

return $return;

Советую, для корректной работы с мультиязыками использовать системную настройку «session_cookie_path». Значение данной настройки должно быть "/" (без кавычек).
Павел Гвоздь
24 августа 2015, 12:49
0
Как будет время покопаю, думаю. Пока решил проблему, вроде, небольшим костылём.
Павел Гвоздь
24 августа 2015, 12:48
1
+1
Отключил в настройках плагин MobileDetect. Использую сниппет, который определяет средствами MobileDetect девайс, в сочетании с Феном. В начале чанка «layout» вставил такой код:
<?php
if( !$MobileDetect = $modx->getService('mobiledetect', 'MobileDetect', MODX_CORE_PATH . 'components/mobiledetect/') ) {return;}


$key = $MobileDetect->config['force_browser_variable'];

$device = !empty($_GET) && array_key_exists($key, $_GET)
		? $modx->stripTags($_GET[$key])
		: '';

if( empty($device) )
{
	$device = $MobileDetect->getSettings();
}

if( empty($device) )
{
	$detector = $MobileDetect->getDetector();
	
	if( $detector->isMobile() )
	{
		$return = 'mobile';
	}
	else {
		$return = 'standard';
	}
}
else {
	$return = $device;
}

$MobileDetect->saveSettings( $return ); // ставим печеньку

return $return;
Внимание! Сниппет будет работать только с установленным компонентом MobileDetect.

Советую, для корректной работы с мультиязыками использовать системную настройку «session_cookie_path». Значение данной настройки должно быть "/" (без кавычек).
Павел Гвоздь
24 августа 2015, 10:49
0
Если кто-то сталкивался с этим, посоветуйте пожалуйста, как решить можно. Это очень важно, друзья, в ближайшее время.
Павел Гвоздь
23 августа 2015, 16:01
0
Пример обработки JSON поля средствами Fenom:
{set $video_json = $modx->fromJSON($_modx->resource.video)}

{if !empty($video_json['video'])}
	<iframe width="860" height="650" src="{$video_json['video']}" frameborder="0" allowfullscreen></iframe>
{else}
	Видео нет
{/if}
Павел Гвоздь
23 августа 2015, 09:04
+2
Обязательно чуть позже напишу пример того, как средствами Феном вывести видео на странице.