2006年4月 4日
Movable Type で1日午前0時のエントリーがカレンダーに反映されない不具合について
「1日のエントリーがカレンダーに反映されませんというご質問を頂いて」調べたところ、エントリーの投稿日を1日の00時00分00秒で保存した場合、カレンダーに該当エントリーのリンクが反映されないことが判明しました。月末の23時59分59秒についても同様のようです。
コードを調査したところ、カレンダーの生成を行っているのは
- lib/MT/Template/ContextHandlers.pm
にある _hdlr_calendar で、1ヶ月分のエントリーを取得する処理で該当の投稿日のエントリーだけ除外されてしまうのが原因です。これについては Movable Tyep 3.0 から発生していた現象のようです。
この不具合を解消するには、1日の投稿日に00時00分00秒、月末の投稿日に23時59分59秒を用いないか、下記のパッチをあててください。
--- lib\MT\Template\ContextHandlers.pm.bak Tue Oct 11 16:47:22 2005
+++ lib\MT\Template\ContextHandlers.pm Tue Apr 04 09:40:46 2006
@@ -2459,7 +2459,7 @@
my $iter = MT::Entry->load_iter({ blog_id => $blog_id,
created_on => [ $start, $end ],
status => MT::Entry::RELEASE() },
- { range => { created_on => 1 },
+ { range_incl => { created_on => 1 },
'sort' => 'created_on',
direction => 'ascend', });
my @left;
上記のパッチは安直な発想ですので、適正な修正方法がございましたら情報お待ち申し上げます。Ogawa::memoranda さんのご指摘を頂きましたのでパッチを差し替えました。ありがとうございました。
Posted by yujiro
- Movable Type 4 でテンプレート編集画面の内容が途中から消失する問題の対処
- Windows XP のローカルサーバ環境(ジャンクション利用)への Movable Type 4.1 のインストールで「mt-staticがみつかりません」という警告が表示される場合の対処
- Movable Type でサブドメインを利用する場合の設定
- Movable Type 4.1 でコメント投稿者情報が保存されない不具合について
- 「月別アーカイブリスト」が月別アーカイブで正常に表示されない不具合について
- Movable Type 4.0x でブログ記事へのリンクが post.html になる/ブログ記事のプレビューができない不具合について
- テンプレートの再構築で「モジュールというテンプレートが見つかりませんでした」というエラーになる場合の対処
- Movable Type 4 の管理画面で詳細メッセージのないエラーが発生する不具合について
- Movable Type 4 のデフォルトテンプレートで @import が表示される問題
- 検索結果のページ分割(3.3x 版)
- Movable Type でコメント投稿・トラックバックが重くなる事象を解消する
- HTTP/1.1 の「条件付きGET」を利用して PHP ファイルアクセスによるサーバ負荷を削減する
- MTEntries タグの lastn 属性と sort_order 属性(ascend)の同時指定が有効にならない件について
- Movable Type 3.x デフォルト・テンプレートのAtomフィードの不具合について
- Movable Type 3.3 で TypeKey サイン・イン時の JavaScript エラーを解消する
- カテゴリーリストで MTArchiveListHeader と MTArchiveListFooter が正常に動作しない問題
- Movable Type 3.2 と 3.31 におけるサブカテゴリーリストの表示の違いについて
- Movable Type 3.3 の再構築で「<MTTagName>タグが閉じられていません」になる問題の対処(改)
- Movable Type の検索でエラーになる問題について
- コメント・プレビューで実体参照が無効になる不具合を解消する
トラックバックURL
コメント
月初だけでなく月末も同じ問題があります。
$start - 1にするのではなく、以下のように修正すると「$start以上$end以下」のcreated_onを持つエントリーをload_iterできます。
-{ range => { created_on => 1 },
+{ range_incl => { created_on => 1 },
[1] Posted by (o) : April 4, 2006 1:57 AM
>(o)さん
こんにちは。
ご無沙汰しております。
アドバイスありがとうございました!
[2] Posted by yujiro : April 4, 2006 12:58 PM
コメントする

