5 часов назад
Не все пожелания клиента нужно реализовывать. Одно дело когда желание обосновано бизнес-процессами, а другое дело клиент так видит. В данном случае, н...
Как правильно сделать авторизацию двух разных групп пользователей. 5
5 часов назад
Файл: core/components/msearch2/phpmorphy/src/fsa/access/fsa_sparse_file.php
Перед строкой 32 добавить:
if(!is_array($word)) {
$word = (a...
mSearch2 приводит к заполнению журнала ошибок (mSearch2 fills error log) 1
Вчера в 19:52
С ним славу богу все хорошо. Он пошел дальше по карьерной лестнице, оставил MODX позади и сейчас заглядывает к нам только поздороваться.
Не могу справиться с fullCalendar"ем 7
Вчера в 10:53
Как раз при редактировании с фронта добавить проверку не проблема, но надо код компонента смотреть
Доступ только к определенным страницам 4
Вчера в 07:41
Если используете ispmanager, отключите параметр open_basedir
Передан пустой файл (Minishop2 - галерея) 7
Вчера в 07:35
страниц много, но как вариант возможно.
В целом конечно пока не совсем понятно как лучше настроить контроль версий, я вот пока все сунул в Docker ...
Что удаляется в папке core/cache после того как нажали кнопку "Очистить кэш" в админке? 7
11 ноября 2024, 11:29
Этот компонент для связки с любым фреймворком?
К примеру с astro.build/ этим можно связать?
gtsAPI - Универсальное API для MODX 2
11 ноября 2024, 09:46
Добрый день! Вы можете у сниппета ecMessage в параметре threads указать *. Про это есть в документации.
easyComm - комментарии, отзывы, вопросы на сайте 536
08 ноября 2024, 23:04
попробуйте убрать autoplay здесь:
allow="clipboard-write; autoplay"
Вставка видео с Rutube с управлением на сайте 4
Всего 123 782 комментария
Cниппет ms_CDEK2
1. Одну строку комментируем, новую добавляем:
//$modx->regClientScript('https://www.cdek.ru/website/edostavka/template/js/widjet.js');
$modx->regClientScript('https://cdn.jsdelivr.net/gh/cdek-it/widget@2.5.5/widget/widjet.js');
2. Еще одну строку ниже комментируем, а новую добавляем:
//path: «www.cdek.ru/website/edostavka/template/scripts/»,
path: «cdn.jsdelivr.net/gh/cdek-it/widget@2.5.5/widget/scripts/»,
$mediaSourcePath = ' ';
$bindMediaSourceTv = true;
Это так и должно быть или нужно перед запуском скрипта какие-то еще манипуляции делать? Или скрипт надо только на чистый сайт запускать?
Вы пишите мне в ответе то, что я написал в сообщении, в тексте вопроса. Я знаю как вывести это используя fenom, а как на smarty — нет.
На данный момент, я смог получить id родителя, но как его использовать далее, чтобы получить pagetitle у родителя например, пока не пойму. Мб, заработался…
1. **Инициализация класса**: В конструкторе класса `msCartCustomHandler` вызывается конструктор родительского класса `msCartHandler`, чтобы корректно инициализировать объект.
2. **Вызов `getService`**: В методе `someMethod` происходит вызов `getService`, который загружает и инициализирует необходимый компонент (в данном примере `myComponent`).
3. **Проверка и использование**: Проверяется, что возвращаемое значение действительно является экземпляром необходимого класса компонента, после чего можно использовать методы этого компонента.
Этот подход позволяет вам гибко использовать функциональность различных компонентов MODX в вашем наследуемом классе.
### .htaccess
В файле .htaccess у вас всё верно настроено для переадресации запросов на index.php с соответствующим `cultureKey` и `q`. Однако, убедитесь, что у вас есть следующие строки в начале файла:
```apache
RewriteEngine On
RewriteBase /
```
### Роутинг
Ваш скрипт переключения контекстов выглядит правильно, но добавьте дополнительную обработку для других языков и `cultureKey`. Также убедитесь, что у вас есть все необходимые контексты в MODX.
### Пример улучшенного роутинга
```php
<?php
if ($modx->context->get('key') != «mgr») {
$allowedLanguages = ['en', 'ua', 'ru', 'fr', 'de'];
$cultureKey = isset($_REQUEST['cultureKey'])? $_REQUEST['cultureKey']: 'en';
if (in_array($cultureKey, $allowedLanguages)) {
$modx->switchContext($cultureKey);
} else {
$modx->switchContext('web');
}
unset($_GET['cultureKey']);
}
```
### Проверка контекстов и ресурсов
1. Убедитесь, что контексты `en`, `ua`, `ru`, `fr`, `de` существуют в системе.
2. Проверьте, что ресурс `franchiza` существует в каждом контексте и имеет одинаковый alias.
3. Перейдите в менеджер ресурсов и убедитесь, что все ресурсы переведены и имеют правильные alias.
### Дополнительные настройки Babel
Убедитесь, что Babel правильно настроен для всех контекстов:
1. Перейдите в «Системные настройки» -> Babel.
2. Проверьте значения настройки `babel.contextKeys` (ключи всех контекстов, разделенные запятыми).
### Пример настройки Babel
```plaintext
babel.contextKeys = en,ua,ru,fr,de
```
Если проблема сохраняется, проверьте журнал ошибок MODX на наличие дополнительных подсказок.
Данный код выполняет следующие действия:
1. Получает ID родителя текущего ресурса.
2. Использует этот ID для получения ID «дедушки» (родителя родителя).
3. Выводит заголовок страницы «дедушки» по его ID.
Этот способ достаточно прост и позволяет получить необходимые данные без использования дополнительных сниппетов.
Если у вас есть вопросы или нужна дополнительная информация, пожалуйста, обращайтесь.