26 января 2015, 12:07 С помощью Office'а можно залогиниться в админке с фронтенда, но не наоборот. Вопросы / Авторизация админа во фронте 16 0
23 января 2015, 22:39 Не за что) Только имейте в виду — разлогиниться при таком подходе, практически нереально. Только если неделю на сайт не заходить, пока авторизационные куки не умрут. Если автологин в админку не нужен, то первый блок if {} лучше закомментировать (тот, который «авторизовывает админа в админке»): // if (!$modx->user->hasSessionContext('mgr') && $modx->user->hasSessionContext($modx->context->key) && ($modx->user->get('sudo') || $modx->user->isMember('Administrator'))) { // $modx->user->addSessionContext('mgr'); // } Вопросы / Авторизация админа во фронте 16 0
23 января 2015, 22:21 Создаёте плагин, этот код вставляете в него, а затем во вкладке «Системные события» в большом и длинном списке ищете «OnWebPageInit», отмечаете чекбокс напротив него и сохраняете. Вуаля) Вопросы / Авторизация админа во фронте 16 0
23 января 2015, 22:12 Супер! никто до сих пор и не заметил =)Похоже, готовые сайты вообще никто не обновляет) Вопросы / Возможно баг вывода tv-фильтров в mFilter2 5 0
23 января 2015, 21:37 *(если он авторизован на фронте, и является администратором) Вопросы / Авторизация админа во фронте 16 0
23 января 2015, 19:14 switch ($modx->event->name) { case 'OnWebPageInit': if ($modx->context->key == 'mgr') { return; } /** авторизовывает админа в админке (если он не авторизован на фронте, и является администратором) */ if (!$modx->user->hasSessionContext('mgr') && $modx->user->hasSessionContext($modx->context->key) && ($modx->user->get('sudo') || $modx->user->isMember('Administrator'))) { $modx->user->addSessionContext('mgr'); } /** авторизовывает на фронте любого юзера, который авторизован в админке */ if ($modx->user->hasSessionContext('mgr') && !$modx->user->hasSessionContext($modx->context->key)) { $modx->user->addSessionContext($modx->context->key); } break; } Вопросы / Авторизация админа во фронте 16 0 2
19 января 2015, 17:32 Я для себя написал универсальную функцию изменения системной настройки, которая 100 пудов её изменяет и новое значение доступно сразу же и без дальнейших причуд: function changeSetting ($key = '', $value, $config = array()) { global $modx; if (empty($key)) { return false; } /* @var $response modProcessorResponse */ $response = $modx->runProcessor('system/settings/update', array_merge(array( 'key' => $key, 'value' => $value, 'namespace' => 'core' ), $config)); if ($response->isError()) { $modx->log(modX::LOG_LEVEL_ERROR, '[avk] Cann\'t update setting with messages: '. print_r($response->getAllErrors())); return false; } $modx->reloadConfig(); return true; } Вызывать надо вот так: changeSetting('pdoFetch.class', 'pdotools.mypdofetch', array( 'namespace' => 'pdotools' )); Namespace указывать надо обязательно, если настройка из стороннего компонента. Вопросы / Установка значения свойства. 15 0 1
14 января 2015, 17:22 Для ознакомления: bezumkin.ru/sections/components/1857/#comment-15167 В своё время задавлся этим вопросом и даже пытался сделать что-то реальное, но в итоге… Всё расписано в том комменте) Краудфандинг / Реферальная система minishop2 30 +2 1
13 января 2015, 08:17 AjaxSnippet — он как ниндзя, не заметен Вопросы / AjaxSnippet и поисковые роботы 1 0
07 января 2015, 20:37 Спасибо) А какое поле ты подразумеваешь, говоря «имеющееся»? Какое-нибудь наименее используемое у ресурса? Я из таких знаю только Атрибут ссылки. Но у него длина ограничена 255 символами. Краудфандинг / Тэги к тикетам 49 0
07 января 2015, 15:53 Это мне переписывать) А вам сейчас просто переустановить расширение на тестовом сайте :-) Готовые решения / Отправляем заголовки Last-Modified и Not Modified 74 0
07 января 2015, 15:26 Я пока температурю. До рабочего компьютера не знаю когда доберусь Краудфандинг / Тэги к тикетам 49 0
07 января 2015, 15:17 Ну, судя по всему, в созданном бекапе не экранированы какие-то спец.символы, которые в исходном html'е есть. Надо переписывать, чтоб не голый html в базе хранить, а хэш. Вам сейчас эта таблица и не нужна. Просто переустановите компонент на тестовом сайте и тестируйте Готовые решения / Отправляем заголовки Last-Modified и Not Modified 74 0
05 января 2015, 18:44 Ну так по смыслу это ни чем не отличается от того же выбора секции в форме добавления тикетов с фронта. Тот же заранее заданный список. Только вместо комбобокса — pillbox с автокомплитом. Надо просто это в одну кучу собрать. Просто сделать такой интерфейс универсальным несколько сложнее. Из коробки будет заточенность только под бутстрап. Краудфандинг / Тэги к тикетам 49 0
05 января 2015, 17:35 Ну разные окончания — тут уж пусть каждый сам решает что ему важнее. Можно сделать событие, в котором каждый сам будет исправлять теги как ему нужно — хоть через phpMorphy к начальной форме слова приводить. Но лично я подразумевал, что процесс создания тегов контролируется администратором сайта, а не пользователями. Пользователям вообще нельзя теги давать, иначе они в них нах*есосят. Либо по-умолчанию эти теги делать неопубликованными, а потом постоянно в ручную проверять на корректность Краудфандинг / Тэги к тикетам 49 0
05 января 2015, 17:31 В этом и вся фишка — в этом алгоритме твшки в выборках практически не учавствуют. Единственное место, где они будут нужны — это вывод списка тегов на странице. И здесь вопрос решается очень и очень просто — pdoResource. В pdoTools'е всё уже предусмотрено. Так что скорости будут максимальными Краудфандинг / Тэги к тикетам 49 0
05 января 2015, 16:35 Ты не уловил посыл) Главное не «тегирование из коробки», а «правильное тегирование». Правильное в коробку завернуть как раз не проблема, было бы оно правильным :-) Может быть на следующей неделе соберу. Хз когда выздоровлю. Краудфандинг / Тэги к тикетам 49 0
05 января 2015, 15:56 Я тут долго расписывал чем вредны теги, но надоело, если честно, и я забил) Поэтому просто расскажу, как _надо_ делать тегирование. Нужны: 1. Тикетс; 2. 2 tv; 3. 1 плагин; 4. 1 таблица. Создаём раздел с тикетами. Называем его, к примеру «Теги» :-) Создаём tv. В него будем записывать теги для страницы. На сохранение ресурса (у которого д.б. теги), в плагине, смотрим в этот tv, разбираем теги и на каждый создаём тикет в нашем разделе «Теги». У этих тикетов-тэгов д.б. tv-шка, в которую мы в исходном виде записываем текст тега. Потом записываем в нашу таблицу id ресурса и id тикета-тега (сколько тегов, столько и записей в таблице), не забывая перед этим очистить все прошлые записи для этого ресурса (ну вдруг мы отредактировали ресурс и какой-то тег удалили. Чтобы не заморачиваться с логикой — просто удаляем все записи для этого ресурса, а потом сохраняем текущие). Выборку статей с данным тегом делать pdoResource'ом. Собственно всё. Я бы собрал пакетик на днях, да только болею я. В общем, в чём профит. На каждый тег будет отдельный ресурс. Да, если тегов 1000, то и ресурсов будет 1000. Если кого-то такой вариант не устраивает, то… не мои это проблемы) Смысл в том, что у каждой страницы-тега можно редактировать урлы, контент, тайтлы, дескрипшены, да и вообще что душа пожелает — это же обычный ресурс. Это просто рай для любого более-менее грамотного сеошника. Вы в своих интернет-магазинах (и не только) сможете просто нереально расширить семантику, поднять траффика и позиции по куче низкочастотников. Достаточно небольшого уникального текста символов на 300, уникального тайтла и дескрипшена на каждой легированной странице. Вот и всё. Все остальные варианты тегирования, в большинстве случаев, будут только во вред. Между прочим, такие темы на платных закрытых вебинарах задвигают. А я вам готовый инструмент практически дал. Не упускайте шанс, как говорится. Всем добра :-) Краудфандинг / Тэги к тикетам 49 +1 1
05 января 2015, 14:53 Вот честно говоря, ни разу с таким поведением не сталкивался. И до этого подобных жалоб не было. Так что тут что-то уникальное исключительно для вашего сайта. Логика отдачи заголовка проста как топор и нарушений в её работе добиться очень сложно. Может из-за nginx'а что-то. Единственное, что могу посоветовать, — попробовать на другом хостинге протестировать (только аккуратно, чтобы поисковики не успели тестовый сайт проиндексировать), на каком-нибудь из рекомендуемых для modx. Если ошибка повторится, то дело в сайте, надо будет копать глубже. А по поводу вылета из индекса… С одной стороны не на столько это критичная ошибка и не на столько критичный фактор, чтобы весь сайт из индекса выкидывать. С другой — этих роботов, порой, хер поймёшь. У АГС'а тоже есть статистический процент ошибок. Тут только ответа Платона ждать. А в вебмастере смотрели? Там может быть что-то на эту тему, если есть проблемы с индексацией. А на данный момент, просто выключите плагин. Если это мешало индексации, то пара хороших ссылок с твиттера и зайдёт обратно, никуда не денется. Но сперва дождитесь ответа Платона. Готовые решения / Отправляем заголовки Last-Modified и Not Modified 74 0
05 декабря 2014, 05:59 Этот вопрос — основа основ и поднимается он в modx-сообществе с совершенно НЕзавидной регулярностью. Как?! Как, делая сайты, можно не знать про абсолютные и относительные ссылки и пресловутый base href? Это уже даже не смешно. Может пора счёт вести? Вопросы / Ссылка с любой стр. > на главную 5 +1
Возможно ли реализовать возможность предоплаты за доставку на сайте? Так ради этого мне и нужно это все, чтобы клиент платил сразу при оформлении заказа, чтобы избавить себя от мусорных заявок (когда человек оставляет заявку, а предоплату делать не ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 18 px. Да и текст комментариев можно таким сделать. Для меня лично 16 — мелковато на больших экранах (в комментариях вообще 15 ...
MiniShop3 1.11.0 при клике на radio идет пересчет итоговой суммы в orderUI, в зависимости от способов(оплаты доставки) я так поняла. попробуй код запуска события поставить ниже чем orderUI, после
ImageOptimizer - WebP/AVIF и responsive <picture> для MODX 3 Дополнение доступно modstore.pro/packages/photos-and-files/imageoptimizer
Localizator3 для MODX 3: перевод полей и TV без отдельного context на язык, Vue 3 + PrimeV... Добавил localizator3_default_language
msInShopNotify Начиная с версии 3.0.0-beta добавлена поддержка MiniShop3 Минимальные требования: PHP 8.4 MODX 3.2 MiniShop3
MaxNotify Обновление 1.2.0-pl (03.07.2026) — добавлены уведомления о заявках FormIt через hook-сниппет `maxNotifyFormIt`; — добавлены уведомления о заявках SendIt через hook-...
[msBonus2] 1.3.0 Бонус-коды, уведомления о сгорании и совместимость с msMultiCurre... Да, планируется. Даже чуть больше, чем просто бонусная система)
Только имейте в виду — разлогиниться при таком подходе, практически нереально. Только если неделю на сайт не заходить, пока авторизационные куки не умрут.
Если автологин в админку не нужен, то первый блок if {} лучше закомментировать (тот, который «авторизовывает админа в админке»):
Похоже, готовые сайты вообще никто не обновляет)
Вызывать надо вот так:
Namespace указывать надо обязательно, если настройка из стороннего компонента.
bezumkin.ru/sections/components/1857/#comment-15167
В своё время задавлся этим вопросом и даже пытался сделать что-то реальное, но в итоге… Всё расписано в том комменте)
А какое поле ты подразумеваешь, говоря «имеющееся»? Какое-нибудь наименее используемое у ресурса? Я из таких знаю только Атрибут ссылки. Но у него длина ограничена 255 символами.
А вам сейчас просто переустановить расширение на тестовом сайте :-)
Надо переписывать, чтоб не голый html в базе хранить, а хэш.
Вам сейчас эта таблица и не нужна. Просто переустановите компонент на тестовом сайте и тестируйте
Просто сделать такой интерфейс универсальным несколько сложнее. Из коробки будет заточенность только под бутстрап.
Но лично я подразумевал, что процесс создания тегов контролируется администратором сайта, а не пользователями. Пользователям вообще нельзя теги давать, иначе они в них нах*есосят. Либо по-умолчанию эти теги делать неопубликованными, а потом постоянно в ручную проверять на корректность
Единственное место, где они будут нужны — это вывод списка тегов на странице. И здесь вопрос решается очень и очень просто — pdoResource.
В pdoTools'е всё уже предусмотрено. Так что скорости будут максимальными
Главное не «тегирование из коробки», а «правильное тегирование». Правильное в коробку завернуть как раз не проблема, было бы оно правильным :-)
Может быть на следующей неделе соберу. Хз когда выздоровлю.
Поэтому просто расскажу, как _надо_ делать тегирование.
Нужны:
1. Тикетс;
2. 2 tv;
3. 1 плагин;
4. 1 таблица.
Создаём раздел с тикетами. Называем его, к примеру «Теги» :-)
Создаём tv. В него будем записывать теги для страницы.
На сохранение ресурса (у которого д.б. теги), в плагине, смотрим в этот tv, разбираем теги и на каждый создаём тикет в нашем разделе «Теги». У этих тикетов-тэгов д.б. tv-шка, в которую мы в исходном виде записываем текст тега.
Потом записываем в нашу таблицу id ресурса и id тикета-тега (сколько тегов, столько и записей в таблице), не забывая перед этим очистить все прошлые записи для этого ресурса (ну вдруг мы отредактировали ресурс и какой-то тег удалили. Чтобы не заморачиваться с логикой — просто удаляем все записи для этого ресурса, а потом сохраняем текущие).
Выборку статей с данным тегом делать pdoResource'ом.
Собственно всё.
Я бы собрал пакетик на днях, да только болею я.
В общем, в чём профит.
На каждый тег будет отдельный ресурс. Да, если тегов 1000, то и ресурсов будет 1000. Если кого-то такой вариант не устраивает, то… не мои это проблемы)
Смысл в том, что у каждой страницы-тега можно редактировать урлы, контент, тайтлы, дескрипшены, да и вообще что душа пожелает — это же обычный ресурс. Это просто рай для любого более-менее грамотного сеошника. Вы в своих интернет-магазинах (и не только) сможете просто нереально расширить семантику, поднять траффика и позиции по куче низкочастотников. Достаточно небольшого уникального текста символов на 300, уникального тайтла и дескрипшена на каждой легированной странице. Вот и всё.
Все остальные варианты тегирования, в большинстве случаев, будут только во вред.
Между прочим, такие темы на платных закрытых вебинарах задвигают. А я вам готовый инструмент практически дал. Не упускайте шанс, как говорится.
Всем добра :-)
Логика отдачи заголовка проста как топор и нарушений в её работе добиться очень сложно. Может из-за nginx'а что-то.
Единственное, что могу посоветовать, — попробовать на другом хостинге протестировать (только аккуратно, чтобы поисковики не успели тестовый сайт проиндексировать), на каком-нибудь из рекомендуемых для modx. Если ошибка повторится, то дело в сайте, надо будет копать глубже.
А по поводу вылета из индекса…
С одной стороны не на столько это критичная ошибка и не на столько критичный фактор, чтобы весь сайт из индекса выкидывать.
С другой — этих роботов, порой, хер поймёшь. У АГС'а тоже есть статистический процент ошибок. Тут только ответа Платона ждать.
А в вебмастере смотрели? Там может быть что-то на эту тему, если есть проблемы с индексацией.
А на данный момент, просто выключите плагин. Если это мешало индексации, то пара хороших ссылок с твиттера и зайдёт обратно, никуда не денется. Но сперва дождитесь ответа Платона.
Как?! Как, делая сайты, можно не знать про абсолютные и относительные ссылки и пресловутый base href?
Это уже даже не смешно.
Может пора счёт вести?