fancybox и shopkeeper3 конфликт - решениеВ общем мучился я мучился с этим долго, и в конце концов, решение было найдено и оно такого - желательно на сайте использовать модули, которые используют например: только новые версии jquery, или наоборот только старые, но в основном бывает первый вариант и мне пришлось все таки обновить fancybox до 3 версии - ссылка почему-то на их сайте не видна, поэтому дублирую тут:
http://fancyapps.com/fancybox/3/А что у меня получилось можно посмотреть тут:
http://crystallise.ru/catalog/galogen/все что ниже это только ближе к фантазии, так может быть можно подобрать выход, но скорее всего только в старой версии shopkeeper, а в 3 версии уже вряд ли получится.
-------------------------------
Все знают, что с jquery в modx бывают проблемы, я сам помучился с этой проблемой более 10 часов точно (несколько проблем в разное время) и пришло небольшое понимание:
Если вам нужна на сайте более старая версия jquery и по новее, то должно быть так:
по порядку:
1)
подключение сперва более новой версии jquery и соответственно после нее подключается скрипт, который решает эту задачу, в данном случае у меня это shopkeeper3
(хотя тут я взял универсальный какой-то скрипт cdn jquery от Google) и с ним все работает
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript" src="/assets/components/shopkeeper3/web/js/lang/ru.js?v=3.2.6"></script>
<script type="text/javascript" src="/assets/components/shopkeeper3/web/js/shopkeeper.js?v=3.2.6"></script>
2)
и только потом подключаю версию jquery (более старую, с которой работает fancybox) и сам скрипт fancybox.
<script type="text/javascript" src="/assets/templates/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<script type="text/javascript" src="/assets/templates/js/script.js"></script>
Пока я не нашел супер решение, и это все подключается в head части сайта, знаю, что надо в футере, но пока не разобрался как это делает modx revo.
То есть для решения своей задачи и чтобы fancybox заработал, я сперва в подвале вырезал тот код, который выдает шопкипер, потом в сниппете shopkepper3 закомментил их вывод:
/*if( !$modx->getOption('noJQuery', $scriptProperties, false) ){
$modx->regClientScript(SHOPKEEPER_URL . "web/js/jquery-3.1.1.min.js");
}*/
и это:
/*if( $optJsScripts != 2 ) {
$modx->regClientScript(SHOPKEEPER_URL . "web/js/lang/" . $modx->getOption('lang', $scriptProperties, 'ru') . ".js?v=" . $shopCart->getVersion());
$modx->regClientScript(SHOPKEEPER_URL . "web/js/shopkeeper.js?v=" . $shopCart->getVersion());
}*/
И только потом делал то, что выше - а именно подключал jquery