MT4i 記事一覧で(下書き)を表示する

MT4i の管理者モードでは、下書きや指定日投稿のエントリーも一覧に表示されます。Individual 表示(個別記事表示)モードではタイトルの先頭に「(下書き)」や「(指定日)」と追加されて表示されますが、一覧画面ではそれがありません。

太鉄さんのところでお願いした方がよい気もするんですがお忙しいようですし、何よりこだるまさんからご指名を受けてしまったので、一覧表示でも(下書き)や(指定日)の表示を追加する修正をしてみました。

修正範囲も少ないし改変版を配布するのも面倒なので、方法だけ書いておきます。ちなみに MT4i Ver2.0 を前提としています。

mt4i.cgi を EUCコードで編集可能なエディタで開き、main 関数内の下記部分(477行目あたり)

# 記事本文
my $i = 0;
for my $entry (@entries){ # 結果のフェッチと表示
  my $title = &conv_euc_z2h($entry->title);
  $title = "untitled" if($title eq '');
  my $created_on = &conv_euc_z2h(&conv_datetime($entry->created_on));
  ...

となっているところを

# 記事本文
my $i = 0;
for my $entry (@entries){ # 結果のフェッチと表示
  my $title = &conv_euc_z2h($entry->title);
  $title = "untitled" if($title eq '');
  # 下書き/指定日かどうかを調べる
  my $ent_status = $entry->status;
  my $d_f;
  if ($ent_status == 1) {
    $d_f = '(下書き)';
  } elsif ($ent_status == 3) {
    $d_f = '(指定日)';
  }
  $title = $d_f . $title;
  my $created_on = &conv_euc_z2h(&conv_datetime($entry->created_on));
  ...

という具合に修正します。赤の太字が追加部分です。Individual 表示処理内の該当部分をほぼ Copy&Paste というベタな修正で申し訳ないですが。(汗)

ちなみに、この改変によって生じたいかなる不利益に対しても責任は負いかねます。念のため。m(_,_)m

5 Responses to “MT4i 記事一覧で(下書き)を表示する”

  1. こだるま Says:

    仕事早いです!
    完璧です!!!
    なるほど、ここだったんですねぇ。
    昨晩色々いじってみたのですが、結局出来なかったんですよ。
    でも良いところまでは行ってたみたいです(笑

    今回は無理を言ってしまい申し訳ございませんでした。

  2. 太鉄 Says:

    対応ありがとうございます。
    こだるまさんとこでエントリ読んで、懸案事項に挙げとかなきゃと思ってはいたんですが。
    次期リリースで取り込ませて頂きますね。

  3. Bamkero.net Says:

    [B] mt4i

    こだるまさんちで [な] MT4i 管理者モードの画面で一覧表示したときに下書き…

  4. KM Says:

    早速いただきました!

  5. ヴァリウム男爵 Says:

    こだるまさん>
    いえいえ、たいした修正ではないですし。また何か面白そうなアイデアがあったら教えてください。実は昨日ロクなことがなかったんで、コードいじったらいい気分転換になりました。(^^;

    太鉄さん>
    よろしくお願いいたします。あれから首の具合の方はいかがでしょうか?

    KMさん>
    いただいちゃってください!

Leave a Reply