Обнаружить первую страницу в Drupal 6 с помощью JavaScript

8

Используя javascript в Drupal 6, есть ли способ определить, является ли текущая страница первой страницей? У меня есть пользовательский модуль Drupal 6, который выводит различные коды JavaScript в зависимости от того, является ли текущая страница главной страницей или нет. Он добавляет один файл javascript в drupal, поэтому мне нужно поставить галочку в javascript.

Сайт будет обслуживаться через кеш Varnish, поэтому я не хочу добавлять проверку в PHP, хотя знаю, что с этим было бы намного проще drupal_is_front_page().

Есть ли Drupal-родной способ сделать это? Предложения на основе jQuery будут высоко оценены.

Спасибо.

kaustavdm
источник

Ответы:

19

Обычно Drupal добавляет « передний » класс к элементу body любой страницы, выступающей в качестве главной страницы. Если page.tpl.php вашей темы печатает классы тела (то есть <body class="<?php echo $classes; ?>"), которым он, скорее всего, является (так и должно быть), тогда ваш javascript может проверить, имеет ли элемент body класс «front».

Итак, если предположить, что jQuery (потому что Drupal включает его), тогда вы сделаете:

if ($('body').hasClass('front')) { // do stuff...}
Александр
источник
Спасибо @ Александр! Получил это работает. Я думал слишком сложно :) Я думал, что могут быть некоторые нативные функции Drupal, когда я могу просто использовать селекторы jQuery.
kaustavdm
0

Распечатайте результат drupal_is_front_page () в переменную javascript, используя при необходимости форматирование json. И просто напишите функцию javascript, чтобы проверить это, когда вам это нужно.


источник