「作成日時」更新ボタンを追加する


MTの作成日時には「新規エントリー」画面を開いた時間が入ります。
エディタ等で先に記事を書いておいて貼り付ければタイムラグはないのですが、開きっぱなしでエントリを書いていると気づいたら何十分も経っている……ということがあります。(書きすぎ)。
しかもTIPS等のネタは下書き保存して、後日書くことがない日や忙しい日に小出しにすることもあり(笑)わたしは手動で日時を修正することも多いです。
うっかりするとメインページに反映されないほど前の日付だったりして、慌てて直したり……結構めんどくさいなと思っていたのですが、ボタン一つで作成時間を変更できる方法がWhiteMagicさんの「「作成日時」を更新するボタン追加 」というエントリに載っていたので作業してみました。

すごく簡単で、しかも作業が快適になるのでオススメです。
やり方は以下に。

  1. mt/tmpl/cms/edit_entry.tmpl をテキストエディタで開きます。
  2. テキストエディタの検索機能使ってcreated_on_manualを探します。
  3. <input name="created_on_manual" id="created_on_manual" tabindex="8" value="<TMPL_VAR NAME=CREATED_ON_FORMATTED ESCAPE=HTML>" />

    ↑この部分を見つけます。


  4. <input name="created_on_manual" size=25 id="created_on_manual" tabindex="8" value="<TMPL_VAR NAME=CREATED_ON_FORMATTED ESCAPE=HTML>" /><br />
    <input onClick="nowDate()" type="button" value="Now" />

    に変更します。

  5. <script>から</script>の間に

    <!-- 更新時刻を現在の時刻にするボタン -->
    function nowDate() {
    dat=new Date();
    yea=dat.getFullYear();
    mon=dat.getMonth() + 1;
    day=dat.getDate();
    hou=dat.getHours();
    min=dat.getMinutes();
    sec=dat.getSeconds();
    if(mon<10){mon="0"+mon;}
    if(day<10){day="0"+day;}
    if(hou<10){hou="0"+hou;}
    if(min<10){min="0"+min;}
    if(sec<10){sec="0"+sec;}
    document.entry_form.created_on_manual.value=yea + "-" + mon + "-" + day + " " + hou + ":" + min + ":" + sec;
    }

    を追加します。

  6. 最後に、無事に動くかボタンを押して確認します。

以上です。

トラックバックURL

このエントリーのトラックバックURL:

コメントしてください




保存しますか?