Вы здесь

Показывать/не показывать блок для терминов и/или URL

Показывать блок если совпадают термины (1, 2, 4) и/или URL (news):

<?php
$desired_terms
= array(1, 2, 4);
$desired_path = 'news';
if (
arg(0) == 'node' and is_numeric(arg(1)) ) {
   
$node = node_load(arg(1));
       foreach (
$node->taxonomy as $term) {
        if (
in_array($term->tid, $desired_terms)) {
            return
TRUE;
        }
    }
}
if (
$_GET['q']) {
   
$my_drupal_path = $_GET['q'];
} else {
   
$my_drupal_path = substr($_SERVER['REQUEST_URI'], 1);
}
$my_path_alias = drupal_get_path_alias($my_drupal_path);
if (
stristr($my_path_alias, $desired_path)) {
    return
TRUE;
}
return
FALSE;
?>

Не показывать блок если совпадают термины (1, 2, 4) и/или URL (news):

<?php
$desired_terms
= array(1, 2, 4);
$desired_path = 'news';
if (
arg(0) == 'node' and is_numeric(arg(1)) ) {
   
$node = node_load(arg(1));
      foreach (
$node->taxonomy as $term) {
        if (
in_array($term->tid, $desired_terms)) {
            return
FALSE;
        }
    }
}
if (
$_GET['q']) {
   
$my_drupal_path = $_GET['q'];
} else {
   
$my_drupal_path = substr($_SERVER['REQUEST_URI'], 1);
}
$my_path_alias = drupal_get_path_alias($my_drupal_path);
if (
stristr($my_path_alias, $desired_path)) {
    return
FALSE;
}
return
TRUE;
?>

Комментарии

Изображение пользователя Brun

Мне нужно вывести блок (есть кусок кода) не некоторые страницы. Этот кусок мне подходит но он выводит цыфру 1
Как и куда мне вставить кусок своего кода в этот, чтобы он показывался?

Изображение пользователя Феликс

$desired_terms = array(3);
$desired_path = 'taxonomy/term/3';

кроме 3-го термина срабатывает 30, 31, 32....и 39. Аналогично для 4-термина, и тд. Пытался после тройки поставить запятую, - не помогло. (Д6)