エントリー本文
Movable Type 4.1 でコメント投稿者情報が保存されない不具合について
Category:[トラブルシューティング]
Tag:[MovableType, Template, TroubleShooting]
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)。
- Movable Type 5.0で更新通知が送信できない不具合と対処
- Movable Type 5.0 のスケジュールタスクでエラーになる件について
- Movable Type で「~」が「?」に文字化けする事象や日本語のタグが合算できない不具合を解消する
- Movable Type 4.261 でのダイナミックパブリッシングエラーについて
- Movable Type 4.2 のダイナミックパブリッシングでプロフィール画像関連のテンプレートタグが動作しない不具合について
- Movable Type 4.26 のスケジュールタスク実行時にエラーが発生する現象について
- Movable Type 4.25 における MTEntries タグの category モディファイアの不具合について
- Movable Type の再構築エラー(コンテキスト外での利用)を解析方法
- Movable Type の管理画面に「IP禁止リスト」を表示する
- MTMultiBlog タグブロック内での MTInclude タグの入れ子について(続き)
- Movable Type 4 の再構築で「Can't call method "id" on unblessed reference」が発生する問題について
- MTMultiBlog タグブロック内での MTInclude タグの入れ子について
- Movable Type 4.21 でファイルのアップロードで「不正な要求です。文字コードUTF-8に含まれない文字データを送信しています。」というエラーになる問題について
- Movable Type 4 でテンプレート編集画面の内容が途中から消失する問題の対処
- Windows XP のローカルサーバ環境(ジャンクション利用)への Movable Type 4.1 のインストールで「mt-staticがみつかりません」という警告が表示される場合の対処
- Movable Type でサブドメインを利用する場合の設定
- 「月別アーカイブリスト」が月別アーカイブで正常に表示されない不具合について
- Movable Type 4.0x でブログ記事へのリンクが post.html になる/ブログ記事のプレビューができない不具合について
- テンプレートの再構築で「モジュールというテンプレートが見つかりませんでした」というエラーになる場合の対処
- Movable Type 4 の管理画面で詳細メッセージのないエラーが発生する不具合について
- MTIf タグの tag モディファイアでテンプレートタグの値を直接参照する
- Movable Type 4.1 テンプレートセット(スタイル対応版)
- MTIf タグの like 属性について
- Movable Type(MT)テンプレート
- ブログ記事に同一カテゴリーのブログ記事リストを表示(MT4版)
- mt-site.js について(その3:cookie登録の改善)
- Movable Type 4.1 カスタムフィールドの使用方法
- Movable Type 4.21 でファイルのアップロードで「不正な要求です。文字コードUTF-8に含まれない文字データを送信しています。」というエラーになる問題について
- Movable Type 4 を始める前に設定しておきたい 10 の項目
- Movable Type 4.1 と 4.2 の差分(コメント入力フォーム)
≫ MT4.1にバージョンアップ from ストレンジャー
このブログともうひとつをMovable Type 4のバージョン4.01から4.... [続きを読む]
MT4.1でブログの複製をしたら、テンプレートが何もない状態、
記事も、1つだけ残った状態で複製されるのですが、
MT4.1では、これが正常なのでしょうか?(エラー表示は出ません。)
私が現在やりたいのは、MT4.1で管理している
全てのブログの、設定の共通化です。
なので、BlogSkeletonClonerプラグインでできていたような、
テンプレートや設定のみの丸ごとコピーが必要なのですが、、、。
解決策がありましたら教えていただけると幸いです。
よろしくお願いします。
早速の対応、ありがとうございました。
ご指示通り、対処しましたら できました。
ありがとうございました。
初歩的なことで恐縮ですが、初心者なのでお許しください。
Movable Type 3.35を使用していますが、日本語ドメインに対応させるために、ブラウザをIE6??から、IE7に変更した途端に、エントリーの位置がおかしくなってしまいました。どのようにしたら、元通りに復帰しますか?ご教授ください。
>ゆうさん
こんばんは。
ご質問の件ですが、明らかに動作異常に思われます。
また残念ながら当方では原因不明です。
お役に立てず申し訳ありません。
>chi-さん
こんばんは。
ご連絡ありがとうございました。
無事に直ったようでよかったです。
ではでは!
>satopaさん
こんばんは。
ご質問の件ですが、「エントリーの位置がおかしく」とは、具体的にどのような状態でしょうか?
ブラウザのバージョンアップで問題が発生したのであれば、一度IE6に戻してみるという手もあります。
いずれにしても、問題の内容がよく理解できておらず申し訳ありません。
MT4.25で テンプレート、template_4_2_utf8_1_13_style_liquidを使わせていただいています。有難うございます。
テンプレートの問題ではないのですが、コメント回りに、プレビューや絵文字など組み込んでいくウチに、気がついたら「ログイン情報を記録」が記憶されなくなってしまったのですが、他のJavaScriptや、記述によって動作しなくなる、というのは有ることでしょうか?。
念のためクッキーの削除と、別ブログにオリジナルテンプレートを入れ試したところ、「ログイン情報」は問題なく記憶されていましたので、何処かでミスったのかと思いますが…やはり一個ずつ外して調べるしかないでしょうか。
