Вывод чанка в зависимости от ширины монитора
Задача: при заходе на сайт с ПК выдается стандартный шаблон, со смартфона — мобильный.
Решение: Обычный шаблон поместить в чанк (пусть будет [[$standart]]), а мобильный в чанк [[$mobile]]
Создаю страницу с пустым шаблоном (test.html) в которой вывожу скрипт для определения ширины монитора и передачи значения в сниппет аяксом.
Создаю сниппет [[width]], который хранится в статичном файле script.php
исходный код test.html
В чем проблема и вообще на сколько правильно так делать? Спасибо
Решение: Обычный шаблон поместить в чанк (пусть будет [[$standart]]), а мобильный в чанк [[$mobile]]
Создаю страницу с пустым шаблоном (test.html) в которой вывожу скрипт для определения ширины монитора и передачи значения в сниппет аяксом.
Создаю сниппет [[width]], который хранится в статичном файле script.php
исходный код test.html
<!DOCTYPE html>
<html>
<head>
<script src="assets/katalog/js/jquery.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script type="text/javascript">
ScreenWidth = screen.width;
$(document).ready(function(){
$.ajax({
url: 'script.php',
data : "postVar=" + ScreenWidth,
type : "POST",
success: function (data) {
alert (data);
},
error: function(){
alert ("No PHP script: ");
}
});
});
</script>
</head>
<body>
[[!width:gt=`400`:then=`[[$standart]]`:else=`[[$mobile]]`]]
</body>
</html>код в сниппете [[width]]<?php
echo $_POST['postVar'];Проблема в том, что сниппет [[width]] не выдает значение ширины. В чем проблема и вообще на сколько правильно так делать? Спасибо
Комментарии: 15
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
в минишопе таким образом выводится возможность смены вида отображения чанков под тлвары.
И обзывать дружественные нам страны не стоит — это, как минимум, не красиво.
modx.pro/help/3766/
Так видит значение ширины экрана…
… а в TV заюзать значение никак не получается и
[[*screen_width:gt=`768`:then=`меньше 768`:else=`больше 768`]]
И другие глобальные переменные из файла скрипта также не могу в чанке вывести…
… А из чанка никак не могу использовать ширину… не работает конструкция:
[[*screen_width:gt=`768`:then=`меньше 768`:else=`больше 768`]]
И другие глобальные переменные из файла скрипта также не могу в чанке вывести