Admin Toolbar
デフォルトの Drupal Toolbar を改良されたドロップダウンメニューシステムに変換し、設定可能な動作とオプションの検索機能を備えた、すべての管理リンクへの高速かつ完全なアクセスを提供します。
admin_toolbar
インストール
composer require 'drupal/admin_toolbar:^3.6'
概要
Admin Toolbar は、デフォルトの Drupal Toolbar のユーザーエクスペリエンスを大幅に改善する、広く使用されている管理機能強化モジュールです。標準の管理メニューを階層的なドロップダウンメニューシステムに変換し、サイト管理者が複数のクリックや過度のスクロールなしに、すべての管理ページにすばやくアクセスできるようにします。
このモジュールは、Drupal Core の Toolbar 機能と緊密に統合することで、軽量なフットプリントを維持しています。設定可能なスティッキー動作、よりスムーズなメニュー操作のための hoverIntent サポート、ツールバー表示切り替えのキーボードショートカット、調整可能なメニュー深度設定を提供します。モジュールは、キャッシュクリアショートカット、Cron 実行、管理ページ検索用のオートコンプリート検索フィールドなどの追加機能を追加するコンパニオンサブモジュールで拡張できます。
Admin Toolbar は、ワークフロー全体を通じてさまざまな管理ページに頻繁にアクセスするコンテンツ編集者、サイトビルダー、管理者にとって特に価値があり、Drupal 管理インターフェースのナビゲーションに必要な時間を大幅に短縮します。
Features
- デフォルトの Drupal Toolbar を、クイックナビゲーション用のネストされたサブメニューを持つ階層的なドロップダウンメニューに変換
- 3つのオプションを持つ設定可能なスティッキー動作:常に表示、スクロールダウン時に非表示でスクロールアップ時に表示、または完全に無効
- 設定可能なタイムアウト設定により、誤ったメニューアクティベーションを防ぐ、よりスムーズなメニュー操作のための hoverIntent jQuery プラグイン統合
- ツールバーの表示を切り替えるキーボードショートカット(Alt + p)、localStorage を使用したページロード間での状態の永続化
- 表示するネストされたメニューレベル数を制御する設定可能な最大メニュー深度(1〜9レベル)
- 視覚的なカスタマイズのために、ルート名に基づいてメニューリンクに自動的に追加される CSS アイコンクラス
- アクセシビリティ向上のためにメニュー項目に追加されるリンク説明付き title 属性
- 設定変更保存時の自動メニュー再構築
Use Cases
開発中のクイック Cache クリア
Theme またはモジュールの開発中に、Admin Toolbar Extra Tools を使用して、すべての Cache をクリアせずに特定の Cache(CSS/JS、Twig、レンダー、Theme レジストリ)をすばやくクリアします。Drupal アイコンにカーソルを合わせ、「すべての Cache をフラッシュ」に移動し、クリアする特定の Cache を選択します。これにより、すべての Cache をクリアする場合と比較して大幅な時間を節約できます。
高速コンテンツタイプ管理
複数のコンテンツタイプを管理する場合、ドロップダウンメニューを使用して、複数のページをナビゲートすることなく、任意のコンテンツタイプの設定、Field 設定、フォーム表示、または View 表示にすばやくアクセスできます。構造 > コンテンツタイプにカーソルを合わせ、目的のコンテンツタイプと操作を選択するだけです。
検索による管理ページの検索
Admin Toolbar Search を有効にし、Alt+a を使用して検索フィールドにすばやくフォーカスします。「perf」のような部分的なページ名を入力してパフォーマンス設定を見つけたり、「cron」と入力して Cron 関連のページを見つけたりできます。オートコンプリートは、コンテキストのための完全なメニューパスとともに一致するページを表示します。
画面スペースの最大化
コンテンツの編集時やフルスクリーンモードで作業する場合、Alt+p を使用してツールバーを完全に非表示にします。復元するためのフローティングボタンが隅に表示されます。この設定はページロード間で保持されるため、コンテンツに集中する作業セッションに最適です。
ユーザーロールと権限の管理
ユーザー > ロールのドロップダウンから任意のユーザーロールの編集フォームまたは権限に直接移動できます。各ロールには、権限の編集と削除(カスタムロールの場合)のネストされたリンクが表示され、ロール一覧ページを経由する複数のクリックが不要になります。
Cron とアップデートの実行
ステータスレポートに移動することなく、Drupal アイコンメニューから直接 Cron 実行とアップデート実行リンクにアクセスできます。クイックメンテナンスタスクやアップデートのデプロイ後に便利です。
Tips
- Cache クリア、Cron、Entity 管理ショートカットを含む完全なエクスペリエンスのために Admin Toolbar Extra Tools を有効にしてください
- メニューの場所を覚えることなく、検索機能(Alt+a)を使用して任意の管理ページをすばやく見つけてください
- バランスの取れた応答性のために hoverIntent タイムアウトを 500ms(デフォルト)に設定してください。誤ってメニューを閉じてしまうことが多い場合は増やしてください
- 多くのネストされたメニュー項目でパフォーマンスの問題がある場合は、メニュー深度を 3 または 4 に減らしてください
- ツールバーの表示切り替え(Alt+p)は設定を記憶します。画面スペースを最大化する必要があるコンテンツ編集者に便利です
- Admin Toolbar はルート名に基づいて CSS クラスを自動的に追加するため、CSS 経由でカスタムアイコンを簡単に追加できます
- Admin Toolbar Tools のローカルタスク表示は、現在の Entity の編集/削除タブをツールバーに表示し、すばやくアクセスできます
Technical Details
Admin Pages 3
/admin/config/user-interface/admin-toolbar
Admin Toolbar モジュールのメイン設定ページ。管理者がツールバーのスティッキー動作、ホバー操作の hoverIntent 設定、キーボードショートカット、メニュー深度を設定できます。変更は保存後すぐに有効になり、メニュー Cache の再構築がトリガーされます。
/admin/config/user-interface/admin-toolbar-tools
Admin Toolbar Extra Tools サブモジュールの設定ページ。メニューに表示される Entity バンドルの数と、ローカルタスク(編集/削除タブ)をツールバーに表示するかどうかを制御します。
/admin/config/user-interface/admin-toolbar-search
Admin Toolbar Search サブモジュールの設定ページ。検索フィールドの表示モードとキーボードショートカットの利用可否を制御します。
権限 1
Hooks 4
hook_toolbar_alter
ツールバーの render array を変更して、Admin Toolbar の pre-render コールバックを注入し、設定に基づいて必要な JavaScript ライブラリをアタッチします。
hook_toolbar
hook_toolbar() を実装して、Admin Toolbar Tools(追加リンク、ローカルタスク)および Admin Toolbar Search(検索フィールド)のツールバー項目を追加します。
hook_entity_insert / hook_entity_update / hook_entity_delete
メニュー構造に影響を与える Entity(メニュー、ユーザーロール、Views、コンテンツタイプバンドル)が作成、更新、または削除されたときにメニューリンクの再構築をトリガーします。
hook_preprocess_menu
Admin Toolbar Links Access Filter が使用して、現在のユーザーがアクセス権を持たないメニューリンクを非表示にします。
Troubleshooting 6
すべての Cache をクリアし(管理 > すべての Cache をフラッシュ)、JavaScript がブロックされていないことを確認してください。ブラウザコンソールで JavaScript エラーを確認してください。Toolbar モジュールが有効になっていることを確認してください。
Admin Toolbar 設定で hoverIntent を無効にするか、タイムアウト値を調整してみてください。低いタイムアウト値(250〜500ms)はより素早い応答を提供します。
ブラウザ拡張機能、アクセシビリティツール、または他のモジュールとの競合を確認してください。重要な機能と競合する場合は、設定でショートカットを無効にしてみてください。
Admin Toolbar Tools 設定で「表示するバンドルサブメニューの最大数」を調整してください。デフォルトは 20 です。多くのコンテンツタイプを持つサイトでは増やし、パフォーマンス向上のためには減らしてください。
ユーザーが「Admin Toolbar Search を使用」権限を持っていることを確認してください。Admin Toolbar Tools を使用している場合、追加のリンクは最初の検索時に AJAX 経由でロードされます。初期ロードが完了するまでお待ちください。
このサブモジュールは Drupal 10.3 以降で非推奨です。アンインストールして、代わりに Core の改善されたメニューアクセス処理に依存してください。
Security Notes 5
- Admin Toolbar は Drupal の権限システムを尊重します。ユーザーはアクセス権を持つメニュー項目のみを表示します(Links Access Filter サブモジュール使用時に強化されます)
- Cache クリアと Cron 操作には「サイト設定の管理」権限が必要です
- CSRF Token がすべての Cache クリアと Cron ルートをクロスサイトリクエストフォージェリから保護します
- 検索エンドポイント(/admin/admin-toolbar-search)には「Admin Toolbar Search を使用」権限が必要です
- 管理ツールバーアクセスを信頼できないユーザーに付与しないでください。強力なサイト操作へのクイックアクセスを提供するためです