>>Есть еще OnLoadDocumentObject

— Получается ошибка:

===
ERROR: Too many forward attempts!

The request could not be completed due to too many unsuccessful forward attempts.
===

>>Или вообще OnDocFormSave

— Не работает, нет реакции никакой; по крайней мере, видимой.

Вообще, плагин с заменой — это костылище из мира WordPress. В предыдущих Evo и TinyMCE ведь как-то было сделано. Не на уровне ли TinyMCE? Ведь там должна быть возможность вставить условие. Но никто не признается.
Не работает, потому что к моменту вызова OnParseDocument чанк уже распарсился. По мне так лучше было бы использовать событие OnLoadWebDocument и делать замену в $modx->documentObject['content']. Но это событие так и не починили. Есть еще OnLoadDocumentObject, можно через него попробовать. Или вообще OnDocFormSave.
И опять же, в предыдущих версиях Evo и TinyMCE это как-то было решено.
Пример: пользователь хочет иногда вставлять на страницу, в произвольном месте или местах вызов галереи, иногда два вызова, иногда пять, иногда нисколько. У Вас никогда такого не возникало?
Добавил возможность поиска по точному совпадению, параметры для построения начального списка вынес в конфиг (это дает возможность работать с любыми таблицами), решил проблему с кэшированием (:
Могу сказать только одно, если у вас регулярно возникает такая задача, значит вы не отделили шаблон от содержимого. У меня за 7 лет ни разу такой необходимости не возникло.
Необходимость давать возможность пользователю вставлять в содержание чанки и вызовы сниппетов возникает регулярно.
И всего-то 2 плюса на пост за такую работу… эхх, ребята… :)
Обязательно обратите внимание на этот коммент, похоже причина всех ошибок, включая отсутствие крошек и неработающие конфиги — в кешировании.

Как только я глянул на новом браузере — конфиги заработали. Например, я установил ненужную родительскую папку 62 (ради эксперимента), и (по двойному клику на пустом поле для ввода) стали «выпадать» все документы из этой папки.

Также появились крошки — в прошлом браузере их не было, так как был закешированный вызов сниппета Breadcrumbs, который, естетсвенно, ничего не выдавал в этой ситуации.

Но еще раз поменял в параметрах родит. папку на новую (в том же браузере) — ничего не произошло, по двойному клику выдается закешированный результат из «старой» папки.

А вот если набираешь «новый» запрос в поле, напр. ID — все выдается как надо, из нужной папки — запрос-то еще не закеширован.

Сегодня сил уже нет, я бегло прочел такое:
В случае, если необходимо отменить кэширование, необходимо добавлять к строке запроса случайное значение, или если для ajax запроса используются библиотеки типа JQuery, нужно добавить параметр cache: false, этот параметр включает возможность добавления случайного значения к строке запроса — автоматически.
P.S. Доступы вышлю в личку.
Посмотрю.
  • avatar Harand
  • 0
Потратил кучу времени — отключал opcache на сервере, чистил кеш сайта, чистил кеш и локальное хранилище в Хроме — ничего.

И совершенно выпустил из вида кеширование Ajax-запросов. Открыл админку в новом браузере — и (о чудо!) изменения появились!

Но стоило сделать парочку поисков, и даже при новом изменении, например, кастомного конфига ТВ-параметра, «старые» аякс-запросы отдают старые результаты. А новые запросы (которых ранее не было) — всё Ок.

Видимо, механизм кеширования аякс отличается от обычного, и не чистится чисткой кеша браузера.

Если я прав, стоит добавить в код отмену кеширования результатов аякс-запросов.
приветствую, dmi3yy добавил изменяемые файлы в релиз, может упакуешь менеджер для установки через экстраз или Package Manager ну и можно убрать с «установка», править ручками ))
Надеюсь скоро
Вот первая демка уже

take.ms/CXoT6
Извините за назойливость. Ребята, а этот вопрос только одного меня интересует? Когда же выйдет так необходимый EvoShop?
Перенес на реальный сайт, создал свой ТВ variants и стандартный ТВ selector. Оба ТВ имеют тип ввода selector.

Для variants создал конфиг config/variants.php, где немного поменял шаблон — вписал menutitle вместо pagetitle.

'tokenTpl' => '@CODE: <option value="[+id+]" selected>[+id+]. [+menutitle+]</option>'


Но выводится по-прежнему pagetitle.

Кроме того, для variants создал файл variants.controller.class.php, в котором ради эксперимента задал опред. родителя,

$this->dlParams['parents'] = 62;


но ищется не в заданном родителе, а в папке, в которой находится редактируемый док-т.

Стандартный ТВ selector, как и положено, ищет по всему сайту, но и в нем, и в variants напрочь отсутствуют крошки.

Не посмотрите сайт? я еще донат подкину, надо ведь до ума довести.
вам верно подсказывают, нужно подключить отладку для smpt
//SMTPDebug  = 2
$modx->mail->SMTPDebug  = 2;

пример из кода, в котором подключается MODxMailer
$modx->loadExtension('MODxMailer');
Вставлять чанки в редактор — чур меня ))) На мой взгляд — котлеты отдельно, мухи отдельно должны быть.
Это не то. И поведение должно меняться только в отношении чанков (и вызовов сниппетов). Для остального хорошо, когда новая строка в <p></p>
  • avatar trifle
  • 0
Можно и ну очень много страниц делать:



Тут действительно всё от прямоты рук зависит, а если с этим плохо, то и на десятке страниц может тормозить.
В настройках движка в подразделе TinyMCE я выставляю br вместо p.