Drupalで表示しているページのパスを配列で取得。
Drupalで表示しているページのパスをスラッシュで分割し、各パートを配列で取得するスクリプトのメモです。
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php function THEMENAME_preprocess_page(&$variables) { $alias = drupal_get_path_alias($_GET['q']); if (strpos($alias, '/') !== false) { foreach (explode('/', $alias) as $part) { $variables['parts'][] = $part; } } else { $variables['parts'][] = $alias; } } ?> |
テーマの中の「template.php」にページのプリプロセスとして以下のように記述すると、ページのテンプレート(page.tpl.php)内で「$parts」という変数名で利用できます。
1 2 3 4 5 6 7 8 9 |
print_r($parts); /* Array ( [0] => article [1] => 1 ) */ |
URLエイリアスごとに表示方法をカスタマイズしたい場合に有効です。