Финансовая поддержка VPS, бесплатные дополнения и docs Донаты оплачивают сервер и двигают бесплатные дополнения MODX и документацию. Поддержать

Всего 126 102 комментария

Володя
Володя
Можно попробовать плагином на событие OnBeforeManagerPageInit
if ('OnBeforeManagerPageInit' === $modx->event->name) {
    if (is_array($action) && in_array($action['controller'], ['security/user'])) {
        $modx->controller->addHtml('<script>
        Ext.override(MODx.grid.User, {
            Originals: {initComponent: MODx.grid.User.prototype.initComponent},
            initComponent: function () {
                this.Originals.initComponent.call(this);
                if (store = this.getStore()) {
                    store.baseParams["sort"] = "id";
                    store.baseParams["dir"] = "asc";
                }
            },
        });
        </script>');
    }
}
Артур Шевченко
Артур Шевченко
Какая разница на какой странице выводится футер, если баннеры хранятся в ресурсе с id = 1? Рассмотрим такой пример. У тебя есть две комнаты, в комнате с номером 1 стоит тумбочка с ящиками. Если тебе что-то нужно из неё взять, когда ты находишься в комнате 2, ты что будешь делать: искать тумбочку в комнате 2 (её там нет по условию) или пойдёшь в комнату 1?
al1ve
al1ve
да, кажется, сработало, спасибо). Но почему оно сработало? 1 — это ведь вроде только для ресурса с id 1, но футер ведь во всех страницах, с разным id?..

upd: а, да… понял. у меня ведь тв-поля баннеров добавлены к ресурсу 1. Теперь понял.
al1ve
al1ve
выводить блок с баннерами на всех страницах, так как блок с баннерами прописан в чанке футера. но чтобы проверяло тв-поле на заполненность. Если пусто — не выводить код блока определённого баннера, а то когда клиент удаляет картинку из тв-поля — она выводится на сайте как битая.
Артур Шевченко
Артур Шевченко
Чанк будет работать и работает на любой странице, НО баннеры у тебя в ресурсе 1, а ты проверяешь, условно, есть ли баннер в ресурсе 2. И раз блок выводится, значит баннер в ресурсе 2 есть. Чтобы работало корректно проверять надо так
{if (1 | resource: 'Banner_footer_img_01')}...{/if}
Артур Шевченко
Артур Шевченко
Синтаксис конечно лучше не смешивать, но вряд ли дело в этом. Скорее всего, дело в том, что баннеры берутся из ресурса с id = 1, а ты проверяешь поле текущего ресурса. И вероятно для текущего ресурса условие ложно.
al1ve
al1ve
ну в шаблонах чаще всего прописано через [[$Footer]]. Заметил, что часть кода в некоторых шаблонах подсвечена красным. сайт не я делал. Может из-за этого моё условие на феноме и не срабатывает. Мож если исправить ошибки в шаблоне — условие сработает.