アルファサード株式会社 代表取締役 野田 純生のブログ


さりげなく? cms_pre_previewコールバックが追加されている件。


公開日 : 2008-01-03 21:10:45


エントリー編集画面で「確認」ボタンをクリックして「プレビュー」するときにプラグインなんかで拡張したデータをプレビューに反映させるため? のコールバック「cms_pre_preview」がMT4.1で追加されていたのでメモしておきます。Custom Fieldのため?

エントリーにPDF2つファイル添付する拡張してる時にプレビューに反映させるコードですが、pdf_ja,pdf_enカラムにアップロードしたファイルのパスを格納しているとして、pdf_ja_org,pdf_en_orgフィールドにアップ済みのファイルパスを放り込んでいる場合のコードをメモっときます(例がわかりにくいと思うけど)。


sub _preview_entry {
    my ($cb, $app, $obj, $data) = @_;
    my $q = $app->param;
    my $pdf_ja = $q->param('pdf_ja_org');
    my $pdf_en = $q->param('pdf_en_org');
    if ( $pdf_ja ) {
        push @$data,
          {
              data_name  => 'pdf_ja_org',
              data_value => $pdf_ja
          };
        $obj->pdf_ja($pdf_ja);
    }
    if ( $pdf_en ) {
        push @$data,
          {
              data_name  => 'pdf_en_org',
              data_value => $pdf_en
          };
        $obj->pdf_en($pdf_en);
    }
}

ついでに「cms_post_preview」の追加と、「build_file」コールバックが呼ばれてくれると嬉しいってのも書いておきます!

カテゴリ


このブログを書いている人
野田純生の写真
野田 純生 (のだ すみお)

大阪府出身。ウェブアクセシビリティエバンジェリスト。 アルファサード株式会社の創業者であり、現役のプログラマ。経営理念は「テクノロジーによって顧客とパートナーに寄り添い、ウェブを良くする」。 プロフィール詳細へ