ページが現在表示しているユーザーが管理者であると見なされるかどうかをどのように検出しますか?管理テーマを有効にすると、管理ページを認識できます。
私の場合、この条件が満たされ、ユーザーが「モジュールを管理」できる場合は、通知を印刷したいと思います。
これはpath_is_admin(current_path())
で実行できます。
たとえば、次のフック実装を使用できます。
function mymodule_init() {
if (user_access('administer modules') && path_is_admin(current_path())) {
drupal_set_message(t('Message'));
}
}
ダニエルの答えは現在のパスが「管理」であるかどうかを判断するのに正しいですが、管理テーマが使用されているかどうかをもっと直接確認したい場合(あなたの質問はあなたが探しているものについて少しあいまいなようです)、あなたは行うことができます…
global $theme;
if ($theme === variable_get('admin_theme', 'seven')) {
// …
}
…ただし、bootstrapプロセスの早い段階で、つまり$theme
が定義される前に実行しようとすると、失敗する可能性があります。
Drupal 8メソッドを探す場合:
if (\Drupal::service('router.admin_context')->isAdminRoute()) {
// …
}
(8.7.5の前処理関数および core-patchで使用 8.0でテスト済み)
管理テーマが使用されているかどうかを確認するには(Drupal 8の場合)使用できます
$theme_name = \Drupal::service('theme.manager')->getActiveTheme()->getName();
テーマ名を取得します。