ブログ関係のアーカイブ

リニューアルしました。
このページは、2005年8月後半から2010年12月までのアーカイブです。
2005年8月後半から2010年12月までのアーカイブトップへ

現在のトップページはこちら

MT5.04でprependモディファイアがうまくいかないの続きの話。

ブログのHTMLヘッダーモジュールでprependを使うと不具合が出るとバグレポ送ったら、不具合の再現ができたので修正を検討してくれるとのこと。

一応、現状でも改善する方法があって、一度「HTMLヘッダー」を削除して、同名で作成し直すと正常にprependが使えます。
テンプレートの初期化じゃなくて削除ですよ。お困りの方はお試しあれ。

MT5でバグを見つけたのは2コ目。
プログラムが複雑になりすぎてきた気がする・・・。
アップグレードの際によくわからないエラーが起こったりもするので、MT5を導入する時は新規で入れるつもり。エントリー数が多いので、何かあった時にサイト全体を再構築する時間が長いのも気になっていたので。
切りよく年明けからスタートしようかな。

MT4.1以降、ヘッダー情報がテンプレートごとに切り替わる条件分岐(たぶん元ネタは小粋空間さんのハズ)を入れていたけれど、これがMT5.04でうまくいかない。

Movable Type 5.0(MT5.0)の Include タグと append モディファイア・prepend モディファイアの組み合わせについて

上記サイトではすでに5.02で修正済みと書かれているが、まだ画面に「1」が出ます。
はて、どうしたものか。

そもそもprependって何じゃろ?と調べてみると、ここの解説がわかりやすかった。

MTSetVarBlock とか MTSetVar とか MTSetVarTemplate ではアトリビュート prepend と append が使える

prependを入れる入れないは、変数を使うときに値が追加になるか上書きになるかの違いらしい。同じ変数を使いまわさないシチュエーションなら消してもいいみたい。

そもそもなんでprependがついてたんだろ。
後で同じテンプレートの呼び出しが追加されても大丈夫なように、親切設計されていたのかな?

MTで月別アーカイブやカテゴリーアーカイブを表示する際、常に最新の状態になるようにしておくのに、今まではPHPファイルを新規モジュールで作ってインクルードしていましたが、MT4.2からは、これが設定で自動的にできるようになっていたそうなので、今さらですが変更してみました。

MT4.28だとこんなカンジ。
サイトでPHPを使ってる場合、公開>モジュールオプション>サーバーサイドインクルード>PHPのインクルードをプルダウンから選択

MT4.28でPHPのインクルードをプルダウンから選択

各テンプレートの下にある設定画面を開くと「サーバーサイドインクルード」のチェックが入れられるようになるので、必要なテンプレートでチェックを入れる。
デフォルトの設定で使ってる場合は、月別やカテゴリーアーカイブのテンプレート「ウィジェットテンプレートのアーカイブ」で設定しておくといい。

サーバーサイドインクルードのチェックを入れる

MT5.04だと設定>全般>モジュール設定>サーバーサイドインクルード>PHPのインクルードをプルダウンから選択。他の手順は同じ。

MT5.04でPHPのインクルードをプルダウンから選択

こうすると、テンプレートがモジュールとして処理していたところが、自動で

<?php include("/home/sites/xxxx/web/xxx/includes_c/template_198.php") ?>

という形に置き換わる(テンプレート上では何も変わりませんが、サーバーにあるページファイルをダウンロードしてメモ帳で開くと変化が確認できます)。

MT4.28にアップグレード

Nagi
   2010.12.12 01:53

MT5にアップグレードしようと思っていたけれど、セキュリティ関係のアップグレードなので、とりあえず先に4.28へアップグレード。

久しぶりなので手順が思い出せない・・・。

アップグレードする時は、上書きしないで別ディレクトリを用意する派なので、所々修正する必要があるのですが、たまに修正し忘れたりします。
configのパスとか、スタイルシートのStyleCatcherが呼び出してるパスとか。

ロリポップやチカッパを利用しているユーザーは、FTPソフトを変更するようにアナウンスが入ってましたが、今回これのせいで出だしからつまづいた。

SQLiteのデータベースファイルを移動させるだけでアップグレード終了するはずが、エラーでアップグレードが進まない。
FileZillaを使ってる場合は、編集>設定>転送>ファイルの種類にある「拡張子のないファイルをアスキーファイルとして扱う」のチェックを外してみてください。
これでうまくいく・・・かも。

Mixi見てたらMTの携帯用プラグインがあるそうなのでメモ。

MT5用携帯メール投稿プラグイン KetaiPost

ただしcronで更新するので、チカッパでは厳しいか。
ロリポップでcronが使えるようになったのに、チカッパは置き去りかよ~。
要望を出しておこう。

cronを使わずに(ほぼ)指定日投稿をする とか参考になるかも。

MTの指定日投稿のマニュアルは以下。

指定日投稿や公開キュー等のスケジュール処理の設定

あと、今日付けでセキュリティアップデートのアナウンスがあったので、後でやらねば。
ついでにMT5に変えちゃおうかな。以前困ってたバグは直してくれたし。
[重要] セキュリティアップデート Movable Type 5.04 および 4.28の提供を開始

セキュリティのアナウンスもメールで送ってくれないかな~。
あっ、iGoogleにRSS登録しておけばいいのかと、今さら気づく私・・・。
ブラウザを立ち上げたときの最初のページがGoogleですから。

他のアプリの更新情報もひろえるように登録しておこう。

大きいポップアップ画像をアップすると、ノートパソコンとか画面が狭い場合にウィンドウがリサイズできなくて見れなかったので、画像をアップする度にソース画面を開いて直していましたが、さすがに面倒になってきたので、どこを改造したらいいのか調べてみた。

mt>lib>MT>Asset にある Image.pmの323行目にあるscrollbars=no,resizable=noをscrollbars=yes,resizable=yesに変更。

これで解決!

FCKeditor導入後、エントリー本文に複数の画像を入れると、「ポップアップで元の画像にリンク」が機能しない。前回のエントリーで書いた不具合もあるので、エディタをTinyMCEに変更。

ポップアップ画像の件も改善され、やれやれ。

ところで、マニュアルにはダウンロードしたファイルをインストールするだけと書いてあるが、TinyMCEがインストールしても動かない場合、mt-config.cgiのStaticWebPathを設定する必要がある。
仕事でつかったさくらの場合はこんなカンジで動いたのでメモ。
StaticWebPath    http://xxx.com/mt/mt-static

TinyMCEのすごいところは、エントリー編集画面からスタイルシートに書いたクラス名を呼び出せるところ。
プラグインの「その他の設定」で「カスタム」を選択。
{ theme_advanced_styles : "クラス名1=style01;クラス名2=style02;"}
みたいな形で登録すると、エントリー編集画面の「スタイル」からプルダウンで選べる。

仕事でHTMLに詳しくないクライアントにCSSの説明をする時、「ソース画面を開いて、このタグのところに、このクラスを入れて・・・」など、かなりややこしいのだけれど、これならだいぶ難易度が下がる。
 (こういう装飾がしたいときは、これを選んでください、だけになるので)
う~ん、実に素晴らしいプラグインだ。

MTの記事を書くプラグインを入れたいという要望があったので、FCKeditorを入れたところ、本文中に複数の画像を入れて位置指定するとゴミが入るようになった。
(いろいろいじってるから、プラグインのせいではないかもしれない・・・。
あと、画像のURLは省略してますよ。これはサンプルソース。)

<span style="display: inline" class="mt-enclosure mt-enclosure-image"><img style="margin: 0px 0px 20px 20px; float: right" class="mt-image-right" alt="gazou02.gif" width="200" height="150" src="thumb-200x150-104.gif" /></span>
<span style="display: inline" class="mt-enclosure mt-enclosure-image">&nbsp;</span>
<span style="display: inline" class="mt-enclosure mt-enclosure-image"><img style="margin: 0px 20px 20px 0px; float: left" class="mt-image-left" alt="gazou01.gif" width="200" height="150" src="thumb-200x150-100.gif" /></span>

真ん中の
<span style="display: inline" class="mt-enclosure mt-enclosure-image">&nbsp;</span>
これがあるために、左右に並べたい画像が段違いになってしまう。

本文から特定の単語・文章を削除するようなことはできないのか調べてみた。

正規表現の置き換えがregex_replaceでできるそうなので、 空白スペースの「&nbsp;」をターゲットに

<mt:entrybody regex_replace="/&nbsp;/",""> これで解決。

2枚以上画像があると空白もふえていくようなので、置換演算子のgを指定。

<mt:entrybody regex_replace="/&nbsp;/g",""> これで完璧。

今回やらなかったけれど、もしかしたら<span> ~</span>自体置き換えできるかも?

SQLiteで不具合があったという書き込みを見かけたので、じゃあMT5へのアップグレードはMySQLでやるかと思い立ったのですが・・・。

ウチではMT4.1を使っていたので、とりあえずバックアップとって、データベースをMySQLに変更。バックアップを復元・・・が終わった?あれ?とまった?
試しにMT5のログイン画面にしてみると・・・。

データベースのアップグレード>終わりました>ログイン画面に戻る>データベースのアップグレード・・・の無限ループ。
コミュニケーションパックだか、プロフェッショナルパックが足りないようなメッセージ。

もしかして、MT4.27のコミュニケーションあり版からだったらアップグレードできるかも?

とりあえず、MT4.1から4.27にアップグレード。
ここはSQLiteのデータベースとプラグインなど必要ファイルを移動させるだけなので、なんの問題もない。

んで、MT4.27のデータベースをMySQLに変更。バックアップを復元・・・がやっぱり終わらないよ。

今までSQLiteのファイルを移動させるだけでアップグレードしてきたので、バックアップの復元はやったことすらなかったのですが、ナニコレ。
もしかしてチカッパだから?
なんか最近サーバーが重い気がします。

SQLiteでMT5にログインしようとすると、やはりデータベースのアップグレード画面の無限ループにハマる。

むむむ~。
じゃあ、MT5を新規インストールで、ブログ記事をインポートだ!とやってみたら、記事だけ反映されましたが、ウェブページは対象外。
おまけに今度はブログの公開パスが直せない。URL欄を修正しても、保存を押すと元に戻ってますねん。

ウェブサイトとブログのパスを同じルート配置にしたいのに、なんでここは出来てるんだよ~;;
ブログの作成時にパスの設定をちゃんとしておくと反映するようですが、それでも後から1度でも触ると修正不能。これってウチだけ???
テスト用に別ディレクトリで試してから、サイト公開したかったんだよう~;;

アクセス率アップにLPO対策

Nagi
   2010.01.28 09:00

テンプレートの改造方法を探していたら、こちらのサイトにたどり着きました。
記事の内容じゃなくてスミマセン・・・が、ページのずーっと下にあるリンク元の表示。
これがおもしろいなあと思って、あれこれと妄想。
検索数の多いキーワードでタグクラウドみたいなのを作れたら面白いじゃないですか。
ヒットしたキーワードに該当するページへのリンクを表示するとか。

こんなのどうやってるのかなあと調べていたらすぐ試せる!カンタンLPO実装法にたどり着いた。
なんだ、できるんじゃん~。
MTでもできそうだなあ、と思ったらやはりMT4で簡易的なLPO対策を実現するモジュールにありました。

育児に追われている間に、だいぶ世の中は進んでいたのね。

カスタムフィールドで商品一覧表示するページを作っていて、エントリー本文に商品画像を入れ、それのサムネイルやアイテムを色々なページで使い回していたのですが、肝心のエントリー本文に画像があるかどうかの判定がうまくいかない。

マニュアルによると、<mt:If tag=”EntryBody”>で、エントリー本文に値があるかどうかの判定ができるはずなんだが・・・。
調べてみると、mt:If tag=”EntryBody” が効かないので、 みたいなこともあるようなので、別の方法を模索。

一晩あれこれ考えながら寝る。

朝になって、ひらめいた。
エントリー本文に画像があるかどうかわかればいいんだから、like="img"でいけるじゃん!

キター!ってカンジ?
このひらめきを実行に移す時って幸せ感じるよねえ~。

子どもの妨害をかいくぐりつつ実行。
本文に画像があれば、アイテム画像を表示、なければ代替画像を表示はこんなカンジで完成。

<MTSetVarBlock name="noimage"><$MTEntryBody$></MTSetVarBlock>

<MTIf name="noimage" like="img">
<MTEntryAssets type="image" lastn="1">
<a href="<$MTEntryPermalink$>" title="<$MTEntryTitle$>"><img src="<$MTAssetThumbnailURL width="80" height="60"$>" alt="<$MTEntryTitle$>" /></a>
</MTEntryAssets>
<MTElse>
<img src="/img/noimage.gif" alt="" width="80" height="60" />
</MTIf>

MT5で複数ドメインを運営

Nagi
   2010.01.23 01:33

Movable Type 5 ドキュメント に「別ドメインの複数のウェブサイトを、ウェブサーバー上のひとつMovable Typeで管理できます。」と書いてあるので、実際のところはどうなのかをやってみた。

ウチはマルチドメインで2つのドメインを持っているので、親元のサイトにMT5を入れてテスト。
ウェブサイトの作成後、ブログだけ違うドメインで運営したかったけれど、それはムリ。
ブログ用にウェブサイトをもうひとつ作成し、公開パスをもうひとつのサイトにする。

問題は、ページのURLはそれぞれ別になるけれど、トラックバックやコメントのURLが親元のサイトになるので、どのサイトが親元なのか丸見えになること。

これじゃ、秘密(?!)のサイトは作れそうにないな。

2011年2月1日追記:参考になりませんが、コチラも同じ話題です。
シンボリックリンクの作成でハマる

SetVarを使った変数による条件分岐のやり方が、何度リファレンスを見てもよくわからない。

たまたま他のプログラマーの仕事を覗く機会があったので、テンプレートをチラ見させていただきました。
忘れないようにやり方をメモ。

インデックスやウェブページ、カテゴリーなどはテンプレート名が決まってるので、ページごとにデザインやコンテンツを変えるのは簡単なんですが、カスタムインデックステンプレートは決まった名前がないので、自分で名前をつけます。

カスタムインデックステンプレートの先頭などで変数の宣言をする。
<$mt:SetVar name="CatName" value="1"$>

デザインやコンテンツで条件分岐をしたいところに
<mt:If name="CatName">
ここはカスタムインデックスで使いますよ。
<mt:ElseIf name="main_index">
ここはトップページで使いますよ。
<mt:ElseIf name="archive_index">
ここはアーカイブで使いますよ。
<mt:Else>
他のページで使いますよ。
</mt:If>

というワケよ。
変数を宣言しても、どうやってそれを呼び出すんだかよくわからなかったんです。
こんなんでよかったのね・・・。

MT5をインストールしてみた

Nagi
   2010.01.12 15:37

実家の母が援軍で来ている間に、ちょこちょこ仕事。
ここしばらくMT4の仕事で苦しめられたので、いまさらながらMT4の参考書をアマゾンで注文。
ついでにやっとこさMT5をインストールしてみました。

う~ん、ずいぶん大規模になりました、という印象。
ブログだけでなくウェブサイトをまるごと作りましょう、というコンセプトらしく、ウェブサイトの構築から入ります。
ウェブサイトだけ使うならウェブページのみ利用。ブログも使うならウェブサイトを作ってからその下にブログを作るカンジ。
アイテムの管理画面が増えてるのは、いいかも。

ショックなのは、SQLiteがサポート外になったこと。MySQLってバックアップとか面倒なんだよね~。
SQLiteがサポート外といっても、一応普通に動くみたいだし、個人ライセンスはもともとサポート外なので、SQLiteでもいいかなあ、と思うのですが、どうでしょうか。

仕事で使う方は・・・MySQLじゃないとダメだよね、ふう。

とりあえず、しばらくいじってからアップグレードしてみます。
ついにMySQLも避けては通れなくなったのね。

解決しましたが、一晩悩んだのでメモ。

プレビューは、個別記事のテンプレートを使うので、個別記事のテンプレートを削除してると見れないんだよ!!!

tmplファイルも全部見直したのに、わかったのはプレビューは一時ファイルを作ってそれをインラインフレームで表示しているだけだった。
それなら、この一時ファイルはどこで作ってるんだよ、ってことなんですが、これは不明。
ああ、疲れた;;

約1ヶ月前にMT4にバージョンアップをしましたが、デザインはデフォルトテンプレートのまま放置して作業を進めるのを忘れていました・・・。
ほら、英語やったりアニマスやったり色々はじめちゃったからね・・・。

今日1日でどこまでできるか、手抜きの突貫工事。
細かい部分はおいおい直していくということで。
ヘッダーのパラパラアニメは、先日のアクションの練習を流用。
サイトタイトルと説明文は、いつもウィンドウ外に飛ばしてましたが、スタイルを入れ替えたときにおかしくなるので残しました。
完成したスタイルをthemesにアップロードし、スタイルの適応を押せば、再構築さえせずにデザインの入れ替え完了!
StyleCatcherサイコ~。

英語の勉強は1.5時間。
アニマスでの作業時間は0.5時間。

●MTRemoveBlank プラグイン
テンプレートの#betaや#gammaにあるリストタグまわりに改行が入りまくってソースコードが美しくないので、テンプレートのサイドバーを開いて、<MTRemoveBlank>~</MTRemoveBlank>で囲んでみました。
おお~、月別アーカイブまわりがだいぶスッキリしました^^

編集箇所:テンプレートモジュール>サイドバー

#footerやエントリー周辺もいじってみましたが、大元のテンプレートをいじればこまごま修正しなくてもいいことに気がついたので、indexとarchives.html、アーカイブテンプレートのウェブページ、ブログ記事、ブログ記事リストの5種類を修正してみました(手間としてはモジュール別に修正するのとあまり変わらなくなってしまったかも?)。
サイドバーは、これらのページにどう呼び出されているのかよくわからなかったので、とりあえず前述の方法のままで。

●エントリーを書いている時に、勝手に自動保存させない。
エントリーを書きながらバックグラウンドでサイトの再構築をしていたりすると、記事が消えてしまったりする事故が・・・。
勝手に動くな~、ということで、自動保存間隔を抑止する を参考に変更してみました。こちらではmt/tmpl/cms/edit_entry.tmpl の1130 行目となっていますが、191行目にありました(4.1だから?)。
これで効いてるのかな?

●カレンダー
エントリーがある日のところのリンクが目立たないので、エントリーがある日のtdに背景色のクラスが入るようにしてみました。
<mt:CalendarIfEntries>
<td class="entryday">
<mt:Entries lastn="1">
<a href="<$mt:EntryPermalink$>"><$mt:CalendarDay$></a>
</mt:Entries>
</mt:CalendarIfEntries> <mt:CalendarIfNoEntries><td><$mt:CalendarDay$></mt:CalendarIfNoEntries> <mt:CalendarIfBlank><td>&nbsp;</mt:CalendarIfBlank></td>
(※見やすいように改行しましたが、テンプレートでは1行で記述。)
編集箇所:ウィジェットテンプレート>カレンダー
編集箇所:スタイルシート>StyleCatcherの記述の下に追加

あと、5月末にAsset Handlerを入れた際に消してしまった画像は、やっと復旧させました。
星と習字の写真が主で、星は大きい画像が残っていたのでそこから作り直し。習字は練習していた紙を残していたので、再度撮影しました・・・。
習字は放っておいてもよかったんだけど、壊れアイコンがあちこちにあるのが、どうも生理的にね・・・。

英語の勉強は2時間。
アニマスでの作業時間は3時間。

Mt4.1メモ、MTRemoveBlank プラグイン

Nagi
   2008.06.04 22:52

MT4から、テンプレートの編集に余計なスペースや改行が入るのがイヤだなあと思っていましたが、やはり同じことを考えている人がいて、ステキなプラグインを公開してくれていました。

MTRemoveBlank

カレンダーとか条件分岐がいっぱいあると改行も増えるので、見やすさを無視して一行でタグを書いてましたが、これさえあれば問題なし。後日ためしてみます。

英語の勉強は2.5時間。

Movable Type 4.1:MT-Plugin-FCKeditorカスタムキットVer.2 を使って、画像を挿入した時のソースをMT3と同じ形にしました。このプラグインは、アップロードの際に細かい指定もできるの優れものですが、設定にはかなり苦戦。

苦戦の理由は、パーミッションの設定を変更しないといけないことに気がつかなかったこと。
画像はいつもimagesディレクトリに入れてるんですが、なぜかプラグインがこの中にフォルダを作ろうとしてパーミッションエラー。
どっかに設定があるのかと探してみたら、同じconfig.phpの122行目にファイルタイプがimageの時はimageフォルダの中にファイルをアップする指定があった。
画像しかアップしないので、そんな余計な気遣いは無用です。ここはブランクにさせていただきました。

さて、これで画像のアップロードに関してはスッキリしたのですが、このプラグインの使用条件、テキストフォーマットが「リッチテキスト」での編集なんですよ。これが苦手で・・・(ずっと「改行を変換」で通してきたので)。
エントリー画面のブラウザのステータスバーに、スクリプトエラーのアイコンも出てるのも気になる。
画像を挿入した時、コードの記述が img height="" alt="" width="340" src="" の順番になるのも微妙に気になりますが・・・。

ボタンがずらずら並ぶのは、こちらを参考にすればなんとかカスタマイズできました。
カスタムキットを使っていると、mt-static/plugins/FCKeditor/js/fck_editor.jsの8行目は、ToolbarSet: "Custom",なので
mt-static/plugins/FCKeditor/fckeditor/fckconfig.jsの114行目にあるCustomを編集してみた(別の名前のセットを作ってもいいですが)。
必要なものを選んで、ここまで削ってみました。
カスタマイズした編集画面のツールバー
デフォルトだとエントリーのテキストエリアが2行くらいになってしまい、いちいち枠を広げる必要がありましたが、これだとエントリー画面も広々です(なんでか知らんけど)。

あ、でもこのプラグイン使うとポップアップ形式で画像を埋め込むのはムリかも?
HTMLを自作してからアップロードするんだろうか・・・。

英語の勉強は2時間。

ここ数日、たくさんの画像を記事内に入れましたが、この作業がなかなかの苦行。
以前のバージョンと比べてアップロードまでの時間が長く、余計なタグも山ほど入ります。
複数の画像がある時は、めんどくさいので全部FTPでアップしてました。
こちらにあるStylelessImageを使わせていただいたのですが、消せるのはclassだけでした・・・。
そうではなく、バージョン3の時と同じようなシンプルな形にしたいのです;;

「画像の挿入」を使わないとアイテムとして扱われないようなので、とりあえず画像を一括で管理できるAsset Handlerというプラグインを入れてみましたが、思わぬアクシデントが!!!
画像の登録方法が3択になっていますが、全部登録する方法しか動かないので、あとでアイテムから消せばいいやと思っていたのですが・・・。
アイテムから削除すると、サーバー上からもきえてしまうんですよ!!
途中でふと疑問に思って確認してみたら・・・。
データベースのバックアップは取っているけれど、画像のバックアップはないです・・・;;
あ~あああああああああああああ~・・・、やっちまった(泣)

英語の勉強は2.5時間。

ウォーキングの記録と英語の勉強時間をカスタムフィールドで作ってみた。
さすがに必須にチェックは入れられない・・・。

新規モジュール「歩数と勉強時間」をつくり、下の2つのテンプレートに<$MTInclude module="歩数と勉強時間"$>として入れるだけ(とりあえず追記の閉じタグの下)。
編集箇所:テンプレートモジュール>ブログ記事の概要と、テンプレートモジュール>ブログ記事の詳細
テンプレートの中身は、カスタムフィールドを作ったときに、保存ボタンの上に「テンプレートの例」が隠れているので、それを参考に。
直したくなったら、テンプレートモジュール「歩数と勉強時間」だけ直せばいいので楽チン。

さて、ここ数日、久しぶりにウォーキングをしてます。
といっても、今までみたいには歩けないので、よろよろとご近所をうろつく程度。
血糖値がヤバイのよ、今。

今日の万歩計は3092歩。
英語の勉強は2.5時間。

●カスタムフィールド
どんな使い方をするのか見てみたところ、なかなか面白い。
エントリーの編集画面に好きな項目を追加できるので、ダイエットなどで毎日同じ項目を記入する場合などに活躍しそうだ。今日の腹筋回数とか、体重の増減などを必須項目にすれば、イヤでも目に入る。
ワタシのように意思の弱い人間には特に強制力を持たせられるかも・・・。

カスタムフィールドを本文中に表示するには、テンプレートにタグを追加してやる必要がある。モジュール化しておけば、後々ラクになるかもしれない。

●RSS
今までMixiではindex.rdfから更新情報を拾っていたみたいなんだけど、MT4.1にはindex.rdfがない。
とりあえずatomに修正したけど、どれが一番普及しているんだろう。
この分野も疎いなあ・・・。

●StyleCatcher
どうやってデザインを変えるかという問題ですが、一度StyleCatcherを使うとデザイン>テンプレート>スタイルシート(style.css)に読み込んでいるスタイルのパスが表示されます。
例えば、デザイン>スタイル>規定のスタイルからHills Pinkを選ぶとこんなカンジ。

/* This is the StyleCatcher theme addition. Do not remove this block. */
@import url(http://www.xxx.com/xxx/mt-static/themes-base/blog.css);
@import url(http://www.xxx.com/xxx/mt-static/themes/hills-pink/screen.css);
/* end StyleCatcher imports */

mt-static/themes-base/の方は触らずに、mt-static/themes/hills-pink/をFTPでダウンロードして中身を確認。
hills-pinkのフォルダ名と中身を変更して同じ場所にアップすれば、規定のスタイルに自分で作ったスタイルが反映します。
こうやって登録しておけば、いつでも他のスタイルに変更できるし、3カラムから2カラムへのレイアウト変更も自由自在。ただし、レイアウトを制御している部分を触る場合は慎重に。

●テンプレートセット
プラグイン機能としてテンプレートセットから自作する方法もあるんですが、何度やってもうまくいかず・・・。
テンプレートのコードを改変した時や、アーカイブマッピングの設定などをしなくて済むようなので、できれば便利なんでしょうね。
これは今後の課題としてとりあえず保留。

追記:(タイトルがわかりにくかったので変えました。中身は昨日とほぼ同じです。)

デザインは据え置きですが、テスト環境のままとりあえず暫定リニューアル公開。

●ページ分割プラグインで記事が指定数に足りない場合、<$MTPageLists$>がリンクなしの1として表示される部分の回避方法

MT側の条件分岐で表示の方法を変えてみた。
もともと入っていたdatebased_archiveの条件分岐が何を指しているのか今までわかっていませんでしたが、これはカテゴリー以外の月とか日付別アーカイブを指すものでした。
月別アーカイブでページ分割プラグインは必要ないので、この部分はデフォルトに戻す。

<MTIf name="datebased_archive">
<MTEntries>
<$MTEntryTrackbackData$>
<$MTInclude module="ブログ記事の概要"$>
</MTEntries>

<MTElse>
<MTSetVarBlock name="myValue"><$MTEntriesCount$></MTSetVarBlock>
<MTIf name="myValue" gt="50">
<MTPageContents count="50">
<MTEntries>
<$MTEntryTrackbackData$>
<$MTInclude module="ブログ記事の概要"$>
<$MTPageSeparator$>
</MTEntries>
</MTPageContents>
<div class="for_pagebute">Page: <$MTPageLists$></div>
<MTElse>
<MTEntries>
<$MTEntryTrackbackData$>
<$MTInclude module="ブログ記事の概要"$>
</MTEntries>
</MTIf>
</MTIf>

条件分岐は、「月別アーカイブの場合と、それ以外の場合」。
それ以外の場合に、「エントリー数が50より多い場合と、それ以外の場合」となっています。
編集箇所:アーカイブテンプレート>ブログ記事リスト

あちこちに参考にして条件分岐の方法を考えてみたけれど、イマイチMTSetVarとMTSetVarBlockの使い分けがわからん・・・。

MT4.1の作業メモ その2

Nagi
   2008.05.17 00:22

Another HTML-lint gateway でチェックしてみたところ、気になるのがこの3つ

■<address> を <span></span> 内に書くことはできません。<address></address> 内に <span> を書くことはできます。

減点9のエラーのため、<span class="byline vcard">は削除。意味ないみたいだし。
編集箇所:テンプレートモジュール>ブログ記事のメタデータ

■スタイルの.asset-footer
各エントリーの区切り用なんだが、HTML上では<div class="asset-footer"></div>になっていて減点対象になる。
自分のテンプレだけで運営する場合は削除してしまえばいいのだが、StyleCatcherを使いたい場合は残さざるをえない。

■<A> のアンカー `XXXX` は NN行目で異なるリンク先を指しています。

ムリヤリtitleを付けました。
<a class="permalink" rel="bookmark" href="<$MTEntryPermalink$>" title="<$MTEntryPermalink$>の個別ページ">個別ページ</a>
<a href="<$MTEntryPermalink$>#comments" title="<$MTEntryPermalink$>のコメント">コメント(<$MTEntryCommentCount$>)</a>
<a href="<$MTEntryPermalink$>#trackbacks" title="<$MTEntryPermalink$>のトラックバック">トラックバック(<$MTEntryTrackbackCount$>)</a>
編集箇所:テンプレートモジュール>ブログ記事のメタデータ

昨日のつづき ---------------------------------------

●ウィジェットの月別アーカイブのタイトルにアーカイブページへのリンクが来るのは、こじつけっぽくないか?
月別アーカイブのリストがあって、そこに飛ぶというのなら意味が通じるのだが・・・。
とりあえず削除。
編集箇所:ウィジェットテンプレート>月別アーカイブ

●続きを読むの表示をちょっと修正
編集箇所:テンプレートモジュール>ブログ記事の概要

●アクセス解析タグをどこ入れるか
これを入れると1行増えてしまうので、bodyやfooter-contentの閉じタグ前に入れたらデザインに影響する。
とりあえずalpha-innerの閉じタグ前に入れてみた。
alpha-innerの閉じタグがどこにあるかというと・・・
編集箇所:テンプレートモジュール>フッター の1行目がalpha-innerの閉じタグ。

●カテゴリーアーカイブのpage-titleの中で、カテゴリ名が斜体になるのを修正。
英文ならともかく、日本語での斜体(プラス太文字で)はあまりイケてるとは言い難い。
編集箇所:アーカイブテンプレート>ブログ記事リスト

●ページ分割プラグインを使った部分の見栄えを変更
記事が指定数に足りない場合、<$MTPageLists$>がリンクなしの1として表示される。
Google方式で言えば、ここは何も表示しないで欲しいのだが、今のところ回避方法はなさそう。
編集箇所:アーカイブテンプレート>ブログ記事リスト

MT4.1の作業メモ その1

Nagi
   2008.05.15 16:56

●トップページだけページのタイトルに文章追加。
編集箇所:メインページ>5行目<$MTBlogName encode_html="1"$>の横

●記事の投稿日の表示方法を変更
タイトル下に投稿日等が来るのも気に入らないが、とりあえずデフォルトで。
編集箇所:テンプレートモジュール>ブログ記事のメタデータ>MTEntryDate formatの2箇所
編集箇所:テンプレートモジュール>コメント詳細
(<a href="#comment-<$MTCommentID$>">
<abbr class="published" title="<$MTCommentDate format_name="iso8601"$>">
<$MTCommentDate$></abbr></a>)
のところを
&nbsp;&nbsp;<abbr class="published" title="
<$MTCommentDate format_name="iso8601"$>">
<$MTCommentDate format="%Y.%m.%d %H:%M"$></abbr>
に変更

●プロフィールなどをウェブページに
デフォルトだとサイトルートにファイルが出来てしまうので、フォルダを作ってみたが、今度はそのフォルダ名がページに表示されてしまう。これも必要ないので削除。
編集箇所:ウィジェットテンプレート>ページ一覧ついでに言うなら、ウェブページ、って名称が気に入らない。
「ウェブページ?何それ?」というところなんだが、他に名称が思いつかない。「個別ページ」エントリー個々のページで使ってるし、「その他」っていうのもあんまりだし・・・。
直すなら、編集箇所:ウィジェットテンプレート>ページ一覧

●アーカイブページから、エントリーリストの下に出る月別アーカイブ、カテゴリーアーカイブを削除。
ページ右に載ってるんだから必要ないでしょ。
編集箇所:アーカイブインデックス

●カテゴリーを任意の順番に直す
このプラグインすごい!
今までカテゴリー名に連番振ったり、あれこれ工夫していたのを一発解決。
カテゴリーとフォルダを並べ替えるプラグイン(MT4以降用)
編集箇所:MT4.1のテンプレートで書き換えるのは、TopLevelCategoriesで検索して出てくる4箇所のみ。

●エントリー数が多すぎて、日記のカテゴリーアーカイブの表示が崩れるのを修正
アーカイブだけページ分割プラグインで50件ごとに区切ってみた。
静的ページ用ページ分割プラグイン:PageBute

PHPでなくてもできるところがすごい!
ただ、「次へ」「前へ」のリンク先がおかしい気がする。
Googleだと10の「次へ」は11だが、こちらでは見ているページの次の数字になる(2ページを見ているなら、「次へ」は3ページにリンクされる)。
別に間違っているわけではないのだろうけど、慣習というか慣れだよね・・・。
編集箇所:アーカイブテンプレート>ブログ記事リスト>モジュール:ブログ記事の概要をはさんでいるMTEntriesの2箇所

●カレンダー
条件分岐が多いので、ソースにムダに改行が入るのが気に入らないので修正。
日付が一桁のときにずれて表示されるので、センターリング。
編集箇所:ウィジェットテンプレート>カレンダー
編集箇所:スタイルシート>StyleCatcherの記述の下に追加
.widget-calendar td,.widget-calendar th {
text-align: center;
}

ところで、カレンダーは<div class="widget-calendar widget">で囲われているんだが、
クラス名にスペースって入れられたっけ(この部分に限らず、ウィジェットのコンテンツはこの方式のクラス名みたい)?
.widget-calendar widget tdでは認識しないので、しばらく困った。

●最近のコメント
誰それからのコメント、という部分を削除。
trim_toは、コメント本文から何文字抜き出す、というところ。これは削除。
remove_htmlがあると、コメント本文にある改行などのタグを消すようなので、これも削除。
編集箇所:ウィジェットテンプレート>最近のコメント
リストの位置を修正
編集箇所:スタイルシート>StyleCatcherの記述の下に追加
.recent-comments-list {
margin: 5px 0;
list-style-type: none;
}
.recent-comments-list li {
line-height: 140%;
}

●本文の中にある画像の上下にゆとりを。
編集箇所:スタイルシート>StyleCatcherの記述の下に追加
.asset-body img {
padding: 5px 0;
}

●ヘッダーのメタタグ等をトップページとその他のページで分けたい場合の条件分岐。
今日のSEO:Movable Type 4.1で簡単楽々SEO
編集箇所:テンプレートモジュール>ヘッダー
headタグ内にある<$mt:var name="html_head"$>がテンプレート先頭の<mt:setvarblock name="html_head" prepend="1">~</mt:setvarblock>の中と置き換わるので、この中に書いてやればよい。

去年MT4がリリースされて以来、何件かMTの案件はあったのですが、テンプレートが複雑すぎて手に負えず、今にいたるまで導入を避けていましたが、MT4指定の仕事も見かけるようになってきたため、いつまでも逃げ回るわけにもいかず、とりあえず自分のところでテストしてみよう、という次第です。

以前のテスト時から原因不明だったのがコレ。
・MT3のデータベース(SQLITE)だけMT4に放り込んでアップグレードしてみたものの、MT4のテンプレートがアーカイブテンプレートに引き継がれない。
・インデックスのアーカイブのリンク先が認識されない。

Mixiで聞いてみても反応が薄かったので、他の人がどうやってMT3からアップグレードしているのか検索してみたところ、不具合の原因はアーカイブマッピングの設定をしていなかったせいでした。

なん~だ~、そんなことかよ~・・・・。
だってSix Apartの説明、これしかないんですよ。気がつくと思います?

アップグレード後、Movable Type 4 の標準のテンプレートを利用するにはどうすればよいですか

マニュアルを見直したら、このページの下の方に書いてありましたがね・・・。

ほかにもアップグレードにまつわる不具合、ハマる箇所もあるようです。
MT4の標準テンプレートなんか捨てちまえという意見も見かけましたが、請負仕事の場合、そういうワケにもいかないのよねえ。
MT4の新機能を使うためには標準規格に沿わねばならず、規格に沿うとメンテナンス性がいちじるしく悪くなりそうなジレンマ。
うう~・・・、どうしたらいいんだ。いや、やるしかないんだけどさ。

MTプラグイン色々導入

Nagi
   2007.02.01 21:04

Sixapartの日本語プラグインディレクトリがだいぶ充実してきたので、色々なプラグインを入れてみました。

UploadDir
これ、すごくいい!
画像やムービーなどをアップするときのディレクトリを、拡張子別に自動で振り分けてくれるんです。
毎回画像をアップするときに面倒だったのが解消!

TBPingLinkLookup
こっちのサイトへのリンクがないトラックバックを、スパムとして弾くみたいです。
効果のほどが楽しみですな。

BigTemplateWindow
テンプレートを編集するときに、タグの入力を補助してくれるもの。
インターフェイスがややチープなのが気になりますが、なかなか便利そうです。

今日の万歩計は8675歩。
今日のお昼もオートミールでした。
明日もたぶんオートミールです。凝りやすいAB型の性です。
コレ、けっこう腹持ちいいみたいですよ。晩御飯まで間食なしでOK。

先月、MTのスパム対策をしたんですが、先週あたりから再び迷惑トラックバックがつきはじめてしまいました。
リネームくらいじゃ1ヶ月ももたないのね・・・。

ということで、MTのバージョンを3.33から3.34に上げて、トラックバックのURLをjavascriptで書き出す方法を取りました。さて、効果のほどはどうでしょうか。

・・・なんて、油断してたら、いきなりスパムコメントが大量に付き出しました。
バージョンアップで、何か設定が変わったかな?

今日の万歩計は12380歩。
山の下のスーパーまでジョギングで下って、買い物して帰ってきました。
帰りは歩きです、もちろん。ヒザがガクガクして、動けねえ~。
バスで帰ろうかと思ったよ。

MTのスパム対策再び

Nagi
   2006.12.26 12:27

チカッパに移転して4ヶ月くらい経ちましたが、どうにもサーバーが重い気がする。
ページの表示が異常に遅くないですか?ウチのサイト。

たまにタイムアウトするし、ロリポの方がマシだったんじゃなかろうかと後悔している今日この頃です。

もしかしたら、サーバーのせいでなく、スパムの集中砲火でも浴びている可能性もあります。迷惑トラックバックにコンスタントにスパムが付くし、なんだか人気サイトにでもなったようです。

MT標準のプラグインでかなりスパムを弾いてくれているんですが、CGIが動いてしまっては意味がないので、ちょっと対策をしてみることにしました。

スパムトラックバックが激減! を参考に、$MTEntryTrackbackData$の削除と、リネームを実行。

あと、JavaScriptを使ってスパムによるCGIの過負荷を防ぐ という手段もあるようなので、場合によっては導入させていただこうと思います。

ついでに、今更ながらバージョンを3.33にしました。
3.31からだと上書きするだけでいいんだっけ?
なんかメッセージとかでなかったかなあ・・・とやや不安。
しばらくやってなかったから忘れてちまいまちた・・・。

自分のブログをなんとなく眺めていたら、表示されていないところがあることに気がつきました。
MTEntryAuthorDisplayNameの部分が3.3からセキュリティ対策のため使われないようになっていたそうです。
ガーン、ずいぶん長い間気がつかなかった。
バージョンアップしたのはいつだったろうか・・・。

ずっと同じデザインテンプレを使いまわしていると、思いもよらない落とし穴があるかもしれないなあ。

個別ページのファイル名を、年/月/日時分.phpの形に変更

<$MTArchiveDate format="%Y"$>/<$MTArchiveDate format="%m"$>/<$MTArchiveDate format="%d%H%M"$>.php

覚え書き
カテゴリーはこうなってます。
<$MTCategoryLabel$>.php

古いファイルは、しばらくサーバーに残しておくべきか。

携帯からの投稿が可能なMTmail

Nagi
   2006.07.31 22:20

携帯からの投稿可能なサービス発見!
MTmail

MTという名前でも、MT専用ではないそうだ。

MT3.3が正式リリース

Nagi
   2006.06.28 22:36

MT3.3が正式リリースされましたが・・・、しばらく入れるのやめとこ。
前回不具合あったもんね。
パッケージとデータのバックアップも忘れずに~。

日本語版プラグイン・ディレクトリが公開されたので、そっちの方を確認!

Custom Fields 1.2の条件分岐表示

Nagi
   2006.06.20 10:16

Mixiで条件分岐がうまくいかないって人がいたので、身を挺して調べてみたんだが、本人退会してるし・・・。

せっかくうまくいったので、やり方を書いておこう。
そのやり方とは・・・・!

標準タグに、自分でつけたフィールド名を入れてあげるだけ。
た、単純~・・・。

フィールド名がweather testの場合

<MTEntryData field="weather test">
<MTEntryDataIfFieldValue>
<MTEntryDataFieldValue>
</MTEntryDataIfFieldValue>
</MTEntryData>

以前のバージョンは知りませんが、これで動きましたよ。
設定画面にある、Required? は必須項目にしますか?という意味なので、ここにチェックを入れると当然条件分岐はできません。

あと、バグだと思うんだけど、フィールド削除してもデータがどこかに残ってて、設定画面から消えてもエントリー画面には出てきちゃうんです。
こっちの方が困った・・・。

うちの運営環境はこちら。
ロリポップ、SQLite、Movable Type 3.2-ja-2

Custom Fields のデータ自体はMTと別に保存されるので、バックアップはどうやって取るのか不明。
phpのフォルダに入ってたファイルにでも記録されてるのかね?

参考サイト:CustomFields で入力項目の追加

最近のコメント欄のタグ変更

Nagi
   2006.06.19 10:26

このページの左にある「最近のコメント」欄ですが、今までコメントが付いたエントリーを7つ呼び出していました。
ただ、これだと記事の並びがエントリーの日付順だったので、どこに新しいコメントがついたか分かりにくいため、これを

<MTEntries recently_commented_on="7" sort_order="ascend">
<a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a><br />
<MTComments>
<div class="comment">
<$MTCommentBody$>
<p class="comment-footer">Posted by <$MTCommentAuthorLink show_email="0"$> : <$MTCommentDate format="%Y.%m.%d"$></p></div>
</MTComments>
</MTEntries>

新しいコメントが上に来るように変えました。

<MTComments lastn="8" sort_order="descend">
<MTCommentEntry>
<a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></MTCommentEntry>
<br />
<div class="comment">
<$MTCommentBody$>
<p class="comment-footer">Posted by <$MTCommentAuthorLink show_email="0"$> : <$MTCommentDate format="%Y.%m.%d"$></p></div>
</MTComments>

でも、これだとエントリーごとの区切りじゃないから、コメントの前後が時系列にできないんだよね~。なんかうまい方法はないかな・・・。

MT3.3の情報

Nagi
   2006.06.14 17:26

販売開始されたというニュースがありましたが、まだベータ版ですよね?
http://japan.internet.com/busnews/20060614/2.html

日本語版プラグイン・ディレクトリは熱望していたので、期待大です!

SpamLookupの設定

Nagi
   2006.05.24 08:44

コメントスパムのブームが収まらないようなので、MTに標準でついている SpamLookup の設定を見直してみた。

システムメニュー > プラグイン > SpamLookup - Link > 設定を表示
”超えた場合に「未公開」にする” のチェックを外す。
”超えた場合に「迷惑コメント/トラックバック」にする” を4にする。

コメント欄にリンクを含んだ書き込みがあると未公開になっていたのを、一発退場になるようにした。

システムメニュー > プラグイン > SpamLookup - Keyword Filter > 設定を表示
迷惑キーワードに http 4 を追加。

リンクタグを含まないけどURLは含む書き込みも、一発退場。
こんなやつ。

Thank you!
[url=http://xxx.com]My homepage[/url] | [url=http://xxx.com]Cool site[/url]

これでしばらく様子を見てみよう。

SpamLookupの情報が何かないか探していたところ、blog.bulknews.netさんのところで、BanASCIIというのを配布しているそうです。

Ogawa::Memorandaさんでは、パッチを配布。

標準のままで防げなくなれば試してみよう。

コメントスパムの新種?

Nagi
   2006.05.18 08:44

MTのログを見たら14日の分に、

「Internal callback」は、次の理由で使えません: アップデート中にSQLエラーが発生しました: database is locked(5) at dbdimp.c line 401

というメッセージが出ていた。はて、なんじゃろ?
同一時間帯に、知らない2つのIP。

データベースエラー?ハッキング?
そういえば、この時間帯はコメントスパムが大量に来たときだ。

データベースがロックされているので、Internal callbackは使えませんという意味かな?
スパム用のロボットでコメントにアクセスしたけれど、何かの命令のcallbackができなかった?
あるいは、スパム用のロボットで直接データベースに書き込もうとしたけれど、ロックしてあってできなかったとか。

このメッセージは初めて見たけれど、新種のスパム?
外部のプラグインでスパムを弾いたときもログにメッセージが出たと思うけど、こういう文章じゃなかったなあ。

久々のコメントスパム

Nagi
   2006.05.14 10:23

朝、メールのチェックをしたら、このサイトにコメントが着いたというお知らせメールが大量に来ていた。
3.2-ja-2 にバージョンアップしてから、初めてのコメントスパム。
コメント欄にURLが入っていたので、未公開扱いになったらしい。
ほほう、3.2-ja-2 のスパムフィルターは、そういう動きをするんだ、と初めて目の当たりにしたわけです。

うちは、コメントの投稿にメールアドレスを要求する他は、とくに制限がない。
以前のバージョンで運営しているときは、いろいろなプラグインを試していたんですがね。

まあ、しばらくまた様子を見るということで。

50音順に並べる

Nagi
   2006.03.09 11:30

Mixiでおもしろい技が紹介されていたのでメモ。

普通にカテゴリ表示すると文字コード順になってしまうけれど、任意文字を< >で括って
<MTCategoryLabel decode_html="1" remove_html="1">
とすれば、括ったところは消えるけれど、< >に書いた順で並ぶ。

ほ~、よく考えたもんだね。

複数カテゴリーの表示

Nagi
   2006.03.08 13:37

特定のカテゴリーを複数表示させたい、というリクエストがあったので、そのくらいなら標準でできたと思ったのですが、やってみるとなぜか動かない。

ヘルプに
<MTEntries category="Foo AND Bar">
というのがあるんですが、これって今ダメなのかな?
カンマ区切りにしたり、いろいろやったんですがダメなようなので、カテゴリー用のプラグインを入れました。
なかなか優秀なプラグインみたいですが、他のプラグインとあたる可能性もあるので、しばらく暖かく見守る、ということで。

日曜から今日までのできごと

Nagi
   2006.01.23 13:45

昨日はこたろうの予防注射に出かけた。
すばやくおしりにぷすりとされたこたろう。かわいそうだにゃあぁぁ。
去年は注射の後、熱っぽくなったので注意して様子を見なくては。

お正月に買いだめした日本酒がなくなったので、晩御飯を買いに行ったついでに「磯自慢」をゲット。
あまり期待していなかったんだけど、これはうまい!
これの大吟醸だったら、さぞかしうまいことだろう・・・ダラリ。
お正月に飲んだ正雪の純米大吟醸もめちゃくちゃうまかったし、静岡の酒はなかなかいいじゃないか。
磯自慢

夜、酒自慢の日記でも書こうとしたら500エラー。
サーバーは動いているようだが、めちゃくちゃ遅い気がする。これがロリポップ特有の不具合ってやつ?
ググってみると、ロリポップのMySQLはMTと相性が悪いという記事もあり、SQLiteに変更することにした。
Movable Type 3.2のSQLite移行方法を見ながらOgawaさんのmt-db-convert.cgiを使ってみたけれど、エラーですすまなくなったので、とりあえずあきらめて寝た。

今日は朝早くからこたろうが布団の中に入ってきた。寒いのかな?
だいぶ元気がない。ご飯も手付かず。昨日おなかの調子も悪かったみたいだし心配だ。
布団を片付けたら、こたつに入ったまま出てこなくなった。


午後からSQLiteの続きをやる。
ちなみにこれをやったときのうちの環境は、ロリポップ、PHP、MySQL、MT3.2-ja-2 です。

mt-db-convert.cgiをmt.cgiと同じディレクトリに放り込み、パーミッションを700にしてmt-db-convert.cgiにアクセス。
Destination DB Configurationの設定画面になったら、左側はDBPasswordのところだけ入れる。
右側はデータベースの転送先に、こんなカンジでファイル名まで指定してあげるとエラーがでないみたい(・・・/mtokiba/db までしか書かないとエラーが出た。)。
/home/sites/lolipop.jp/users/lolipop.jp-dpxxxxxxxx/web/mtokiba/db/sqlite.db
lolipop.jp-dpxxxxxxxxは自分のパスを参照、mtokibaも自分がmt.cgiを置いてるフォルダ名に。そこから下は任意の名前で。

昨日の夜やったときは、この形でもエラーが出たのだけど、なぜか今日はできた。
混雑する時間帯はできないとか?ロリポならありえる。
あと使っていないテンプレートは削除しておいたほうがよさげ。コンバート中のメッセージに文字化けして表示されていたので。
また、初期テンプレートを呼び出すらしく、index.phpのほかにindex.htmlが出来てた。
index.htmlの方を消さないと再構築時にテンプレートのエラーが起こる。

MySQLから引越しすると忘れがちですが、dbに以下の内容で.htaccess入れましょうね。
<Files *>
<Limit GET>
deny from all
</Limit>
</Files>

さて、SQLiteの使用感はいかに!

デフォルトのテンプレを使っていても、コメントのプレビュー時にエラーが出るのが気になっていたんですが、小粋空間さんで回避策発見。
ありがたや~。

カレンダーに関するはなし

Nagi
   2005.11.28 10:07

だんな様のBlogをでざいん中。
カレンダーを横にしてみた。
エントリーのある日の背景に画像をおいてみた。
・・・サファリだけうまくいかない。
余白の高さだけうまくよめないらしい。なんでだ~・・・、というのがずっと続いています。

flashのカレンダーにしてみようかと思ったけど、あまりのソースコードの長さに退散。
もっとシンプルにいかないもんかねぇ。


ところで、最近自分の後姿を鏡で見たことはありますか?
風呂上りに、鏡に向かって見返り美人風に振り返ってみてください。
つま先まで鏡に映すことがポイントです。
私はかなりの衝撃を受けました。
そして今度こそダイエットしようと思い、ここ1ヶ月間体重をカレンダーに記入し続けていたんですが、昨日の体重と1ヶ月前の体重の増減は0でした。

プラスでないだけ良かった、と何事もプラス思考に解釈。

リンク先をtarget="_blank"にしたいって人がいたんで、つらつらググってたら、「target="_blank"」をやめたを見つけた。

W3C的には非推奨、それどころかXHTML1.1以降では廃止されてるそうだ

がびーん、そうなんだ。
まあ、新規ウィンドウなんて開きたいときに自分で開いてたらから、いらないって言えばそのとおりなんだが、クライアントに説明するときはどうするねん。

W3Cにしたがわないと検索エンジンの順位が落ちますよ、とか。

携帯からMTに投稿

Nagi
   2005.11.09 12:00

携帯から画像を送って、Flashで読めないかなあ、というのを2年前からやってたんですよ。
ぴくちゃぼからはじまり、写メール BBSで画像を送って、CGIでファイル名を拾って、Flashで読み込んで・・・という涙ぐましい努力をしてきたんですが、最近はMTのXMLから画像をひろって表示、というのがトレンドらしい。

んで、じゃあ携帯から画像を送れるシステムはというと、本家のMTにはないんですよね。
後発のシステムや、無料のBlogにはみんな付いてるんですが、何ででしょうね。
以前、ヒラタさんという方のシステムを使わせてもらったこともあるんですが、やっぱり個人の好意に甘えるのも悪い気がする。
とはいうものの、RSSの編集ができて、携帯から画像を送れる無料のblogって他に無いんですよ(あるかもしれないけど見つけられんかった)。

というわけで再びヒラタさんのお世話に・・・。

ところが、何度やっても設定がうまくいかない。
原因はこれでした。
携帯だけのアカウントにシステム権限を与えていいものか・・・。
パスワード設定したら、権限外してもいいのかな?
大丈夫みたいだな・・・。

サムネイルの画質を変える

Nagi
   2005.11.07 20:50

Image::MagickとJPEG圧縮 その後を参考にサムネイルの画質変更をやってみた。
Movable Type 3.2-ja-2 の場合は、Image.pmの95行目です。

サムネイル:デフォルトの状態です。
(クリックすると拡大した写真が見れます)

サムネイル:quality90にしてみた。右側のぶどうのつるあたりが滑らかに見える。
(クリックすると拡大した写真が見れます)

PHPのインクルード

Nagi
   2005.11.02 11:24

MTInclude を使ってファイルの読み込みテストをしてたんですが、リアルタイムに反映しないので、phpの読み込み方法を探す。
以前はリビルドするCGIを使ったんですが、MTのバージョンアップを繰り返すうちに行方不明。

ここを発見。readfile と includeの違いが勉強になりました。

MTのアンカータグについて

Nagi
   2005.11.02 09:38

Another HTML-lint gatewayで見ると、どうしてもエラーが出てしまうアンカータグですが、こういうやり方はどうでしょうか。

変更前
<a id="a<$MTEntryID pad="1"$>"></a>
<div class="entry" id="entry-<$MTEntryID$>">

変更後
<div class="entry" id="a<$MTEntryID pad="1"$>">

これならタグの分量も減るし、見た目もいいし(ソースの)、エラーも出ないので、とてもビューティフル。

あと、indexのページにあるaタグのアンカー部分は使い道がないように思うので削除。
何か使うのかなあ、これ。

また、パーマリンク先をカテゴリーにしている場合、最近のエントリーのリンク先に困りますが、これでいけました。
<a href="<$MTEntryLink archive_type="Category"$>#a<$MTEntryID pad="1"$>"><$MTEntryTitle$></a>

コメント受け付けないブログの場合は簡単なんだけど、コメントありだと、もうちょっと工夫が必要か。

name属性を併記するかどうか悩ましいところ。
参考書では、以下のとおり。

XHTML 1.0文書では,後方互換性のため同時にname属性も併記
することが推奨されます。XHTML 1.1文書型では,フォーム制御を
のぞくname属性は廃止されました。

MT3.2バグフィクス版導入

Nagi
   2005.10.13 21:34

新しいのが出たようなのでさっそく導入。
早くなったかな?

Page: 1 2

アーカイブ

Powered by Movable Type 4.28-ja