1. まず、10 Goto 10 : MT-Preview: WYSIWYG Preview Mode for Movable Type から
Download the pluging code ってとこをクリックして プラグイン・CGI一式をダウンロード、解凍します。
2. デフォルトの状態だと プレビュー画面が文字化けするのと、追記部分が見れないため、
Laurentm/Preview.pm を以下のように修正します。
●文字化け対策 (赤い字の一行を追加します)
sub init {
my $app = shift;
$app->SUPER::init(@_) or return;
$app->add_methods('wysiwyg_preview' => \&preview);
$app->{default_mode} = 'wysiwyg_preview';
$app->{template_dir} = 'cms';
$app->{requires_login} = 1;
$app->{user_class} = 'MT::Author';
$app->{charset} = $app->{cfg}->PublishCharset;
$app;
}
●
追記部分の表示(青い字の数値、デフォルトでは0になってますが、ここを1にします。)
my %cond = (
EntryIfAllowComments => 0,
EntryIfCommentsOpen => 0,
EntryIfAllowPings => 0,
EntryIfExtended => 1,
);
3. 修正の済んだファイルを アップロードします。
mt-preview.cgi → 1行目 perl のパスを環境に合わせ変更後、mt.cgi と同じディレクトリへ (パーミッションを755等に変更)
preview.pl → plugins ディレクトリへ
Preview.pm → Laurentm フォルダをそのまま extlib ディレクトリへ
4. /tmpl/cms/edit_entry.tmpl を以下のように修正し、アップロードします。
<script type="text/javascript">
<!--
function doPreview () {
window.open('<TMPL_VAR NAME=SCRIPT_PATH>mt-preview.cgi?blog_id=<TMPL_VAR NAME=BLOG_ID>&entry_id=<TMPL_VAR NAME=ID>', '', 'width=800,height=600,resizable=yes,scrollbars=yes');
}
(中略)
//-->
</script>
* <script> ~ </script> の どこに追加してもかまいません。
* また、青い字の数値は ポップアップのプレビュー画面の大きさになるので、お好みで。
<TMPL_IF NAME=POSITION_BUTTONS_TOP>
<div id="button-bar">
というところを検索で探して そのあとに 以下の3行を追加します。
<TMPL_UNLESS NAME=NEW_OBJECT>
<input class="button" onClick="doPreview()" type="button" value="<MT_TRANS phrase="WYSIWYG">">
</TMPL_UNLESS>
同様に
<TMPL_IF NAME=POSITION_BUTTONS_BOTTOM>
<div id="button-bar">
のあとにも、↑赤い字の3行を追加します。通常、計2箇所です。
やむやむは 余分にボタンを表示させちゃってる ので 3箇所 赤い字の3行を追加する必要がありました。
はい、これで 完了です。新規投稿の場合は、記事を作成したら、いったん 指定日、または 下書き等で 【保存】 します。
すると・・・
ほら!【確認】 や 【保存】 【エントリーを削除】 ボタンと並んで 【WYSIWYG】 っていう新しいボタンができてるでしょ。
これが、プレビューボタンです。では、早速 どんなふうにプレビューされるか、押して確かめてみましょう。
w(°o°)w おおっ!!まさに、個別エントリそのまんまです。これは( ^ー゜)bグッドです!・・・・・と、絶賛したいところですが
ひとつ、難アリで・・・このプレビュー、個別エントリーアーカイブをPHP化していて include でモジュール化してる部分は
表示されないんですぅ・・・やむやむでは、entry body 部分も モジュール化しちゃってんですよねぇ。
これは・・・どうしたものか・・・せっかくの便利な まんまプレビューボタンが 活かせないなんて・・・( ̄~ ̄;)ウーン
8月19日 追記 : サイドメニュー等 PHP化してても表示できる TagsForPreviewプラグインについては
こちら を見てね。
≪ 続きを隠す