Welcome !! Now 2008.07.25 16:29 (JST)

Pagination Plugin (1.0a)

[ プラグイン ]

Pagination Plugin (1.0a) は導入すると、簡単な記述で、ドキュメントを分割することができます。Pagination Plugin (1.0.0) から派生した亜種ですが、1.0.0 で出ていた警告メッセージが解消されているようですので紹介します。

参考ページ:Pagination Plugin 1.0a

テスト環境

  • サーバ:さくらインターネット  
    • PHP 4.4.4
    • MYSQL 4.0.27
  • MODx: 0.9.6
  • Pagination Plugin (1.0a)

スタイルシートの追加

このプラグインは、以下のスタイルシートを利用します。任意の方法で、追加して下さい(クラス名は変更しないで下さい)。

.hidepage {display:none;}

利用する

プラグイン導入後、ドキュメントの区切りたい位置に {BREAK} と書きます。書いた位置に、ページ送りが現れます

<p>ページ目の内容。</p>
{BREAK}
<p>2ページ目の内容。</p>

パラメータ

プラグインコードの中のパラメータを変更することにより設定の変更が可能です。

$delimiter

ページを区切る文字列を指定します。デフォルト「{BREAK}」。

$tplLinkNext

「次へ」用のリンクテキストを指定します。デフォルトは以下です。

<a href="[+link+]" class="next">Next page ></a>

$tplLinkPrev

「前へ」用のリンクテキストを指定します。デフォルトは以下です。

<a href="[+link+]" class="prev">< Previous page</a>

$tplLinkNav

ページナビゲーション用のコードを指定します。デフォルトは以下です。

<div class="articleNav"> 
[+linknext+] 
[+linkprev+]
Page [+current+] of [+total+]
</div>

$tplPageHideOpen

表示しない範囲の始まりを指定します。デフォルトは以下です。

<div class="hidepage">

$tplPageHideClose

表示しない範囲の終わりを指定します。デフォルトは以下です。

</div>

インスタンス

以下のように記述した場合:

<p>ページ目の内容。</p>
{BREAK}
<p>2ページ目の内容。</p>

HTMLソースは以下のようになります。

1ページ目
<p>1ページ目の内容。</p>
<div class="hidepage">
<p>2ページ目の内容。</p>
</div>

<div class="articleNav"> 
<a href="/modx/modxsample/pagination_plugin_10a.html?page=2" class="next">Next page ></a> 
Page 1 of 2
</div>
2ページ目
<div class="hidepage">
<p>1ページ目の内容。</p>
</div>
<p>2ページ目の内容。</p>

<div class="articleNav"> 
<a href="/modx/modxsample/pagination_plugin_10a.html?page=1" class="prev">< Previous page</a>
Page 2 of 2
</div>

問題点と対処法

現状のままのコードですと、余分な「<div class="hidepage"></div>」がひとつ挿入されてしまいます。プラグインコードの以下の部分を修正することでこの問題を回避できます。

70行目付近
$a = $pip_pagecount + 1;
$a = $pip_pagecount;

△ページトップ