各ページのコンテンツ一覧
- P1. ショートコードを利用するには?
- P2. 簡易目次機能を利用するには?
本プラグインには、投稿本文内に記述した [nextpage_link]...[/nextpage_link]
を簡易的な目次として表示するショートコードも含まれています。
投稿本文内(冒頭やページ区切りの後など)に
[nextpage_link_toc]
といったショートコードを記述することで、表示することができます。
出力される HTML は、詳細折りたたみ要素 DETAILS を使っていますので、必要に応じて閉じたり開いたりすることが可能です。また、テンプレートを使って HTML や CSS クラスなどを自由に変更することが可能です。
ショートコードパラメータの使用
本ショートコードで設定出来るパラメータは下記の通りです。
パラメータ | 解説 |
---|---|
open |
DETAILS タグを開いた状態で表示します。※デフォルトは、閉じた状態になります。 |
headline |
DETAILS>SUMMARY で表示する文言を指定できます。※デフォルトは、 目次 になります。 |
p1_title |
[nextpage_link]]...[[/nextpage_link] が存在しない1ページ目のリンク文字列を指定できます。※デフォルトは空文字列なので表示されません。 |
デフォルトで開いて表示する
目次を開いた状態で表示したい場合は、下記のショートコードを記述してください。
[nextpage_link_toc open="1"]
フィルターフックを使用して、サイト全体で設定を変更することができます。変更したい場合は functions.php
などに下記のコードを追加してください。
add_filter( 'nextpage_link_toc/shortcode_atts', function( $attr ) {
$attr['open'] = '1';
$attr['headline'] = '各ページのコンテンツ一覧';
return $attr;
} );
ラベルを変更する
DETAILS>SUMMARY
で表示する文言を変更したい場合は、下記のショートコードを記述してください。
[nextpage_link_toc open="1" headline="各ページのコンテンツ一覧"]
1ページ目のタイトルを指定する
[nextpage_link]]...[[/nextpage_link]
が存在しない1ページ目へのリンクは通常表示されませんが、パラメータ p1_title
を指定することで表示させることが出来ます。表示させたい場合は、下記のショートコードを記述してください。
※%post_title%
は、自動的に記事のタイトルで置換されます。
[nextpage_link_toc open="1" p1_title="ショートコードを利用するには?"]
レイアウトを変更する
本プラグインには、CSS を添付していませんので、お使いのテーマに合うように HTML を変更したい場合があるかと思います。その場合は、プラグインに添付されている layout-toc.php
をテーマの template-parts/nextpage-link/layout-toc.php
にコピーして、レイアウトを変更してください。
※お使いのテーマフォルダー内に template-parts/nextpage-link
が無い場合は、作成してください。
レイアウトは
{お使いのテーマ}/template-parts/nextpage-link/layout-toc.php
プラグイン添付の layout-toc.php
を順番にチェックして、ファイルが存在するレイアウトが適用されます。
レイアウト内で使用出来る変数は下記の通りです。
変数名 | 解説 |
---|---|
$args['data']['current'] |
現在のページ番号と一致する場合は true が返ります。 |
$args['data']['page_number'] |
現在のページ番号 |
$args['data']['title'] |
p1_title で指定した文字列※ %post_title% が含まれる場合は、置換後の文字列になります。 |
$args['data']['link'] |
ページネーション先の URL |
$args['shortcode']['attr']['xxxx'] |
ショートコードで指定したパラメータを呼び出せます。open, headline, p1_title |
$args['shortcode']['content'] |
null が常に返ります。 |