blank.html が MovableTypeでダウンロードされる件

MovableTypeで時々.cgi系にアクセスするたびに blank.html がダウンロードされることがあるが、原因は.htaccessのPHP埋め込みにある。以前もあったことだが備忘録的に。

AddType application/x-httpd-php .html

当ブログが使っているサーバーのエックスサーバーで使われるPHP埋め込みですが、これが他のサーバーなどにも記述されてしまっているとblank.htmlのDLが起こることになります。この記述を取り除けば問題なくなります。

.htmlのPHP埋め込みはレンタルサーバーによって仕様が違うので、おおまかに把握しておくことが必要になります。またサーバー側の変更でもこのような自体になったりするので、レンタルサーバーからのお知らせメールには一度目を通す必要もある場合があります。

いやはや今となっては、パーソナルブランディング等の利用としてのブログは丸っきしWordPressといった風潮ですが、MovableTypeもまだまだ捨てたもんじゃありません。HTMLからの流れでCSSがいじれたりすれば、MTの方が利便性があることが多いのも確か。でも、個人でブログだけを無料ブログではなく独自ドメインでしっかりと持ちたいと思っている方には現状WordPressなんでしょうね。

レスポンシブデザインのWordPressテーマも出てきてますし、これからの流れでいくとWPtouchプラグインというよりはフレキシブルなテーマのワードプレスが好まれることになっていくことでしょう。

hetemlでCronジョブMTのrun-periodic-tasks予約投稿などに

このブログはエックスサーバーを使っていてCronはちまたにある説明のように、
cd /home/なんてろ/かんてろ で普通にCron設定できる。

だがhetemlサーバーは、mt.shというファイルを一旦作って、そのファイルに
/home/なんてろ/かんてろ とCronを宛がうやり方だったのがわからなかったが解決。

ヘテムルはこのワンクッションがあるんだと、知りました。

後はヘテムルの説明通りに設定すれば、MTのrun-periodic-tasks設定が問題なくできます。最初はこのcd /home/…でやろうとしたが、cdの後のスペースからまた/home/が2回続けて保存されたりかなり苦戦しました。

ヘテムル Cron MobableType 設定方法
丁寧に解説されていたものの、このワンクッションが最初理解不能だった。

#!/bin/sh

cd /home/sites/heteml/users/h/o/g/あなた/web/mt/ ←mt設置ディレクトリ例
/usr/bin/perl ./tools/run-periodic-tasks

exit

このファイルをTeraPadとかメモ帳で書いてmt.sh名でファイル保存して、アスキーモードでアップロードして、パーミッション700にして、そのファイルに対するサイトパスをCronに設定すると完了です。これで予約投稿やCron系のMT活用ができます。

MTでモブログMailPackとモブログくん両おすすめ有力候補を比較

MTでモブログを使うためにオススメ有力候補のMailPackとモブログくんを比較してみた。MailPackはプラグインで、モブログくんはWebサービスである。

MailPack モブログくん
iPhoneデカ画像 実際サイズ◎1600px 実際サイズ◎1600px
iPhone画像縦横 iPhone常に横縦撮り縦添付でも横 iPhone常に横縦撮り縦添付でも横
au携帯854px ◎854px ◎854px
au画像縦横 au常に縦横撮り横回転させても縦 au常に縦横撮り横回転させても縦
自動リサイズ 可能 不可能(別プラグイン対応)
アイテム追加 される(サムネイルも) される
外部からリンク ない(安心) モブログくんから被リンク
Cron 必要(Cron時間) 必要なし(リアルタイム)
公開日がダブる 秒%s 同一Cron時間にアーカイブマッピング注意 ほぼリアルタイム
送信元メアド ユーザーのメアドのみ 何でもOK
自動リサイズとかiPhoneか携帯ユーザーかで決める

MT5.1ダウンロード開始リリース出荷記念書籍も

MovableType5.1のダウンロードが開始されました。

何かと管理画面の使い勝手がよくなっていて、カテゴリの並べ替えや一覧データのソート並べ替えなど使い勝手がよくなってます。これから新規に構築する場合は5.1を使うメリットが随所に現れていると思います。

カスタムフィールドのタグが一覧時でも見えたり、テンプレートに使用されているモジュールが表示されたりと細かいユーザービリティのアップはかなり便利です。

中でもtrim_to モディファイアは、標準で対応してくれて文字数によるデザインの崩れも調整できるようになったのではと思います。結構使えますね。

2011年5月25日(水)〜6月24日(金)にMTを申込むと出荷記念書籍「Movable Type 5.1 プロの現場の仕事術」が貰えるキャンペーンを実施しています。

MT5テーマは良い機能だがあっさり全体チェンジ

MT5の特徴はWordPressに踏襲のテーマ機能。

だが、MTをごちゃごちゃいじった後でテーマの【適用】をワンクリックするだけで、
あっさりと全てに於いて入れ替わってしまう。当然だが。

テンプレートだけでなく、カテゴリーやカスタムフィールドまで、
テーマに含まれているのはいいことだが、カスタム後に誤って【適用】をしてしまうと大変。

  1. カテゴリーはテーマのものがプラスで追加された。
  2. カスタムフィールドはテーマに含まれているハズだが、追加はされなかった。
  3. テンプレートはもちろんテーマ通りに。

ユーザー権限で投稿者にテーマのページすら表示されないように、
しっかりとロールの権限を割り振っておくべきだと思った。
【適用】クリック後に、よろしいですかの確認が欲しかった…。

逆に、

  1. カテゴリー追加してたモノは運良く残った
  2. カスタムフィールドは運良く残った

ということですね。

MTカスタムフィールド特定の値をMTIfで切り替えて表示

MTカスタムフィールドで、ラジオボタン/ドロップダウンで作る時に、
ある値だけを<span>タグで囲いたいときに、MTカスタムフィールド上で、

A, <span>B</span>

とやるとシステム上HTMLタグがあるため、Bがおかしくなる。

これを回避するにはMTifを使う。
MTifで特定の【値】を指定してMTElseでそれ以外の場合はを表示する。

これで、そのカスタムフィールドが特定の【値】の時に、
<span>タグやHTMLタグの含んだものを出力できる。

MTコメント投稿 完了後にそのまま表示する

mt-comments.cgi のURLで止まって何でエントリーページをスグに
表示してくれないのか、奮闘してましたが解決。
ちなみにコメント完了系のテンプレートを空にしてもダメです。

設定 > コメント設定 > コメントの確認ページ

最下部のコメントの確認ページのチェックを外すと、投稿完了後すぐに
投稿された内容を表示されてエントリーページにそのまま戻ります。

ユーザー登録しないでも投稿できるようにはできるのですが、
ちょっと毎回どうやったか迷う。

設定 > コメント設定 > 登録 / 認証

のユーザー登録などのチェックを全てはずして、認証なしにチェックをいれると。

さくらレンタルサーバーMTのphpパーミッション755に変更するmt-config.cgi

修正あり。
昔のさくらはパーミッション755や705でないと.phpが表示出来なかったが、今はできるようになったようです。なので755ではなく、604の方が良いと思います。

MovableTypeを.phpで運用する場合、
さくらレンタルサーバーでも、エックスサーバーのように
mt-config.cgiを変更する必要がある。
さくらでは、通常のMTスタティックパブリッシングが
パーミッション604か644になる。さくらでは、705か755でないと
.phpのphpファイルページが500エラーになって表示できない。
そこで、MTお決まりのmt-config.cgiに記述して書き出しの
パーミッションを操作して、さくらでもPHPをMTでも
気持ちよく使えるように設定してみよう。
話は、単純でmt-config.cgiに下記を記述するだけ。
気を付けたいのは、最初に644や604で書き出されたファイルは
そのまま600番台のままなので、一端MTで出力してしまったファイルは
FTPで一端全てきれいに削除してから、新しく書き出されたファイルは
705となり、さくらレンタルサーバーでも使えるようになる。

さくらレンタルサーバー 旧記載755の場合

HTMLUmask 0022
DirUmask 0022
HTMLPerms 0755

さくらレンタルサーバー 新604の場合

HTMLUmask 0022
DirUmask 0022
HTMLPerms 0604

mt-config.cgiの下の方に記述するだけで大丈夫だ。
これで、さくらサーバーでもphp化したMTがバッチリ使える。
忘れがちなエックスサーバーのmt-config.cgi設定も併せ記述しておく。

エックスサーバー

DBUmask 0022
HTMLUmask 0022
UploadUmask 0022
DirUmask 0022

ホントに何かと便利な機能を持ち合わせた謎のファイルmt-config.cgi

出力するファイルのパーミッションを
訳あって755にしたいという場合は↓

DBUmask 0022
HTMLUmask 0022
UploadUmask 0022
DirUmask 0022
HTMLPerms 0755
UploadPerms 0755

MTPages, MTPageFolder ウェブページ備忘録

MTのウェブページまわりMTPagesが、どうもしっくりきてやっと理解してきたので備忘録。

  • エントリー対カテゴリー、ウェブページ対フォルダ
  • 同一フォルダ内はMTPageFolderブロックダグでMTPagesブロックダグ囲む
  • MTPageFolderは、root(フォルダなし)は一覧しない
  • ウェブページは個別記事なので、フォルダアーカイブ再構築はないのでカテゴリとは違って過去の同一MTPages, MTPageFolderは紐付けされて再構築はされない?MTFolders使っても無理か?
  • ベースネーム個別→過去ページそのまま。ベースネームindex→過去ページそのまま。
  • MTPagePermalinkのアーカイブマッピング
  • %-c/%-fだとファイル名にindexでfolder/にリンク
  • %-c/%-b.htmlだとファイル名にindexでfolder/index.htmlにリンク(こっちはエントリー画面で.phpと出ていても.htmlすることができる)

.htaccess膨大の理由から、.html(PC).php(携帯)が望ましい、全部○○/index.xxでもできるがページ数だけ.htaccessの行が増えちゃう。じゃ公開設定拡張子を.htmlにして、携帯のアーカイブマッピングを.phpにするとページ分割だけ.htmlになってしまう、が、.html php埋め込みができれば一応問題ない(負荷と相談)結構迷う。

MTPageFolderで同一フォルダ内のウェブページ表示

MTのウェブページはあまり使うことがないのだが、フォルダ機能しかり、ウェブページ機能しかり、よくできていてページ物を作るときにはやっぱりテンプレートを追加しちゃうより使いやすかったりもする。

MTPageFolder

MTPageFolderタグを使うと、該当のページが属する同一フォルダのウェブページが扱える。参考にしたMovable TypeのMTPageFolderで順番をソートする(入れ替える)方法だが、「sort_by=”created_on”(作成日)」が効いているというより、効いていない感じで、created_onを付けようがつけまいが、sort_order=”ascend“昇順 (新しいものが下)にしようが、変化はない。タグリファレンスにもsortの情報はない。デフォルトで作成日順になっているのではないだろうか。試したところページの最終更新順ではないようなので作成日順かと思われる。

<div class=”folder-list widget”>
<h3 class=”widget-header-link”>
<a href=”./” title=”<$mt:FolderLabel$> TOPへ”><$mt:FolderLabel$></a>
</h3>
<div class=”widget-content”>
<mt:PageFolder sort_by=”created_on”>
<ul>
<mt:Pages>
<mt:PageIfTagged tag=”@index”><mt:Else>
<li><a href=”<$mt:PagePermalink$>”><$mt:PageTitle$></a></li>
</mt:PageIfTagged>
</mt:Pages>
</ul>
</mt:PageFolder>
</div>
</div>

ちなみに、ウェブページのベースネームをindexにすると、【フォルダ名/index.○○】ではなく、しっかりと【フォルダ名/】にリンクして表示してくれるところがありがたい。