|
||||||||
![]() |
掲示板目次 > サポート > 設定に関する情報 |
|
|
投稿日時の年度の指定について |
|||
| ひろろん |
|
||||||
![]() 管理者 状態: オフライン ![]() 登録日: 2007年3月22日 投稿数: 104 |
こんばんは。ひろろんです。
Quote by: kata
augeさんが答えておられますが、公開領域にある lib-common.php を直接編集してやることで可能です。 lib-common.phpの4904行目あたりにあるCOM_getYearFormOptions関数の宣言部分を修正することで指定可能です。 たとえば、2000年~2010年にしたい場合は次のようになります。 PHP Formatted Code function COM_getYearFormOptions( $selected = '', $startoffset=-7, $endoffset=2 ) ※startoffset の値からさらに -1 されますので、その点もご注意下さい。 (+/-での指定ですので今年を基準に計算される点にも、ご注意下さい。) その他、見られた方がこんがらがらないように補足させていただきます。 Quote by: katoq
Geeklog1.4.1系なら、augeさんがおっしゃるwikiにあるようにfor構文をいじりますが、Geeklog1.5系からはfor構文をいじらないで出来るようになっていますので、(よしあしは別として)いじるべきではないと思います。 for 構文の-1についてはおっしゃるとおり、startoffsetが指定されず関数が呼ばれた場合にデフォルトで -1 になるように startoffset のデフォルトを 0 から -1 に変えるように本家に提案しておきます。 本家採用前に使いたい方は以下のコードにて該当の関数部分を書き換えてください。 (本家の方がGeeklog1.4.1のコードをあまりいじらずにstartとendのoffsetを追加した感じがあります) 提案内容 PHP Formatted Code function COM_getYearFormOptions( $selected = '', $startoffset=-1, $endoffset=5 ) { $year_options = ''; $start_year = date ( 'Y' ) + $startoffset; $cur_year = date( 'Y' ); $finish_year = $cur_year + $endoffset; if( !empty( $selected )) { if( $selected < $cur_year ) { $start_year = $selected; } } for( $i = $start_year; $i <= $finish_year; $i++ ) { $year_options .= '<option value="' . $i . '"'; if( $i == $selected ) { $year_options .= ' selected="selected"'; } $year_options .= '>' . $i . '</option>'; } return $year_options; } こうすればstartoffsetの指定がそのまま利用され年度指定の範囲の開始年に反映されます。 こちらを使って2000年~2010年にしたい場合は次のような指定になります。 PHP Formatted Code function COM_getYearFormOptions( $selected = '', $startoffset=-8, $endoffset=2 ) ※startoffsetが、今年-(マイナス)何年か。の値をそのまま指定できるようにいなってます。 wkyInstaller - 各種オープンソースの自動インストーラー Windows専用(.NET2.0以上)/フリーソフト(カンパウェア) http://hiroron.com/ ひろろん [PR]汎用CMS Geeklog でサイト構築/プラグイン制作 いたします |
||||||
|
|||||||
| ひろろん |
|
||||||
![]() 管理者 状態: オフライン ![]() 登録日: 2007年3月22日 投稿数: 104 |
Quote by: ひろろん
本家への提案を登録してきました。 http://project.geeklog.net/tracking/view.php?id=783 wkyInstaller - 各種オープンソースの自動インストーラー Windows専用(.NET2.0以上)/フリーソフト(カンパウェア) http://hiroron.com/ ひろろん [PR]汎用CMS Geeklog でサイト構築/プラグイン制作 いたします |
||||||
|
|||||||
| katoq |
|
||||||
![]() Full Member 状態: オフライン ![]() 登録日: 2006年8月 3日 投稿数: 129 |
ひろろんさん ありがとうございました。
元プログラマの端くれとして、気になったものの、なかなか積極的な関わりが持てなくて、申し訳ありません。 startoffsetがfunction内部で-1されていて、endoffsetはそのまま というのは、いずれのときにか、誤りが入り込みやすいという点で、気になったので、追記しました。 他意はありませんので augeさん googlecode の件ご指摘いただき 申し訳ありませんでした。 ネット素浪人 |
||||||
|
|||||||
| augebang |
|
||||||
![]() 管理者 ![]() 状態: オフライン ![]() 登録日: 2006年8月22日 投稿数: 123 |
ネット素浪人さん
畑違いのことに答えてるので「なぜなぜ君」になってしまってて 申し訳ないです。 今後同様に「なぜなぜ君」になることが多いと思いますが よろしくお願いします。 スレ主さんにはわかってもらえたでしょうか・・・ たかが0.1%されど0.1% あきらめないで! |
||||||
|
|||||||
| Ivy |
|
||||||
![]() 管理者 ![]() 状態: オフライン ![]() 登録日: 2004年1月 1日 投稿数: 4415 |
http://project.geeklog.net/tracking/changelog_page.php
ひろろんさんの提案がさっそく本体に取り込まれましたね。 |
||||||
|
|||||||
| 内容生成: 0.41 秒 |
|
|
|