2008年2月11日

Movable Type 4.1 でコメント投稿者情報が保存されない不具合について

Movable Type 4.1 のデフォルトテンプレート・および配布テンプレートで、コメント投稿者情報が保存されない問題が発生しています。
配布テンプレートご利用の皆様にはご迷惑をおかけして申し訳ございません。

以下、問題・原因・対処方法を記します。

1.問題

コメント投稿時に「ログイン情報を記憶」をチェックしてコメントを投稿しても、投稿者情報が保存されない(JavaScript エラーが発生)。

2.原因

Movable Type 4.1 の JavaScript(mt.js)を、正常に動作していた 4.0x の同ファイルと比較したところ、次の差分がありました。

4.0

function setCookie (name, value, expires, path, domain, secure) {
    var curCookie = name + "=" + escape(value) + (expires ? "; expires=" + expires : "") +
        (path ? "; path=" + path : "") + (domain ? "; domain=" + domain : "") + (secure ? "secure" : "");
        document.cookie = curCookie;
}

4.1

function setCookie (name, value, expires, path, domain, secure) {
    var curCookie = name + "=" + escape(value) + (expires ? "; expires=" + expires.toGMTString() : "") +
        (path ? "; path=" + path : "") + (domain ? "; domain=" + domain : "") + (secure ? "secure" : "");
        document.cookie = curCookie;
}

ということで、expires.toGMTString() が影響しているようです。

toGMTString() は、グリニッジ標準時を文字列に変換したものを返すものですが、この処理は setCookie を呼び出す前に行っています(青色部分)。

function rememberMe (f) {
    var now = new Date();
    fixDate(now);
    now.setTime(now.getTime() + 365 * 24 * 60 * 60 * 1000);
    now = now.toGMTString();
    if (f.author != undefined)
       setCookie('mtcmtauth', f.author.value, now, '/', '', '');
    if (f.email != undefined)
       setCookie('mtcmtmail', f.email.value, now, '/', '', '');
    if (f.url != undefined)
       setCookie('mtcmthome', f.url.value, now, '/', '', '');
}

3.対処

上に示した 4.0 のソースコードを参考にして、expires.toGMTString() の .toGMTString() を削除して、保存・再構築してください。

配布テンプレートは修正済です(template_4_1_utf8_1_1)。

Comments [6] | Trackbacks [1]
2008年2月 7日

「月別アーカイブリスト」が月別アーカイブで正常に表示されない不具合について

February 7,2008 1:15 AM
Tag:[, ]
Permalink

Movable Type 4.1 で、「月別アーカイブリストが月別アーカイブで正常に表示されません」というご質問を頂きました。調べた結果、不具合を発見致しましたので、本エントリーにて情報展開致します。

1.問題

デフォルトテンプレートでは問題なく表示されるのですが、配布テンプレートで動作を確認したところ、メインページでは次のように表示されている月別アーカイブリストが、

月別アーカイブリスト

例えば、2008年2月の月別アーカイブページにジャンプすると、2008年2月のリストしか表示されません。

月別アーカイブリスト

2.原因

MTArchiveListHeader テンプレートタグが記述されていないと正常に動作しないようです。

下はデフォルトテンプレートと小粋空間テンプレートの月別アーカイブリストのサブテンプレートです。比べると、デフォルトテンプレートでは MTArchiveListHeader テンプレートタグが記述されていますが、小粋空間テンプレートには記述されていません。

デフォルトテンプレート

<mt:IfArchiveTypeEnabled archive_type="Monthly">
    <mt:ArchiveList archive_type="Monthly">
        <mt:ArchiveListHeader>
<div class="widget-archive-monthly widget-archive widget">
    <h3 class="widget-header"><$mt:ArchiveTypeLabel$> <a href="<$mt:Link template="archive_index"$>">アーカイブ</a></h3>
    <div class="widget-content">
        <ul class="widget-list">
        </mt:ArchiveListHeader>
            <li class="widget-list-item"><a href="<$mt:ArchiveLink$>"><$mt:ArchiveTitle$> (<$mt:ArchiveCount$>)</a></li>
        <mt:ArchiveListFooter>
        </ul>
    </div>
</div>
        </mt:ArchiveListFooter>
    </mt:ArchiveList>
</mt:IfArchiveTypeEnabled>

小粋空間テンプレート

<mt:IfArchiveTypeEnabled archive_type="Monthly">
<dt class="sidetitle">
Monthly Archives
</dt>
 
<dd class="side">
<ul>
<MTArchiveList archive_type="Monthly">
<li><a href="<$MTArchiveLink$>"><$MTArchiveTitle$></a> [<$MTArchiveCount$>]</li>
</MTArchiveList>
</ul>
</dd>
</mt:IfArchiveTypeEnabled>

3.対処

月別アーカイブリストに MTArchiveListHeader テンプレートタグを記述してください。下記は小粋空間テンプレートでの変更例です(MTArchiveListFooter テンプレートタグもペアで記述しています)。

<MTIfArchiveTypeEnabled archive_type="Monthly">
<dt class="sidetitle">
Monthly Archives
</dt>
 
<dd class="side">
<MTArchiveList archive_type="Monthly">
<MTArchiveListHeader><ul></MTArchiveListHeader>
<li><a href="<$MTArchiveLink$>"><$MTArchiveTitle$></a> [<$MTArchiveCount$>]</li>
<MTArchiveListFooter></ul></MTArchiveListFooter>
</MTArchiveList>
</dd>
</MTIfArchiveTypeEnabled>
Comments [2] | Trackbacks [0]
2008年2月 3日

Movable Type 4.0x でブログ記事へのリンクが post.html になる/ブログ記事のプレビューができない不具合について

February 3,2008 1:51 AM
Tag:[, ]
Permalink

Movable Type 4.0x における、ブログ記事ページ関連の不具合を本エントリーにまとめておきます。

1.ブログ記事のファイルへのリンクが「post.html」になる問題

Movable Type 4.0x で、「最近のエントリー」等の、ブログ記事へのリンクが全て「post.html」になるという報告を頂いています。

これは、同じご質問を連続して頂いてから気がついたのですが、質問された方はすべて、ブログ記事アーカイブのアーカイブマッピングの「パス」を、デフォルトから

%y/%m/%d-%h%n%s%x

あるいは

%y/%m/%d_%h%n%s%x

に変更されていました。

この事象は特定の環境でのみ発生するようです。もし、同じような事象で困っている方は 4.1 にアップグレードしてみてください。

2.ブログ記事のプレビューができない問題

上記と似た事象で、「ブログ記事のプレビューができない」という問題が 4.0x であり、これもブログ記事アーカイブのアーカイブマッピングを変更するとプレビューが正常にできないようです。

3.関連リンク

Comments [0] | Trackbacks [0]
Now loading...
ギターに入った猫
掲載広告募集
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site

このブログをメールで購読する by:FeedBurner

AMN
Categories
Monthly Archives
2020年
2019年
2018年
2017年
2016年
2015年
2014年
2013年
2012年
2011年
2010年
2009年
2008年
2007年
2006年
2005年
2004年
2003年
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
Powered by
Movable Type 6.0.3