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
Возможно ли реализовать возможность предоплаты за доставку на сайте? В любом случаем стандартный флоу минишоп2 рассчитан на оплату по ссылке, т.е. чтобы получить информацию об оплате, нужно чтобы заказ существовал. Чтобы сделать иначе, нужно использ...
Редизайн сообщества На больших экранах основной текст статьи я бы сделал 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?
Это уже даже не смешно.
Может пора счёт вести?