Forums / National / Russian / Тех. поддержка / Вставка JS на определенной странице

Вставка JS на определенной странице

Leshkens
#42426 2016-11-24 18:12

Я на самом деле так и не понял как грамотно проверять условия подключения в файле theme.rc.php. Ведь переменная $env там не работает. Проверять по URL как предложил Roffun?

Добавлено 3 дня спустя:

Разобрался. Разделы в theme.rc.php можно проверять например вот так:

if ($_GET['с'] == 'portfolio') {
  Resources::linkFile($cfg['themes_dir'].'/'.$usr['theme'].'/css/portfolio.css');
}

Здесь в разделе "porfolio" (и корневых страницах) грузим файл стилей portfolio.css. В подразделах работать не будет, потому что подразделы нужно проверять непосредственно.

 

Модули или плагины можно проверять так:

if ($_GET['e'] == 'page') {
  Resources::linkFile($cfg['themes_dir'].'/'.$usr['theme'].'/css/page.css');
}

Здесь во всех разделах и страницах модуля page будет грузиться файл page.css.

 

Проверять по URI (например если нужно загружать файл стилей и в подразделах) можно вот так:

if (mb_strpos($sys['uri_curr'], 'studio') !== false) {
  Resources::linkFile($cfg['themes_dir'].'/'.$usr['theme'].'/js/studio.js');
}

Здесь везде, когда в URI есть "studio", будет подгружаться файл studio.js. Например http://test.dev/studio/portfolio/sites

 

По алиасу страницы:

if ($_GET['al'] == 'big-hall') {
  Resources::linkFile($cfg['themes_dir'].'/'.$usr['theme'].'/css/big-hall.css');
}

 


Dit bericht is bewerkt door Leshkens (2016-11-27 20:34, 8 jaren ago)