Илья Уткин

Илья Уткин

С нами с 15 декабря 2012; Место в рейтинге пользователей: #9
Илья Уткин
11 ноября 2013, 17:28
0
Ну и как скорость загрузки сайта? На том же уровне осталась?

А по теме — что этот костыль делает, могу сказать следующее:
Без него при открытии каждой страницы весь шаблон проходится парсером и, если встречаются сниппеты (например, getResources, Wayfinder и пр.), он их запускает и списки ресурсов генерируются заново. Если же закешировать отдельные блоки (которые на всех страницах всё равно одинаковые), то запуск сниппета внутри такого блока будет произведен лишь один раз. При открытии остальных страниц, этот блок генерироваться заново не будет.
Илья Уткин
06 ноября 2013, 16:16
0
Ух-ты… Не нашел такого, видел только начатое здесь: github.com/Alroniks/modx-voo
Тогда буду сейчас тестировать, спасибо за ссылку))
Илья Уткин
01 ноября 2013, 15:16
0
а 19 ресурс точно в контексте web?
Илья Уткин
16 октября 2013, 20:46
0
Только без восклицательного знака — просто [[название_сниппета]]
Илья Уткин
15 августа 2013, 18:30
0
Вам надо дописать в ссылки адрес текущей страницы:
<ul class="nav nav-tabs" id="myTab">
      <li class="active"><a href="[[*uri]]#home">Дозирование</a></li>
      <li><a href="[[*uri]]#profile">Меры безопасности</a></li>
      <li><a href="[[*uri]]#messages">Хранение</a></li>
</ul>
Илья Уткин
30 июля 2013, 17:42
0
Нет, у вас в первой строчке (в условии) указан знак конца адреса ($), потому работает только для главной странице.
Если смотреть пример от разработчиков MODX, то ваш код должен был быть такой:
RewriteCond %{HTTP_HOST} !^site\.ru [NC]
RewriteRule (.*) http://site.ru/$1 [R=301,L]
Илья Уткин
30 июля 2013, 11:32
3
0
Я использую такой код:
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Он работает независимо от домена, поэтому использую его в «сборке» для всех вновь создаваемых сайтов и не задумываюсь о редиректах
Илья Уткин
15 июля 2013, 00:32
0
Нужно самому писать ручками. Почитайте эту статью.
Илья Уткин
11 июля 2013, 14:20
0
Да, так заработало, спасибо. Когда расширял процессоры modObjectCreateProcessor и modObjectUpdateProcessor, с таким не сталкивался… Спасибо большое)))
Илья Уткин
29 апреля 2013, 23:28
0
Кстати, если уж вы только начали разбираться с MODX, учитесь сразу вызывать сниппеты стандартно, то есть кешированными. Убирайте восклицательные знаки в вызове getResourceField (как и других сниппетов — Wayfinder, getResources и пр.). У MODX сильная система кеширования и если сниппеты вызываются так: [[snippet]], то повторного запроса не будет
Илья Уткин
13 апреля 2013, 23:53
1
0
Безопасность -> Настройка форм. Создаете новый профиль, создаете набор правил (2 набора — для создания ресурса и для редактирования ресурса), переходите на вкладку «Дополнительные поля» и у какого-нибудь ТВ меняете modx-panel-resource-tv на modx-resource-settings. Ну а дальше, думаю, разберетесь)
Илья Уткин
05 марта 2013, 17:20
0
Можно попробовать делать выборку сначала TV, а потом получать ресурсы. Так уже будет быстрее и меньше ресурсов расходоваться.
$date = date('Y-m-d h:m:s');
$tvObjs = $modx->getCollection('modTemplateVarResource',array('tmplvarid' => 2, 'value:>=' => $date));
$resources = array();
foreach ($tvObjs as $tv) {
  $resources[] = $tv->get('contentid');
}
В итоге в массиве $resources у нас будут id-шники нужных ресурсов.

А если нужно прям за один запрос, используйте pdoTools.
Илья Уткин
21 февраля 2013, 20:56
0
Совершенно правильно. Но достаточно и одного дефиса. rtfm.modx.com/display/revolution20/Tag+Syntax
Илья Уткин
13 февраля 2013, 17:57
0
Вот вы пишете «getPage вывод не с первой страницы», а вызываете getResources
Илья Уткин
06 февраля 2013, 13:00
0
Вы имеете ввиду, если в XML-схеме для объекта Calls прописать две связи:
<composite alias="PrimaryContractor" class="Contractors" local="contractor"
  foreign="id" cardinality="one" owner="local" />
<composite alias="Contractors" class="Contractors" local="id"
  foreign="call_id" cardinality="many" owner="local" />
то при $call->getOne('PrimaryContractor') будет возвращаться нужный объект?

А насчет composite и aggrеgate — мне кажется, что правильно прописал: обращение — это основной объект, который просто объединяет всех контрагентов. То есть можно сказать, что обращение — это такой абстрактный клиент, внутри которого может быть несколько клиентов. И действительно, каждый контрагент связан только с одним обращением. И при удалении обращения нужно удалять и его контрагентов, а при удалении контрагента обращение должно остаться (в нем могут быть другие контрагенты).

Только вот думаю, что буду делать при удалении основного контрагента… Надо будет продумать этот момент и при удалении основного делать основным какой-нибудь из оставшихся контрагентов, а если не осталось, то удалять и обращение.
Илья Уткин
03 февраля 2013, 13:01
0
По своему опыту могу сказать нюанс бегет.ру:
у них по умолчанию настроено сжатие страниц. Из-за этого 404 страница отображается с ошибкой двойной компрессии. Просто пишем в техподдержку, чтобы отключили сжатие для сайта и все ок.

Еще у них кодировка по умолчанию win-1251. Исправляется добавлением в htaccess AddDefaultCharset utf-8

В остальном все супер-пупер))
Илья Уткин
16 января 2013, 22:04
0
Вставлю и свои пять копеек: советую посмотреть на beget.ru

И поддержка хорошая, и качество. Из интересного — когда замечают DDOS включают кеширование средствами nginx и сайт нормально выдерживает нагрузку. Если ведут технические работы, то ночью и заранее предупреждают о том что могут быть кратковременные перебои.

Сижу на нем уже третий год, всем доволен.

Кстати, fsknmsk.ru/ тоже на нем.
Илья Уткин
05 января 2013, 00:16
0
Попробуйте приспособить Tickets для своих нужд.
Илья Уткин
20 декабря 2012, 11:10
0
Попробуйте посмотреть, как я сделал на сайте kids-size.ru/

Там вся организация расположения меню в css, а в коде меню выглядит так:

<nav>
[[Wayfinder? &startId=`12`]]
</nav>
Илья Уткин
20 декабря 2012, 11:06
0
Есть еще один вариант — на странице вывода одного документа вызывать чанк с параметром:
[[$tpl.resource? &pagetitle=`[[*pagetitle]]`]]
Тогда в чанк будет передан плейсхолдер [[+pagetitle]], в котором будет значение текущего [[*pagetitle]]