DrupalでURLエイリアスをもとにテンプレートをアレンジ。
URLエイリアスで指定したパスをもとに、テンプレートで表示方法をアレンジする方法です。個別にCSSでデザインを変更したい場合などに応用できます。
テーマ内「template.php」で、ページテンプレートのプリプロセスとして、自身のURLエイリアスをスラッシュで区切って、それぞれを配列に格納しておきます。
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; } } ?> |
上記で「page.tpl.php」テンプレート内で「parts」という変数名で、配列を利用できます。
1 2 3 4 |
<?php print_r($parts); //例:Array ( [0] => company [1] => about-us ) ?> |