エントリー一覧を動的に件数表示変更するには

「まったく何も分からない・・・」そんなユーザーさんの為のフォーラムです。どんなご質問でもお気軽にどうぞ。
返信
okakensanta
アクティブユーザー
記事: 26
登録日時: 2006年8月29日(火) 10:28

エントリー一覧を動的に件数表示変更するには

投稿記事 by okakensanta » 2007年7月23日(月) 10:33

お世話になっております。
もしできればの話なんですが、
エントリー一覧にて、動的に件数表示変更する方法はないでしょうか?

プルダウンで、
20件
30件
40件
50件



みたいな感じで、
動的に変化させたいのですが、どうでしょうか?
いくつかのページに埋め込みタグを入れ、
そのページの表示件数を変えて、スクリプトで切替ればできるのは
わかるのですが、動的にできたらな〜と思いまして。

お忙しい中すみません。
よろしくお願い致します。

webmaster
Site Admin
記事: 1451
登録日時: 2004年12月10日(金) 10:09

Re: エントリー一覧を動的に件数表示変更するには

投稿記事 by webmaster » 2007年7月23日(月) 16:59

 okakensantaさん、いつもご質問ありがとうございます。

 rowsの部分をPHPスクリプトを使って出力することで可能かと思います。
 'rows'という名前のGETパラメータを使っているので、それに合わせて
ドロップダウンメニューを構築して下さい。POSTがいい場合には、$_GETを
$_POSTに変えて下さい。

 いちおう、セキュリティを考慮したものになっていますが、パッと作ったもの
ですので見落としなどあるかもしれません。内容の保証は致しかねますので、
その点ご了承下さい。

 尚、動作確認していない為、記述間違いなどあるかもしれません。
 エラーなど出ましたら、ご連絡下さい。m(__)m

1. 次のソースを該当ページの適当な箇所に挿入(埋め込みタグより前の部分に)

コード: 全て選択

<?php
// rowsパラメータをGETパラメータとして取得。
$rows = '';
if ( isset( $_GET['rows’] ){
	$rows = $_GET['rows'];
}

// 数値のみで構成されていれば、数値変換する。不正な文字が使われていた場合はデフォルト値を設定する。
if ( $rows == '' || preg_match('/[^0-9]/', $rows ) === 1 )
{
	$rows = 10;	// default value
}
else
{
	$rows = intval( $rows );
}

?>
2. 埋め込みタグを次のようにする。

コード: 全て選択

<cmsd:entrylist name="xxxx" design="default" rows="<?php echo $rows; ?>" />

okakensanta
アクティブユーザー
記事: 26
登録日時: 2006年8月29日(火) 10:28

ご返答ありがとうございます。

投稿記事 by okakensanta » 2007年7月25日(水) 11:47

ご返答ありがとうございます。
さっそく実践してみます。

返信