Я нуб, так что не ругайте меня, если то, что я собираюсь написать, бесполезно болтать.
Я думаю, что вы не можете сделать это напрямую, если только не существует какого-нибудь умного модуля, который бы выполнял все неприятные запросы SQL, необходимые для проверки этого.
Информация об узле хранится в «узле» таблицы SQL и идентифицируется просто по NID (идентификатор узла, который является номером узла, который появляется после /? Q = узла / в адресе). Их псевдонимы, если таковые имеются, хранятся в таблице «url_alias», где вы можете найти столбцы «src» и «dst», идентифицирующие исходный и псевдонимный путь (например, src = 'node / 123', dst = 'my / URL / псевдоним). Ссылки меню можно найти в таблице «menu_links», где вы можете найти столбцы «menu_name» (машинное имя меню) и «link_path» (либо узел / ..., либо псевдоним).
Итак, вам нужно сделать следующее:
- получить NID текущего узла
- запросить "url_alias", если есть псевдоним для узла / NID, и извлечь его, в противном случае оставить узел / NID
- запросить в таблице «menu_links» определенный вами путь и получить «none» или машиночитаемое имя меню
Затем вы также можете запросить таблицу «menu_custom», чтобы проверить, какое понятное человеку имя меню вы определили.
В любом случае, это сложный запрос (несколько запросов?), И я не знаю MySQL, поэтому я не могу помочь вам с реальным кодом, который вам нужно будет использовать для проверки всего этого: P.