функция arg не использует псевдоним URL - PullRequest
2 голосов
/ 26 апреля 2010

Я использую Drupal 6 и использую PHP для видимости блока.

<?php
$city = arg(0);
$page = arg(1);

if ($city == 'tampa' && $page != 'art'){
return 'TRUE';
}
else{
return FALSE;
}
?>

У меня были проблемы с этим блоком кода, поэтому я решил вставить:

<?php print arg(0).arg(1); ?>

в моей page.tpl.php. Я обнаружил, что на некоторых из моих страниц arg (0) показывал «узел», когда URL-адрес фактически «тампа», и, конечно, arg (1) показывает идентификатор узла.

Однако на других страницах, таких как мой календарь, arg (0) фактически показывает 'тампа' вместо 'node'.

Я много раз использовал это в прошлом, и у меня никогда не было этой проблемы. Есть ли причина, по которой Drupal игнорирует мои псевдонимы на определенных страницах? Если так, как я могу это исправить?

1 Ответ

1 голос
/ 29 апреля 2010

Я не получил никаких ответов по этому поводу, но я разработал хак.

$path = 'node' . "/" . $node->nid;
drupal_get_path_alias($path);

оттуда я смог использовать функции синтаксического разбора строк PHP, чтобы получить фактический псевдоним.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...