Запретить внешний js на определенных страницах

loed
На сайте с 10.03.2007
Offline
188
1727

Доброго дня, помогите решить задачу:

нужно запретить подгружать внешний Js на определенных страницах сайта (их не более 10). Этот код находится в сайдбаре на всех страницах сайта.

Код подгружается так:

<script src='https://ruspo.ru/v3/js/module-loader.js?ModuleID=28046&moduleType=fs&from=1149&where=108&color=blue&bg=FFFFFF&round=0&exp=0&fli=1&ph=1&currency=0&url=http%3A%2F%2Fwww.intast.ru%2Ftourinfo%2Fpoisk-turov.php&gourl=1'></script><div style='min-height:244px; width: 100%; background: url(https://ruspo.ru/v2/images/130.gif) no-repeat 50% 50% #F4F4F5;' id='divASContainer' class="pop-poisk"></div> 

Может быть вынести этот код в отдельный файл и как то запрещать его в такой конструкции?

<?include ($_SERVER['DOCUMENT_ROOT'].'/js.php');?>

CP
На сайте с 12.08.2009
Offline
101
#1

Ну если прям в лоб, то небольшой лоадер написать, который берет адрес страницы, сравнивает с списком и принимает решение подгружать или нет.

Профессиональный frontend: JS, html,css, Single-Page App (/ru/forum/964386)
loed
На сайте с 10.03.2007
Offline
188
#2
Content-pro:
Ну если прям в лоб, то небольшой лоадер написать, который берет адрес страницы, сравнивает с списком и принимает решение подгружать или нет.

напишите за вознаграждение?

Z0
На сайте с 03.09.2009
Offline
756
#3

Топорно, то так:

if( $_SERVER['REQUEST_URI']=='/test1.php?123'  || 
$_SERVER['REQUEST_URI']=='/test1.php?124' ||
...
$_SERVER['REQUEST_URI']=='/test1.php?12n'
)
{
include ($_SERVER['DOCUMENT_ROOT'].'/js.php');
}
D.iK.iJ
На сайте с 26.05.2013
Offline
224
#4

Если страниц с исключениями мало, можно именно их и прописать (и !== использовать).

Адаптивный дизайн в 2 строчки ( https://dikij.com/wm/adaptaciya-saytov.php ). + Принимаю заказы любой сложности ( https://searchengines.guru/ru/forum/926323 ). 💎 Еще я делаю классные кулоны с опалами ( https://mosaicopal.ru/ ).
loed
На сайте с 10.03.2007
Offline
188
#5
ziliboba0213:
Топорно, то так:
if( $_SERVER['REQUEST_URI']=='/test1.php?123'  || 
$_SERVER['REQUEST_URI']=='/test1.php?124' ||
...
$_SERVER['REQUEST_URI']=='/test1.php?12n'
)
{
include ($_SERVER['DOCUMENT_ROOT'].'/js.php');
}

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

Staid
На сайте с 30.07.2014
Offline
59
#6

loed, вроде так должно работать:


$pages = array(
'/page_1',
'/page_2',
'/page_3',
'/page_4',
);

if(!in_array($_SERVER['REQUEST_URI'], $pages)){
include ($_SERVER['DOCUMENT_ROOT'] . '/js.php');
}
loed
На сайте с 10.03.2007
Offline
188
#7
Staid:
loed, вроде так должно работать:

$pages = array(
'/page_1',
'/page_2',
'/page_3',
'/page_4',
);

if(!in_array($_SERVER['REQUEST_URI'], $pages)){
include ($_SERVER['DOCUMENT_ROOT'] . '/js.php');
}

спасибо, работает.... правда забыл указать что один из запрещенных урл динамический такого вида

/poisk-turov.php?&sr=%7B%22from%22:%221149%22,%22where%22:%22108%22,%22startdate%22:%2224.06.2017%22,%22enddate%22:%2216.07.2017%22,%22nightsfrom%22:%227%22,%22nightsto%22:%2214%22,%22adults%22:%222%22,%22children%22:%220%22,%22categorymore%22:%5B%221%22%5D,%22category%22:%221%22,%22foodmore%22:%5B%221%22%5D,%22food%22:%226%22,%22minprice%22:%220%22,%22maxprice%22:%221000000%22,%22currency%22:%220%22,%22fli%22:%5B%221%22%5D,%22searchtext%22:%22%22,%22ph%22:%5B%221%22%5D,%22resorts%22:%5B%5D,%22hotels%22:%5B%5D,%22operators%22:%5B%5D,%22light%22:%221%22,%22splus%22:%221%22%7D&start=1
Staid
На сайте с 30.07.2014
Offline
59
#8

loed, с регуляркой должно работать.


// Обрезаем в урл знак вопроса и все что после него
$uri = preg_replace('|\?.*|', '', $_SERVER['REQUEST_URI']);

$pages = array(
'/poisk-turov.php',
'/page_2',
'/page_3',
'/page_4',
);

if(!in_array($uri, $pages)){
include ($_SERVER['DOCUMENT_ROOT'] . '/js.php');
}
loed
На сайте с 10.03.2007
Offline
188
#9
Staid:
loed, с регуляркой должно работать.


// Обрезаем в урл знак вопроса и все что после него
$uri = preg_replace('|\?.*|', '', $_SERVER['REQUEST_URI']);

$pages = array(
'/poisk-turov.php',
'/page_2',
'/page_3',
'/page_4',
);

if(!in_array($uri, $pages)){
include ($_SERVER['DOCUMENT_ROOT'] . '/js.php');
}

спасибо, то что надо, вроде все работает

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