Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Не могу понять откуда подключается данный файл


Recommended Posts

Здравствуйте.

 

Есть сайт - ССЫЛКА на всех страницах подключается файл - https://yastatic.net/s3/front-maps-static/front-jsapi-v2-1/2.1.77-27/build/release/full-d3f34cc99c9c0dd436b9bc268e8dd6c17d0c711a.js

 

В модулях яндекс карт нет, в шаблоне в шапке он напрямую тоже не подключается, но выяснил, что он подключается через цикл:

 

<script src="<?php echo $script; ?>"></script>

 

Значит, он должен быть где-то в контроллерах. Но и там ничего нет. Не могу отыскать откуда он подключается, он вообще не нужен, а нагружает страницу на 600кб почти.

 

Помогите, как найти его?


Спасибо.

Надіслати
Поділитися на інших сайтах


4 минуты назад, xonar сказал:

Помогите, как найти его?

модификаторы посмотрите. Или в админ-панели, или в папке system
Также может подключаться какой-то модуль с выводом через схемы (макеты)

Змінено користувачем thentru
Надіслати
Поділитися на інших сайтах


15 минут назад, thentru сказал:

модификаторы посмотрите. Или в админ-панели, или в папке system
Также может подключаться какой-то модуль с выводом через схемы (макеты)

Спасибо, выяснил, что это модуль СДЭК подрубает карту.

Надіслати
Поділитися на інших сайтах


  • 3 weeks later...
On 10/15/2020 at 12:55 PM, xonar said:

Спасибо, выяснил, что это модуль СДЭК подрубает карту.

Друг, подскажи, где именно искать. Поиск по запросу yastatic в файлах модуля ничего не дает. Спасибо!

Надіслати
Поділитися на інших сайтах


34 минуты назад, RoboShop сказал:

Друг, подскажи, где именно искать. Поиск по запросу yastatic в файлах модуля ничего не дает. Спасибо!

Если официальный модуль сдэка, то скрипты он подключает в событии cdek_shipping_add_scripts. (catalog/controller/event/cdekshipping.php)

 

У себя использую "костыль" в этом месте 

if (isset($_GET['route'])){
if ($_GET['route'] == 'checkout/simplecheckout') {
....
}}

ну соответственно если корзина не симпл, то и роут нужно другой искать в GET

  • +1 1
Надіслати
Поділитися на інших сайтах

  • 4 weeks later...
On 11/5/2020 at 4:36 PM, iglin said:

Если официальный модуль сдэка, то скрипты он подключает в событии cdek_shipping_add_scripts. (catalog/controller/event/cdekshipping.php)

 

У себя использую "костыль" в этом месте 

if (isset($_GET['route'])){
if ($_GET['route'] == 'checkout/simplecheckout') {
....
}}

ну соответственно если корзина не симпл, то и роут нужно другой искать в GET

 

не понял, что нужно сделать? объясните пожалуйста "чайнику"

мне главное чтобы на главной странице этот скрипт не работал и не тормозил сайт, а на странице заказ пусть работает

Надіслати
Поділитися на інших сайтах


Только что, Nurik724 сказал:

не понял, что нужно сделать?

зависит от того какая "корзина" у вас используется. То что я написал в catalog/controller/event/cdekshipping.php оборачиваем подключение скриптов в функции addScripts в условие проверки пути по которому сейчас находится пользователь. В частности в этом примере скрипты которые нужны для сдэка будут выводиться только на странице оформления заказа Simple (checkout/simplecheckout)

public function addScripts() {
if (isset($_GET['route'])){
if ($_GET['route'] == 'checkout/simplecheckout') {
$this->document->addStyle('catalog/view/theme/default/stylesheet/sdek.css');
$this->document->addScript('//api-maps.yandex.ru/2.1/?lang=ru_RU&ns=cdekymap');
$this->document->addScript('catalog/view/javascript/sdek.js');
}}
}
  • +1 2
Надіслати
Поділитися на інших сайтах

15 минут назад, Nurik724 сказал:

ох спасибо большое!

Пока отвечал вам в голову пришло более элегантное решение)) В таблице oc_event найти запись с кодом cdek_shipping_add_scripts и повесить её на триггер запуска корзины (в частности для симплы - catalog/controller/checkout/simplecheckout/before).

Но это решение требует предварительно удалить из файлов сдека кривое добавление ивентов целыми пачками))

Надіслати
Поділитися на інших сайтах

  • 2 weeks later...
В 03.12.2020 в 21:34, iglin сказал:

Пока отвечал вам в голову пришло более элегантное решение)) В таблице oc_event найти запись с кодом cdek_shipping_add_scripts и повесить её на триггер запуска корзины (в частности для симплы - catalog/controller/checkout/simplecheckout/before).

Но это решение требует предварительно удалить из файлов сдека кривое добавление ивентов целыми пачками))

Куда блин копать с этими эвентами? :mellow:

Надіслати
Поділитися на інших сайтах


В 16.12.2020 в 19:28, Rodrigesdm сказал:

Куда блин копать с этими эвентами?

В файле admin\controller\extension\shipping\cdek.php перед 

$this->model_setting_event->addEvent('cdek_shipping_add_scripts''catalog/controller/common/header/before','event/cdekshipping/addScripts');

Добавить удаление ивентов 

$this->model_setting_event->deleteEvent('cdek_shipping_add_scripts');
        $this->model_setting_event->deleteEvent('cdek_shipping_success_order');
        $this->model_setting_event->deleteEvent('cdek_shipping_order_create');
        $this->model_setting_event->deleteEvent('cdek_shipping_order_history');
        $this->model_setting_event->deleteEvent('cdek_shipping_check_tariff_pvz');

Ну а саму строчку 

$this->model_setting_event->addEvent('cdek_shipping_add_scripts''catalog/controller/common/header/before','event/cdekshipping/addScripts');

Заменить на нужный ивент (в частности для симплы)

$this->model_setting_event->addEvent('cdek_shipping_add_scripts', 'catalog/controller/checkout/simplecheckout/before','event/cdekshipping/addScripts');

 

 

P.S. Уже после того как придумал ответ заново - нашёл тему из которой я брал этот ответ год назад)) Ни в коем случае не хотел воровать чужой ответ, просто реально уже забыл что и сам когда то это исправлял при помощи сообщества))

 

  • +1 1
Надіслати
Поділитися на інших сайтах

  • 2 weeks later...
В 20.12.2020 в 17:17, iglin сказал:

В файле admin\controller\extension\shipping\cdek.php перед 

$this->model_setting_event->addEvent('cdek_shipping_add_scripts''catalog/controller/common/header/before','event/cdekshipping/addScripts');

Добавить удаление ивентов 

$this->model_setting_event->deleteEvent('cdek_shipping_add_scripts');
        $this->model_setting_event->deleteEvent('cdek_shipping_success_order');
        $this->model_setting_event->deleteEvent('cdek_shipping_order_create');
        $this->model_setting_event->deleteEvent('cdek_shipping_order_history');
        $this->model_setting_event->deleteEvent('cdek_shipping_check_tariff_pvz');

Ну а саму строчку 

$this->model_setting_event->addEvent('cdek_shipping_add_scripts''catalog/controller/common/header/before','event/cdekshipping/addScripts');

Заменить на нужный ивент (в частности для симплы)

$this->model_extension_event->addEvent('cdek_shipping_add_scripts', 'catalog/controller/checkout/simplecheckout/before','event/cdekshipping/addScripts');

 

 

P.S. Уже после того как придумал ответ заново - нашёл тему из которой я брал этот ответ год назад)) Ни в коем случае не хотел воровать чужой ответ, просто реально уже забыл что и сам когда то это исправлял при помощи сообщества))

 

Большое спасибо за труды.
Вроде без ошибок и всё хорошо))

А в симплу зачем скрипты цеплять? Маленько не понимаю(

Змінено користувачем Rodrigesdm
Надіслати
Поділитися на інших сайтах


10 часов назад, Rodrigesdm сказал:

А в симплу зачем скрипты цеплять? Маленько не понимаю(

Эти скрипты нужны только при оформлении заказа - выбирать ПВЗ. По умолчанию подключение сделано на любой странице сайта когда загружается "шапка" сайта, но естественно это бесполезнаю фигня - их достаточно подгружать только в корзине. Соответственно если оформление заказа сделано через симплу, то так. Если через стандартную корзину, то 'catalog/controller/checkout/checkout/before' например. 

  • +1 1
Надіслати
Поділитися на інших сайтах

В 03.01.2021 в 15:17, iglin сказал:

Эти скрипты нужны только при оформлении заказа - выбирать ПВЗ. По умолчанию подключение сделано на любой странице сайта когда загружается "шапка" сайта, но естественно это бесполезнаю фигня - их достаточно подгружать только в корзине. Соответственно если оформление заказа сделано через симплу, то так. Если через стандартную корзину, то 'catalog/controller/checkout/checkout/before' например. 

Благодарю за пояснение!))

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.