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


8

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

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

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

Спасибо.

Ответы:


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, чтобы проверить это, когда вам это нужно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.