Владимир

Владимир

Был в сети 28 января 2019, 16:05
Заказы не принимаю
Завтра на работе попробую этот вариант. Спасибо.
Написал так. Но limit не работает.
{if 'mobile' | mobiledetect}
        {set $limit = 5}
        {$limit}
    {/if}

    {if 'standard' | mobiledetect}
        {set $limit = 10}
        {$limit}
    {/if}

    {$limit}
И в десктопной, и в мобильной версии выводит 5 10 10
Обновил до 2.7 через UpgradeMODX. Перестала работать админка. После установки я залогинился, и у меня вывалилась пустая страница. Кеш чистил. В логах:
[Thu Nov 29 10:14:44.495940 2018] [authz_core:error] [pid 11456] [client 127.0.0.1:36832] AH01630: client denied by server configuration: /var/www/vogel-noot/public_html/core/docs/changelog.txt
[Thu Nov 29 10:14:56.377175 2018] [authz_core:error] [pid 20338] [client 127.0.0.1:37056] AH01630: client denied by server configuration: /var/www/vogel-noot/public_html/core/docs/changelog.txt
[Thu Nov 29 10:18:09.358526 2018] [authz_core:error] [pid 11454] [client 127.0.0.1:40212] AH01630: client denied by server configuration: /var/www/vogel-noot/public_html/core/docs/changelog.txt
[Thu Nov 29 10:18:11.233399 2018] [php7:notice] [pid 20340] [client 127.0.0.1:39848] PHP Fatal error:  Uncaught Error: Call to undefined method modX::deprecated() in /var/www/vogel-noot/public_html/core/model/modx/modmenu.class.php:119\nStack trace:\n#0 /var/www/vogel-noot/public_html/core/model/modx/modmenu.class.php(145): modMenu->getSubMenus('components')\n#1 /var/www/vogel-noot/public_html/core/model/modx/modmenu.class.php(66): modMenu->getSubMenus('topnav')\n#2 /var/www/vogel-noot/public_html/manager/controllers/default/header.php(242): modMenu->rebuildCache('topnav')\n#3 /var/www/vogel-noot/public_html/manager/controllers/default/header.php(150): TopMenu->getCache('topnav')\n#4 /var/www/vogel-noot/public_html/manager/controllers/default/header.php(81): TopMenu->buildMenu('topnav', 'navb')\n#5 /var/www/vogel-noot/public_html/manager/controllers/default/header.php(363): TopMenu->render()\n#6 /var/www/vogel-noot/public_html/core/model/modx/modmanagercontroller.class.php(290): include_once('/var/www/vogel-...')\n#7 /var/www/vogel-noot/public_html/core/model/modx/modmanagercontroller.class.php(483): modManagerControll in /var/www/vogel-noot/public_html/core/model/modx/modmenu.class.php on line 119, referer: http://vogel-noot/manager/
Что-то не заработало.
1. Создал класс myCartHandler.php в /core/components/minishop2/custom/cart/myCartHandler.php
2. Написал регистрацию в консоли:
if ($miniShop2 = $modx->getService('miniShop2')) {
    $miniShop2->addService('cart', 'myCartHandler',
        '{core_path}components/minishop2/custom/cart/myCartHandler.php'
    );
}
3. Написал callback в /assets/templates/vogelundnoot/js/customCart.js
4. Прописал его в /core/components/minishop2/elements/snippets/snippet.ms_minicart.php:
$modx->regClientScript('/assets/templates/vogelundnoot/js/customCart.js');
(я в середине файла прописал).

Кэш сайта сбрасывал. Но что-то не заработало. В миникорзине не отображается количество позиций в корзине.
«подключаем после файла default.js (стандартный файл минишопа) любый удобным для вас способом»

подключил свой js в настройках minishop2, где параметр «скрипты фронтенда». Получилась такая строка:
[[+jsUrl]]web/default.js, /assets/templates/vogelundnoot/js/customCart.js

в консоли браузера выводится сообщение: «Загрузка script по адресу «http://vogel-noot/assets/components/minishop2/js/web/default.js,%20/assets/templates/vogelundnoot/js/customCart.js?v=5784beb5e7» не удалась.»

В браузере нажимаешь на «купить» страница перезагружается, и в корзине общее количество товара (например, 3 штуки), а не количество позиций.