2006年3月6日 エントリーの確認画面で保存したときに正しく動作しない不具合を修正しました。
以前に、「エントリーの作成日時を公開日時に自動更新する」というプラグインを公開していました(ReleaseDateプラグイン)。
それをMovable Type 3.2用にして、なおかつ機能も改良しました。
1.このプラグインの動作
Movable Typeでは、エントリーの日時として表示されるのは、「エントリーを新規作成した時点の日時」です。
MT3.2では、エントリー編集画面に「投稿日」の欄があり、エントリーを新規作成した時点で、その日時が「投稿日」の欄に設定されます。
エントリーを公開しても、この欄の日時は公開時点の日時にはならず、新規作成した時点の日時のままです。
エントリーを書いてすぐに公開すれば、投稿日と公開日の差は数分で済むでしょう。
しかし、エントリーを少しずつ書いてから公開したり、公開前に何度も推敲したりした場合、投稿日時と公開日の間にかなりのギャップがあくこともあり得ます。
そこで、このプラグインは、エントリーを公開する時点で、エントリーの投稿日を公開日に自動的に更新します。
また、エントリーごとに、自動更新するかどうかを設定することができます。
更新は以下のタイミングで行われます。
- 下書きのエントリーを公開に変えて保存する時点
- エントリーを新規作成し、下書きを経由せずに保存して、公開する時点
一度公開したエントリーを再編集して保存しなおした場合は、日付は変更しません。
2.BIGPAPIのインストール
このプラグインは「BIGPAPI」というプラグインとともに動作しますので、BIGPAPIをインストールします。
BIGPAPIの内容やインストールについては、以下のエントリーを参照してください。
3.プラグインのインストール
以下のリンクをクリックして、プラグインのファイルをダウンロードします。
ファイルを解凍すると、「ReleaseDate.pl」というファイルができます。これを、Movable Typeの「plugins」ディレクトリにアップロードします。
なお、このファイルは文字コードをutf-8にしてあります。それ以外の文字コードをお使いの方は、文字コードを変換してアップロードしてください。
4.デフォルトの動作の設定
投稿日の自動更新をデフォルトでオンにするかどうかは、Blogごとに設定することができます。
個々のBlogの設定のページで「プラグイン」のタブを開き、「ReleaseDate」のところの「設定を表示」をクリックします。
すると、「エントリーの投稿日を公開日に自動変更する」のチェックボックスが表示されます。
このチェックをオンにすると、デフォルトで自動更新がオンになります。
オフにした場合は、デフォルトでは自動変更しないようになります。
5.エントリーごとの設定
エントリーの投稿のページでは、「投稿日」の欄の下に「投稿日を公開日に変更」のチェックボックスが表示されます。
このチェックをオンにした状態でエントリーを公開すると、投稿日が公開日に自動更新されます。
ただし、公開済みのエントリーでは、このチェックボックスは表示されません。
なお、手順4.で「エントリーの投稿日を公開日に自動変更する」のチェックをオンにしておくと、エントリーを新規作成した時点で、「投稿日を公開日に変更」がオンになります。
「通常は投稿日を公開日に自動更新する」という場合は、4.のチェックをオンにしておきます。
一方、手順4.で「エントリーの投稿日を公開日に自動変更する」のチェックをオフにした場合、エントリーを新規作成した時点では、「投稿日を公開日に変更」がオフになります。
「通常は自動更新しないが、時々自動更新を使う」という場合、4.のチェックをオフにしておき、エントリーを公開する前に「投稿日を公開日に変更」のチェックのオン/オフを設定するようにします。
6.UpdateAuthoredOnプラグインとの共存
BIGPAPIの作者のKevin Shai氏は、「UpdateAuthoredOn」というプラグインも公開しています。
UpdateAuthoredOnプラグインは、エントリーの編集画面にボタンを追加して、そのボタンがクリックされたときに、投稿日をその時点の日時に書き換えるという動作をします。
UpdateAuthoredOnプラグインと、このエントリーのReleaseDateプラグインは、共存することができます。
UpdateAuthoredOnプラグインのボタンで投稿日を書き換えた場合、「投稿日を公開日に変更」のチェックをオフにしてエントリーを公開すれば、ボタンを押した時点の日時のままになります。
用途に応じて、UpdateAuthoredOnプラグインのボタンでの日時変更と、ReleaseDateプラグインでの自動変更とを使い分けると良いでしょう。


コメントはスレッド表示になっています。
また、スレッドの先頭のコメントに対する返信には、先頭に矢印を表示しています。
こんにちは。「ボタンがクリックされたときに、投稿日をその時点の日時に書き換える」っていうのを付けています。それがKevin Shai氏の「UpdateAuthoredOn」なのかどうかは はっきしませんが、「投稿日」の欄の下に「Now」というボタンができてます。ReleaseDate.plをアップしたのですが「投稿日を公開日に変更」のチェックボックスが表示されません。
>さえらさん
こんにちは。
ReleaseDateプラグインでは、edit-entry.tmplファイルの中で以下の部分を検索して、チェックボックスを追加するように置換するという処理を行っています。
<input name="created_on_manual" id="created_on_manual" tabindex="8" value="<TMPL_VAR NAME=CREATED_ON_FORMATTED ESCAPE=HTML>" />
</div>
「投稿日の欄の下に『Now』のボタンがある」ということからすると、上記の<input・・・>と</div>の間にボタンが追加されていると思われます。
それだと検索に引っかからなくて置換ができず、チェックボックスが表示されない現象が起こります。
ご確認ください。
ちなみに、UpdateAuthoredOnプラグインでは、「投稿日」の右の「?」の右に、ボタンが追加されるようになっています。
こんばんは。edit_entry.tmplを調べてみたところ、おっしゃるとおりになってました。ボタンを<input>と</div>の外に出したらチェックボックスがちゃんと表示されました。やむやむの場合、普通に投稿しようとするとエラーになってできないので、毎回「ほぼ指定日」投稿で投稿してますから、まともに投稿できるようになるまで(そんなときがくるのかどうかわからないですが)Nowボタンも チェックボックスも あってもあまり意味がないですね。だけどチェックボックスが表示されない理由がわかってよかったです。ありがとうございました。やむやむと同じMTで作ってる別ブログがあって、そちらはエントリの数もまだ100に満たないので、「ほぼ指定日」を使わなくてもまともに投稿できます。そちらのブログで 「公開日に自動変換」を使わせていただこうと思っています。
こんばんは、壱さん
此方のプラグインも、DLさせて頂きました。
ありがとうございます。
記事を編集している時に、誤ってトラックバックを
重複してしまいました。すいませんでした。