当BLOGはFREE BSDにDBをSQliteで運用している。
現状、記事数は250程度であるが、リビルドに13~15分掛かっており、たまにinternal error500とかでこける。
MT5は、テンプレートをキャッシュしてリビルド時の高速化を計るという仕組みがある。
リビルド時にインクルードされるウィジェットテンプレートをキャッシュし、DBアクセスを減らすというもの。
なにも考えずに、使用している全ウィジェットの設定でキャッシュを利用するにしてみたが、月移動カレンダーの表示がおかしくなったりと、いまいち動作が不安定になって、使用をやめていた。
今回、これをリビルド時に時間のかかる「月別アーカイブ」「カテゴリアーカイブ」のみキャッシュする設定に変えて再構築をやってみた。
13~15分→7~8分とほぼ半分の時間で完了。
月別アーカイブ、カテゴリーアーカイブとも、キャッシュクリアタイミングは、記事投稿後の設定にしています。
しばらくこれで様子を見ることにしよう。
MT5.0の最近のブログ記事
先の記事で、MT-Cumulusを導入し、日本語タグを入れると、記事投稿後のリビルドでこけると書いた。
動かないのも癪なので、何とか動かないかと悪あがきした結果、動きました。
(1) http://bizcaz.com/archives/2009/01/12-195418.php
上記サイトより、mt-cumulus_103.zip(リセントリータグ対応版)をダウンロード、解凍
(2) 解凍後、plugins→Cumulus→lib→Cumulus.pmを修正
修正個所1.
http://open.free-creator.com/2009/06/mt-cumulus.php を参考に
mt/plugins/Cumulus/lib/Cumulus.pmの133行目
$tags .= "<a href=\"" . $cgipath . "mt-search.cgi?blog_id=" . $blogId . "&tag=" . $tagcloudtag->[0] . "&limit=20\" class=\"tag-link-66\" title=\"" . $tagcloudtag->[1] . " topics\" rel=\"tag\" style=\"font-size: " . $size . "pt;\">" . $tagcloudtag->[0] . "</a>\n";
を
$tags .= "<a href=\"" . $cgipath . "mt-search.cgi?blog_id=" . $blogId . "&tag=" . URI::Escape::uri_escape($tagcloudtag->[0]) . "&limit=20\" class=\"tag-link-66\" title=\"" . $tagcloudtag->[1] . " topics\" rel=\"tag\" style=\"font-size: " . $size . "pt;\">" . $tagcloudtag->[0] . "</a>\n";
に変更。
修正個所2.
私の環境では、これだけではリビルド時に下記のエラーが出てしまう。
can't escape \x{30c6}, try uri_escape_utf8() instead
そこで、上記Cumulus.pmの’uri_escape(’という部分をすべて'uri_escape_utf8('に修正。
133行目・235行目・238行目・242行目・243行目の5箇所。
修正したものをMTのサーバーにUP
(3)MTのBLOGダッシュボードでプラグイン(mt-cumulus)の設定
設定は特に難しい点はありませんが、一番上の
Enable MT-Cumulus for this blog
にチェックを忘れると、いつまでも動いてくれないので注意。
(4)ウィジェットに「タグクラウド(SWF)」を追加
ウィジェットの記述内容
<h3 class="widget-header">Tag cloud(MT-Cumulus)</h3>
<div class="widget-content">
<$MTCumulusSWFObject$><$MTCumulus$>
</div>
(5)上記ウィジェットをサイドバーのウィジェットセットに追加。
(6)サーバーにUPしたtagcloud.swfを日本語バージョンに変更する
下記サイトのコメント欄からのリンク先に日本語対応版があります。
http://darts-team.com/dartsblog/archives/360
ダウンロードして、MTサーバーのSWFと入れ替え。
以上の作業で、なんとか日本語で表示されるようになりました。
毎度の事ながら、参考にさせていただいたBLOGの主宰者の皆様、有難うございます。
ブログで良く見かけるタグクラウド。
個人的にはタグクラウドがサイドバーにグダグダ並んでいても、その中から必要な情報を探す気にもなれず、タグクラウドは好きではない。
記事を書く際にもタグを入れなきゃいけないしね。
しかし!見た目カッコいいのには惹かれてしまう。
MTのカスタマイズなどをしていると、どうしても他のブロガーさんのサイトを参考にすることが多いのだが、その中でタグクラウドが3Dでグリグリ回っているのを見つけた。
MT-Cumulusっていうのがそれ。
もともとWPではメジャーなプラグインだったらしいが、MTにも対応しているということで入れてみた。(右サイドバー下方)
参考にさせていただいたサイト
http://boomlabo.blog26.fc2.com/blog-entry-105.html
開発元はこちら
http://www.roytanck.com/2009/11/27/help-me-test-wp-cumulus-unicode-support/
多言語にも対応しているらしいが、私の環境では、タグに日本語を入れると、記事投稿後の再構築でこける。
先にも書いたようにタグクラウド自体あまり好きではないので、まぁ、日本語表示できなくてもいいかなぁ・・・・・
日本語表示のために、SWFに日本語フォントを埋め込んだりとSWFだけで1.8MBもあるし、ほとんど自己満足の世界だな。
(今は日本語表示対応版じゃない、軽いほうのSWF入れてます)
前のMT3のときは、MT4i for MTという携帯用のサイト変換のプログラムをサーバーに設定していた。
MT5になって、このMT4iが動かなくなっており、作者さんのほうでMT4i3.1alfaというバーションでMT5対応を進めてくださっていたが、alfa1/alfa2とも、日本語のエンコディング廻りでエラーが出て、残念ながら私のサーバーではうまく動かなかった。(サーバー環境に依存するようだ)
alfa1では、encode.pmでエラーが出て動かず。
alfa2では、動作するもののタイトル・記事とも日本語が表示されず、半角部分のみ表示された。
今回、alfa3がリリースされたので、プログラムをUPdateしたところ、ようやく動いてくれた。
有難うございます。
右サイドバー最下部に、RQコード&携帯アドレスへのリンクを貼ってみました。
MT5の記事入力画面は、必要最小限の機能しかなくシンプルといえばシンプル。
時々記事の中でフォントの色を変えたりしているが、あれも<font color=#xxxxxx>hogehoge </font>といつも手打ちしていた。
せめて色指定ぐらい簡単にできないかと探してみたら、ckeditorというのが出ているらしい。
大概こういうのは、テンプレートをこう直せから始まって、JAVAスクリプトを入れろとか、一発で動いたためしが無い(私が無能なだけかw)
ところが、このCkeditor、インストールも超簡単でした。ダウンロードしたファイルをサーバーの所定のフォルダーに転送してMTを起動すると、インストーラーが自動的に走って、あっというまに完了。
私はSQliteで運用しており、それが心配でしたが何の問題も無し。
私はここから最新版をダウンロードしてきました。
解凍して中に入っている簡単なマニュアルを読めばOKです。
[インストール後の編集画面]
顔文字もこの通り。
MTカスタマイズ色々やってますが、こうもすんなりこれだけの機能をインストールできたのって初めてかもです。
しばらく楽しませてくれたMT5.0のカスタマイズもほぼ終了。
サーバー内に残っていた古いコンテンツの幾つかをリンク集に登録してみました。
暇な時にでも見ていただければと思います。
ちなみにこの記事、公開日指定で先付け日付で自動公開の動作確認も兼ねています。
[月移動カレンダー]
月移動カレンダー、なんとか動きますた。
トップページとその他のアーカイブページで日付の取得方法とか微妙に変えなくちゃいけない部分や各MTタグの使用可能な場所のチェック(日付に関するアーカイブ内でないと、日付取得用タグが使えないとか・・・)が厳しくなっていて、前のがそのままでは動かなく成っていて、Mtif(分岐用タグ)を色々いじってたんですがなかなかうまく動いてくれなかった。
wingmemoさんのサイトを参考にさせて頂き、無事動きました。
[IE8+UTF-8]
次は、IE8(というかIE全般ですがw)の困ったちゃん。
まずは下のスクリーンショットを。前回の記事部分でサイドバーを含めて撮ったものです・・・同化しちゃって見にくいかもですがw
これはfirefox3.55で当BLOGを表示したもの。
↓
こちらはIE8.0で表示したもの。
↓
サイドバーの最近のBLOG記事の日本語の大きさがIE8と他のブラウザでは明らかに違う。サイドバー内でも英数半角の部分はIEでもfontsize指定が生きて、小さく成っている。
本文部分も表示はどのブラウザでも同じに表示されている。
いろいろ調べると、IE8+エンコードがUTF-8だとこうなるとか、JAVAが絡んでいるとか出てくるんだが、解決方法に関してはズバっと書かれているところが見つからない。
fontfamily指定の先頭にMS系日本語フォントを指定すれば直るという情報もあったが、残念ながら私の環境では直らず。
もう少し調べてみよう。
[追記]
根本的な解決ではありませんが、ウィジェット内の文字を12pxにして問題回避。(逃げともいう・・・)
MovableTypeでは、1ページ当たりの表示記事数を設定する様に成っているが、これを例えば10記事と設定すると、カテゴリーアーカイブや月別アーカイブで10以上記事があると11個目からは表示できないという訳の分からない仕様に成っている。
(このBLOGはちょい多めの20を設定している)
カテゴリアーカイブを開いてみると、タイトルが「~~の最近のブログ記事」と成っているあたり、古い記事の事は考えていませんよと言う意思表示の様でもあるしw
すべて閲覧可能にするために、前のMT3の時は「archivepage」というPluginを使って次ページ表示を行っていたが、MT5に入れてみたら
「Undefined subroutine &MT::Template::Context::_hdlr_entries called」と言われて管理画面すら入れなく成ってしまった。
さくっとサクリ、正常に起動するようになり、今回はMT5にも対応しているらしいPageBute Pluginを試してみた。
設定も非常に簡単で、あっというまに動きました。
例によって、備忘録・・・
テンプレートの「月別ブログ記事リスト」と「カテゴリ別ブログ記事リスト」の下記部分を修正。
limitが生きたままだと、例えば月内の記事数がlimit以上ある場合、limit数までしか処理されないのでコメントOUT。
<!--静的ページ分割追加 2010.01.19 -->
<mt:pageContents count="10"> →追記
<!-- mt:Entries limit="$limit"-->
<mt:Entries> →上の行を修正
<mt:Ignore><!-- Use the Entry Summary module for each entry published on this page --></mt:Ignore>
<$mt:Include module="ブログ記事の概要"$>
<$MTPageSeparator$> →追記
</mt:Entries>
以下追記
</MTPageContents>
<MTIfPageBefore>
<span><$MTPageBefore delim="前の10件"$></span>
</MTIfPageBefore>
<$MTPageLists$>
<MTIfPageNext>
<span><$MTPageNext delim="次の10件"$></span>
</MTIfPageNext>
<br>
<br>
前回の記事に、
「ユーザビリティ上、記事を読んでコメント入れるので、記事下にコメント投稿リンクがあった方がいい!!o(`ω´*)o」
とデーニッツさんより、ごもっともなご意見を頂きました。
(MovableTypeの標準がコメントが上になっているようです・・・何か理由があるのかな)
コメントで返信でも良かったのですが、肝心のリネージュもTOI10とかDEC3とかで記事にすることもなく、記事ネタが無かったので記事にしてしまった。
閑散としたBLOGではありますが、真面目に見ていただいてご意見などを頂けると結構励みになったりします。
実は、コメントへのリンクは直したいなぁと思いつつ「ま、ぃっか」と放置していた部分だったので、しぶしぶ喜んで直しました!
修正自体は難しくはないのですが、どこをいじったか忘れるといけないので、自分用メモ。
デザイン→テンプレート→テンプレートモジュール→ブログ記事の概要
<div class="asset-meta">内の投稿者表記の後にあったコメント投稿リンク部分&トラックバック投稿部分を
<div class="asset-footer">へ移動。
単純にいじったら記事下にポツンと コメント(0) って表示で寂しかったのでちょい修飾して終了。
メインインデックス以外のエントリーアーカイブや日付アーカイブ等の画面では、記事下に予めコメント投稿用のフォームが表示されており、いじらないほうがデザイン的に良さそうだったので、上部表記のままに。
カレンダーの月移動リンクがまだ出来ていませんが、こちらはMovableType3の頃とCMSの構造が変わってる部分があるため、単純に動作はしないようです。
そういえば、画像のハリコテストがまだだった。
この画像は、テディベアで有名なシュタイフ社から1950年代に発売されたGucki人形。
もっとも、私のリネージュでの名前は、この人形から取ったわけではありません。
かつてのあだ名グッキー→Firstキャラを「Guckie」に→セカンドキャラ作成時、どうせすぐやめるだろうと投げやりに作ったキャラ=「Gucki」です。
しかしGucki人形の方もテディベアに比べると投げやりに作った感に溢れており、なんとなく愛着を持っていたりしますw
・インストール
MT5ではmysql5のみサポート。今まではSQliteを使っていたが、SQliteでも動くがサポート外とのことらしい。
とりあえずSQliteでインストール。
無難そうなclassicのTWTのスタイルを適用し、MT3の記事をインポート
・カスタマイズ
MT5ではCSSをデザインテンプレートのものも含めて複数使用しているが、一番いじりたいデザインテンプレート付属のCSSがMT5の中から編集できない・・・(私の見落としかもですが)
いちいちエディターで開いてFTPでUPしなおす作業が煩雑だ。
(1)記事移入後サイト再構築を行うが再構築エラー、internal error 500。前バージョンでも行っていた、mt-config.cgiにリビルドのエントリ数を設定してみるという方法を試し、結果OK
EntriesPerRebuild 5をmt-config.cgiに追記
(2)IE以外のブラウザでCSSが効かない
CSSのエンコードがBLOGのエンコードとずれていた。CSSのエンコードをUTF-8に修正し解決。
(3)BLOG全体が左寄せ表示されていたものを中央表示に
IEとその他のブラウザでは挙動が変わるので、調整してみた。
CSSでBODYに対して text-align:center; 追加、BLOG全体をくくるcontainerを設定し、CSSに追加し、margin autoを設定。
#container {
line-height: 140%;
margin-right: auto;
margin-left: auto;
text-align: left;
padding: 0px;
width: 1000px;
}
この2段構えの設定でたぶんどのブラウザでもOKなはず。
(4)BLOG形式を前のBLOGに合わせる
CLASSICスタイルでは、横幅が狭いので、全体幅を広げ、サイドバー幅などを調整した。
→blog.cssのTWT部分の幅の調整
バナー画像、背景画像などを前のBLOGからコピーして表示させるようにした。
bodyに全体背景、headerにヘッダーバナー、contentにヘッダー以下の背景を設定。
例によって隙間が開いたり表示されなかったりをheightやらmarginやら調整して何とか完了。
(5)ウィジェットの設定
ウィジェットに「my_prof」「時計」「My links」を新規に追加、ヘッダーとサイドバナーに設定。
カレンダーを使うことにしたが、投稿のある日がわかりにくかったので、色をつけてわかりやすく。
こんなところかな。
[追記]
外部CSSの編集は、インデックステンプレートに追加で、出力ファイル名とファイルへのリンクの設定により、テンプレート編集画面から編集可能に成りました。
My Prof
RSS Feed
Su | Mo | Tu | We | Th | Fr | Sa |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |