Pagerer
Drupalの標準ページャーを置き換えたり補完したりするための、拡張されたページャースタイルのコレクションを提供する設定可能なページャースタイルモジュール。
pagerer
インストール
composer require 'drupal/pagerer:^3.1'
composer require 'drupal/pagerer:8.x-2.3'
概要
Pagererは、DrupalおよびViewsの標準ページャーを強化するための設定可能なページャースタイルのコレクションを提供する包括的なページャー拡張モジュールです。管理者やサイトビルダーは、複数のページャー設定(プリセット)を事前に設定できます。各プリセットは、左、中央、右の3つのペインで構成できます。各ペインには利用可能な任意のページャースタイルを配置でき、複雑なページネーション要件を満たす広範な柔軟性を提供します。
このモジュールは、任意のプリセット設定でDrupalのコアページャーをグローバルにオーバーライドするか、含まれているViewsページャープラグインを通じて特定のViews内で個別のプリセットを使用できます。Pagererは標準のDrupalページャーCSSクラスを使用するため、既存のテーマとのCSSスタイリング互換性が確保されています。
主な機能には、ページ番号、アイテム、またはアイテム範囲の表示、段階的に遠いページへのリンク(+10、+100、+1000など)、二分探索のようなナビゲーションでターゲットページに絞り込むアダプティブロジックリンク、カスタマイズ可能なテキストセパレーターとブレーカー、Views AJAXページャーのサポート、URLクエリ文字列でページ番号を0ではなく1から開始する機能が含まれます。
Features
- 左、中央、右のペインでそれぞれ異なるページャースタイルを配置できるマルチペインページャーシステム
- 5つの組み込みページャースタイル:Standard(Drupalコアと同様)、Progressive(段階的に遠いページへのリンク)、Adaptive(二分探索のようなナビゲーション)、Basic(Viewsミニページャーと同様)、Multipane(複合スタイル)
- 無制限に保存可能なページャー設定を持つ設定可能なプリセットシステム
- グローバルコアページャー置換 - 任意のプリセットでDrupalの標準ページャーをサイト全体で置き換え
- Viewsページャープラグイン統合 - 異なるViewsに異なるPagererプリセットを使用
- 表示モード:ページ、アイテム、またはアイテム範囲をカスタマイズ可能なテキストラベル付きで表示
- 柔軟な表示ルールを持つ設定可能な最初/前/次/最後のナビゲーションリンク
- URLクエリ文字列のカスタマイズ - カスタムパラメータ名('page'の代わりに'pg'など)と1ベースのページインデックスを使用
- Views AJAXページャーのサポート
- 設定可能なリーダーテキストによるスクリーンリーダーサポートを備えたアクセシブルなデザイン
- 翻訳可能なタグ設定による完全なテキストカスタマイズ
- 設定可能な表示を持つページセパレーターとブレーカー
Use Cases
サイト全体のページャーを拡張ナビゲーションに置き換え
Pagererを使用して、すべてのページでDrupalのデフォルトページャーをより機能豊富な代替物に置き換えます。希望のスタイル(例:大規模データセット用のProgressive)でプリセットを設定し、Pagerer設定でコアページャー置換として選択します。
異なるViewsに異なるページャー
異なる使用ケースに合わせた複数のPagererプリセットを作成します。数千のアイテムを持つ商品カタログには、+10、+100ページへのリンクを持つProgressiveスタイルを使用します。ブログアーカイブには、Basicスタイルを使用します。各プリセットを適切なViewに割り当てます。
SEOフレンドリーな1ベースのページURL
よりユーザーフレンドリーでSEOフレンドリーなURLのために、1ベースのページインデックス(page=0の代わりにpg=1)を使用するようにURL設定を構成します。また、よりクリーンなURLのためにパラメータ名を'page'から'pg'にカスタマイズします。
ナビゲーションと情報を持つマルチペインページャー
左ペインにBasicスタイル(前/最初のナビゲーションを表示)、中央にStandardスタイル(ページ番号を表示)、右ペインにBasicスタイル(次/最後のナビゲーションとアイテム数を表示)を持つプリセットを作成します。これにより、包括的なナビゲーション情報が提供されます。
Adaptiveスタイルによる大規模データセットナビゲーション
ユーザーが特定のページをすばやく見つける必要がある非常に大規模なデータセットには、Adaptiveスタイルを使用します。これは、アダプティブリンクをクリックすると範囲が段階的に狭まり、ターゲットページに到達する二分探索アプローチを使用します。
ページの代わりにアイテムを表示
表示オプションを'items'または'item_ranges'に設定して、'100ページ中1ページ'の代わりに'5000アイテム中1-50'を表示するようにページャーを設定します。これは、ページ番号よりもコンテンツ数に焦点を当てる場合に便利です。
Tips
- サンプルモジュール(pagerer_example)を使用して、/pagerer/exampleですべてのページャースタイルのライブデモを確認できます
- 係数'10'のProgressiveスタイルは、+10、+100、+1000ページ間隔のリンクを作成します - 非常に大規模なデータセットに便利です
- Adaptiveスタイルは、大規模なデータセットで特定のページを見つける必要があるが、正確なページ番号がわからない場合に最適です
- テキストラベルをカスタマイズする際は、動的な値に@number、@total、@item_low、@item_high、@total_itemsなどのプレースホルダーを使用してください
- 各ペインは異なる表示モードを持つことができます - 中央にページを表示し、サイドペインにアイテム数を表示できます
- アクセシビリティのために、スクリーンリーダーユーザーに意味のある説明を提供するreader_text値を設定してください
Technical Details
Admin Pages 5
/admin/config/user-interface/pagerer
作成されたすべてのページャープリセットをライブプレビュー付きでリストし、Drupalのコアページャーをグローバルに置き換えるプリセットを選択できるPagererのメイン設定ページ。
/admin/config/user-interface/pagerer/url_settings
Drupalの標準'page'パラメータをカスタム形式でオーバーライドするURLクエリ文字列パラメータ設定を構成します。
/admin/config/user-interface/pagerer/preset/add
新しいPagererプリセット設定を作成します。
/admin/config/user-interface/pagerer/preset/manage/{pagerer_preset}
各ペインのスタイルを選択してPagererプリセットの3つのペイン(左、中央、右)を設定します。設定されたページャーのライブプレビューが含まれます。
/admin/config/user-interface/pagerer/preset/manage/{pagerer_preset}/pane/{pane}
表示オプション、リンク動作、セパレーター、テキスト文字列を含む特定のペインのスタイル設定の詳細設定フォーム。
Hooks 2
hook_pagerer_style_plugin_info_alter
モジュールがPagererスタイルプラグイン定義を変更できるようにします
hook_element_info_alter
Pagererはこのhookを使用して、コアページャーをオーバーライドするよう設定されている場合にコアページャー要素のテーマをpagererテーマに置き換えます
Troubleshooting 4
Pagerer設定を変更した後、すべてのキャッシュをクリアしてください。このモジュールはキャッシュされるレンダー要素システムにフックします。
URL設定で'URLクエリ文字列'チェックボックスを有効にして設定を保存したことを確認してください。その後、キャッシュをクリアしてください。
プリセットはViewsページャー設定に表示される前に作成して保存する必要があります。まずPagerer管理画面でプリセットを作成してから、Viewを設定してください。
ペイン設定の'制限'設定を確認してください。'2ページ以上'に設定されていて、結果が1ページしかない場合、ページャーは表示されません。