Вставка JS на определенной странице
| Leshkens |
|
|---|---|
|
Я на самом деле так и не понял как грамотно проверять условия подключения в файле 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');
}
Відредаговано: Leshkens (27.11.2016 20:34, 8 років тому) |