Home
   
ブックマークに登録
 

メインメニュー
Home
お知らせ
とりあえず何でもメモ
FAQs
日々是Blog
ショップ
ヘッドライン
検索
リンク
Contact
サイトマップ
R34GTR.NETとは?
Joomla!ライセンス
引き続きコンテンツ
設定・インストールメモ
何故かPHP
CAR
最新ニュース
最新ニュース
人気記事
人気記事
誰がいますか
現在
ゲスト $guest_array 名
がオンラインです
統計
OS: Linux n
PHP: 5.1.6
MySQL: 5.0.77
時間: 07:38
Caching: Disabled
GZIP: Disabled
メンバー: 2
ニュース: 173
ウェブリンク: 41
訪問者: 1014663
ログインフォーム





パスワードを忘れました?
未登録ですか? 新規登録
RSS配信
広告
当サイトの閲覧には
Firefoxを推奨します。


 
WebRing
GTROC WebRing
prev5 prev random next next5 ranking join join Web Ring
 
Flet's WebRing
ホームへ 前へ ランダム リスト 次へ
 
自宅サーバーWebRing
自宅サーバーWebRing
  乱移動サイト一覧

|ID=240 前後5表示
 
カテゴリリストでの表示順序の追加 プリント メール
作者 Web Master   
2005/11/16 水曜日 12:52:34 JST

Joomla!でコンテンツを公開するとき、指定のカテゴリーをメニューに追加できます。

表示の仕方は、Blogパターンとテーブルパターンが選べますが、テーブルパターンの時は表示順序を変える機能があります。

表示順序は、デフォルトで’日付’、’タイトル’、’観覧数’、’作者’で並び替えができるようになっています、そこで、

この順序選択に、標準でコンテンツテーブルにあるフィールドで、並び替えができるように変更してみようと思います。

お断り:
当変更は、Joomla!の標準機能を変更しますので、バージョンアップやパッチ適用には
対応しておりません。
また、動作についても無保証ですので、全て自己責任でお願いします。
 

修正内容としては、ドロップダウンリスト上にソート項目を追加することと、実際にその順番でデータを読み出すよう

にすることの2項目となります。

Joomla!インストールディレクトリ直下/components/com_contentにあるcontent.phpに手を加える。

content.phpの457行目ぐらいに
	if ( $params->get( 'author' ) ) {
$order[] = mosHTML::makeOption( 'author', _ORDER_DROPDOWN_AUA );
$order[] = mosHTML::makeOption( 'rauthor', _ORDER_DROPDOWN_AUD );
$check .= 1;
}
----- 以下略 -----

という箇所があるので、このすぐ後に
    (例として、セクションIDでソートできるようにした場合)
// add start
$order[] = mosHTML::makeOption( 'sectionid', _ORDER_DROPDOWN_SCA );
$order[] = mosHTML::makeOption( 'rsectionid', _ORDER_DROPDOWN_SCD );
// add end
追加します。置き換えではありませんので、気をつけてください。コメントはあってもなくても結構です。
これで、ドロップダウンリスト上にsectionidの昇順と降順を表示するようになります。
ただ、このままだと_ORDER_DROPDOWN_SCA、_ORDER_DROPDOWN_SCDと表示され
ちゃいますが、それについては、後で述べます。

さらに1689行目ぐらいの
		case 'front':
$orderby = 'f.ordering';
break;
default:
$orderby = 'a.ordering';
break;

         ----- 以下略 -----

を、以下のように変更します。

case 'front':
$orderby = 'f.ordering';
break;
// add start
case 'sectionid':
$orderby = 'a.sectionid';
break;

case 'rsectionid':
$orderby = 'a.sectionid DESC';
break;
// add end
default:
$orderby = 'a.ordering';
break;

この変更で、テーブルから読み込む際に、sectionid昇順と降順のそれぞれで読み込むようにできます。
ここまでで、表示順序を新たに加える変更は完了ですが、上で書いたように、ドロップダウンリスト上の表示が
_ORDER_DROPDOWN_SCAとかでは調子悪いので、これをちゃんとした表示にするには、
ランゲージファイルに手を加える必要があります。
ランゲージファイルは、Joomla!インストールディレクトリ直下/language/にあります。
その中から、現在使用中のランゲージファイルに対して修正を加えます。
Joomla!インストールディレクトリ直下/languageにあるjapanese.phpに手を加える。(日本語を使用している場合)
259行目辺りに以下のようなところがあります。

DEFINE('_ORDER_DROPDOWN_DA','日時 昇順');
DEFINE('_ORDER_DROPDOWN_DD','日時 降順');
DEFINE('_ORDER_DROPDOWN_TA','タイトル 昇順');
DEFINE('_ORDER_DROPDOWN_TD','タイトル 降順');
DEFINE('_ORDER_DROPDOWN_HA','観覧数 昇順');
DEFINE('_ORDER_DROPDOWN_HD','観覧数 降順');
DEFINE('_ORDER_DROPDOWN_AUA','作者 昇順');
DEFINE('_ORDER_DROPDOWN_AUD','作者 降順');
DEFINE('_ORDER_DROPDOWN_O','並び替え');
----- 以下略 -----
これに下のような追加を行います。

DEFINE('_ORDER_DROPDOWN_DA','日時 昇順');
DEFINE('_ORDER_DROPDOWN_DD','日時 降順');
DEFINE('_ORDER_DROPDOWN_TA','タイトル 昇順');
DEFINE('_ORDER_DROPDOWN_TD','タイトル 降順');
DEFINE('_ORDER_DROPDOWN_HA','観覧数 昇順');
DEFINE('_ORDER_DROPDOWN_HD','観覧数 降順');
DEFINE('_ORDER_DROPDOWN_AUA','作者 昇順');
DEFINE('_ORDER_DROPDOWN_AUD','作者 降順');
DEFINE('_ORDER_DROPDOWN_SCA','セクションID 昇順');
DEFINE('_ORDER_DROPDOWN_SCD','セクションID 降順');
DEFINE('_ORDER_DROPDOWN_O','並び替え');
----- 以下略 -----
これで、ドロップダウンリストの表示も変わるはずです。
これで、新たに表示順序を追加することはできましたが、その項目は表示されていません。
表示順序に追加したものも、アイテムリストに追加する変更については、また別途。
最終更新日 ( 2005/11/16 水曜日 17:19:53 JST )
 
次へ >
PR情報
プロダクト・ピックアップ
数量限定オムロン カーモニ200R
数量限定特価 オムロン カーモニ200R
23,940 円(税込)
中堅機種の「カーモニ200R」は音圧センサにより、「ドア開」「窓の破壊」「強い衝撃」の3種類の車両異常を検知したときに警告フラッシュと最大110dBの大音量アラームで不審者を威嚇!
更に読む...
 
 
 
 
 
2012/02/06 月曜日 07:38:51 JST
 
 
© 2012 R34GTR.NET
Joomla! is Free Software released under the GNU/GPL License.