タグ「mt」が付けられているエントリー

EvernoteのSite Memoryを実装しました

| EvernoteのSite Memoryを実装しました

研究に必要な資料はいつでも辿れるように,お気に入りに入れるとか,はてブするとかしていたのですが,物理的にページが消失してしまうと,URLを知っていても無駄です.internet archivegoogleキャッシュという手もありますが,完全ではありません.というわけで,evernoteの大事さを再確認しました.

というわけで,EvernoteがSite Memoryというブログサイト向けのクリップガジェットを用意したようなので,本ブログに実装してみた.参考にしたのはこちら

具体的にはデザイン->テンプレート->ブログ記事のメタデータの適切な部分に,以下のコードを追加しました.

<MTIfArchiveType archive_type="Individual">
<a href="#" onclick="Evernote.doClip({
suggestTags:'<MTEntryTags><$MTTagName$>,</MTEntryTags><$MTBlogName$>',
styling:'full',
providerName:'<$MTBlogName$>',
url:'<$MTEntryPermalink$>',
title:'<$MTEntryTitle$> :<$MTBlogName$>',
header:'<h1><$MTEntryTitle$></h1>',
contentId:'evernoteclip'}); return false;">
<img src="http://static.evernote.com/article-clipper-jp.png" alt="Clip to Evernote" /></a>
</MTIfArchiveType>

Evernoteの新Webクリップ機能「Site Memory」をブログに貼り付ける(Movable Typeでのカスタマイズ) :Heartlogicを参考に一部改変

簡単ね!

関連:
Evernoteの新Webクリップ機能「Site Memory」をブログに貼り付ける(Movable Typeでのカスタマイズ) :Heartlogic
あなたのブログに Evernote Site Memory を追加する

PubSubHubbubに対応した.と思う.利用したMT-PubSubHubbubプラグインはこちら.利用しているHubはhttp://pubsubhubbub.appspot.com/です.これで合ってるのかな?ちょっとよく分かってません.間違ってたら,教えて下さい.

来週のIT whiteboxは「ブログはなぜ流行しているの?」だそうです.流行ってるんですかね?わかりません.ブロガの皆さんは必見ですね.なにやら,アルファブロガになる方法を教えてくれるそうです.そんな方法があって,みんなが実践したら,世の中がすごくつまらなくなる・・・.ちなみに,キーワードはCSS,RSS,トラックバックらしいので,内容を勝手に予想.

CSSでサイト(ホームページっていいそう)の見た目を簡単に替えられて,個性が出せます!書いた日記(っていいそう)がRSSで送られてくるんです.トラックバックで返事を送って,コミュニケーションができます.

200905201650追記:

NHK教育テレビ「IIT ホワイトボックス」という番組の「ブログはなぜ流行しているの?」の回で、シックス・アパートとMovable Typeが登場する予定です。

Six Apart - 広報ブログ: 5/21(木) 23:30?NHK教育テレビ「IT ホワイトボックス」にSix Apartが登場

MTが取り上げられるそうです.にゃるほどねー.でも,最近の流行でいけば,WPじゃないのかな?とMT使いが言ってみるテスト.

4月末からトラックバックスパムが再び激化し始めた.記録によれば,4/28から5/6までの9日間で227発ほど,.htaccessの拒否リストを通過して,MT側のTBスパムに引っかかっている.易々とすり抜けられているのが許せないので,なんですり抜けているのかをログで確認してみた.

WordPress/2.7

こんなUAのやつがすり抜けていやがる.これは・・・拒否すると影響範囲が広そうだなぁ.どうするかなぁ.てか,そもそも正規のWP2.7ってTB打つ時のUAはこれなんだろうか?それを調べた方がいいかな.

短時間に連続じゃないし,エントリに順番に打ち込んでくるわけじゃないし,異なるIPアドレスから打ってくるし・・・.これは巧妙化するボットのポートスキャンと同じですね.ちと困ったなっと.ボットの場合はどうやってフィルタを書くんだろう?

200905061448追記:

「WordPress/2.7」を詐称するスパムウェアを確認しています。

本物の WordPress は、すでに2カ月以上前に 2.7.1 が提供されています(4月29日時点での最新版)。 2.7 は事実上 obsolete とみなしてよいと思います。

芳立五蘊 | WordPress/2.7

とのことなので,アグレッシブに排除の方向で.

別にアグレッシブにやることではないけど,ルータ化を行ってみた.なお,テストはしていない.参考にしたのはここ

それから,別件というか,関連というか,MTのカスタマイズを再度やってます.奥が深いなぁ.目処は付いたけど.

サイトリニューアルのベースにはMT4.22のプロフェッショナル ウェブサイトっていうテンプレートを用いることにして,適する形にカスタマイズ中なのだが,これ結構いい.簡単に高品質なウェブサイトが作れます.しかも,FTPでアップロード!みたいな古くさい作業はなく,ウェブブラウザのみで完結するし,基本的にブログツールであるMTがベースなので,HTMLが書けなくてもWYSIWYGなリッチエディタでバリバリ書けるし.

で.今日はそのスケルトン(要するにCSSは弄ってないという意味)が概ね固まったので,作業で詰まったり悩んだりした点を記録しておく.特に,2点目は3日くらい悩んだ.

MTタグのデバッグ
MTには色んなテンプレートタグがあるわけですが,その値がどうなっているのかっていうデバッグをしたくなりますよね?なるんですよ,主にトラブった時に.で.このテンプレートタグは再構築時に解釈されるものなので,Firebugでは拾えないし,MT独自のものだから,PHPやPerlのデバッガは効かない.こりゃ困った!

で.調べた.Build Tracerなる素晴らしいトレースツールが見つかった.これ,スゲーです.余裕で問題点をトレースできました.変数がどういう風になっているかを確認できるのは素晴らしい!どの命令(タグ?)が変数をどう操作したかまでは分からないんだけど,どこでどう変化したかは分かる.問題解決ですよ!

ただし,注意があります.これ,ダイナミックパブリッシングだと上手くいかないので,一時的にスタティックでやる必要がある気がします.

ブログアーカイブでサイドバーにエントリー一覧が出ない
そうなんです.これを解決するために,上のトレーサーを導入したんです.何かというと,ウェブページのテンプレートで作ったページは2コラムデザインなんだけど,ブログアーカイブだと3コラムデザインになってしまう問題があった.と同時に,ウェブページテンプレートとブログ記事テンプレートではサイドバーに記事概要を出力できるのだが,同じウィジットをブログアーカイブテンプレートで使うと何も出力されないという難解な状態であった.

で.トレーサーを駆使して調べたところ,コラムデザインはレイアウトの変数があるので,決め打ちで強制してやった.サイドバーに記事概要が出ない問題は,ウィジェットを書き換えればいいことが分かった.デフォの状態のウィジェットだとmtentriesで書かれていたので,mtarchivelistに置き換えたらok.ブログアーカイブでもウェブサイトでも表示されるようになったので,たぶんこれで宜しいかと.

どうもここ最近,TBスパムが増えているようなので,ログを見てみた.以下,一部抜粋.

@s333:~/log> cat 4403.biz.2008-10-26.log | grep tb.cgi
67.159.44.159 - - [26/Oct/2008:00:12:14 +0900] "POST /mt/mt-tb.cgi/416 HTTP/1.0" 200 79 "-" "Jakarta Commons-HttpClient/3.0.1"
67.159.44.159 - - [26/Oct/2008:01:57:31 +0900] "POST /mt/mt-tb.cgi/254 HTTP/1.0" 200 79 "-" "Jakarta Commons-HttpClient/3.0.1"
208.43.255.124 - - [26/Oct/2008:03:41:16 +0900] "POST /mt/mt-tb.cgi/162 HTTP/1.0" 200 79 "-" "Jakarta Commons-HttpClient/3.1"
78.86.153.121 - - [26/Oct/2008:04:12:35 +0900] "POST /mt/mt-tb.cgi/254 HTTP/1.0" 200 79 "-" "Jakarta Commons-HttpClient/3.1"
208.109.181.122 - - [26/Oct/2008:04:15:17 +0900] "POST /mt/mt-tb.cgi/64 HTTP/1.0" 200 79 "-" "Jakarta Commons-HttpClient/3.1"

なるほどなるほど.クズだな.じゃぁ,それならそれで,それなりに対処して差し上げよう.以下,対策を抜粋.

@s333:~/public_html/4403.biz/mt> cat .htaccess
<Files mt-tb.cgi>
<limit POST>
SetEnvIf User-Agent "^TrackBack/1.6" trackers
SetEnvIf User-Agent "^TrackBack/1.02" trackers
SetEnvIf User-Agent "^libghttp/1.0" trackers
SetEnvIf User-Agent "^$" trackers
SetEnvIf User-Agent "^.$" trackers
SetEnvIf User-Agent "^NP_Trackback/2.0.3" trackers
SetEnvIf User-Agent "^User-Agent" trackers
SetEnvIf User-Agent "^Opera/" trackers
SetEnvIf User-Agent "^Mozilla/" trackers
SetEnvIf User-Agent "^USERAGENT" trackers
SetEnvIf User-Agent "^Jakarta Commons-HttpClient/3" trackers

Order Allow,Deny
Allow from all
Deny from env=trackers
</limit>
</Files>

死ねばいいのに.

関連:
芳立五蘊 | Jakarta Commons-HttpClient/3.0.1
Jakarta Commons-HttpClient (翻弄されつづけるblog)
ねこまじん王国 » トラックバックスパム対策(Jakarta Commons-HttpClient)

Movable Type 4.1x をお使いで、カスタムフィールドを利用している場合、4.2 へアップグレードは行わないでください。

Six Apart - Movable Type News: MT4.1x とカスタムフィールドをお使いの場合は MT4.2 へのアップグレードはおまちください

んなこと6日後に言われたって,遅いっちゅーねん.

Movable Type 4.2 のリリース後、重要な2つの問題を確認しました。この問題を解決した新しいバージョン Movable Type 4.21 の提供を開始します。Movable Type 4.21 で解決される問題は次のとおりです。

  • カスタムフィールドのデータ: エンタープライズ, コミュニティー・ソリューション含む MT4.1x から MT4.2 にアップグレードを行う際、その Movable Type でカスタムフィールドを利用しており、100以上のデータを持っていた場合、カスタムフィールドのデータを一部消失する可能性があります。

Six Apart - Movable Type News: [重要] Movable Type 4.21 出荷開始

仕方がないので,4.21に上げた次第です.別に,カスタムフィールドの内容は消失してないと思うけど・・・.未確認ですorz.

200808232253追記:
カスタムフィールドの内容は全部消えてました!ちょー涙目www.面倒くさいから,過去の記事はさようならの方向でwww.

200808232325追記:
どうもカスタムフィールドの内容は編集画面等には出てこないし,バックアップにも記録がないけど,パブリッシュされると何故か表示される.どこかにデータはあるようだ.DBをダンプして,救出しろってことだろうか.救出したところで,どうやって戻してやればいいかわからなくて,涙目.もうつかわねーよ!うわーん.

ブログ・ソフトウェアおよびサービス大手のシックス・アパート株式会社(本社:東京都港区、代表取締役:関 信浩)は、ブログ・ソフトウェア「Movable Type 4.2」が、株式会社ミクシィ(本 社:東京都渋谷区、代表取締役社長: 笠原 健治)が本日発表したOpenID認証サービス「mixi OpenID」に対応したことを発表します。シックス・アパートは「mixi OpenID」認証を利用可能にするMovable Type用プラグインを開発し、本日よりMovable Typeユーザー向けに「Movable Typeプラグインディレクトリ」にて無償で提供します(mixiCommentプラグイン)。

Six Apart - シックス・アパートが、Movable Typeを「mixi OpenID」に対応

mixi OpenIDが始まったので,MTの対応をwktkしていたわけですが,即日対応とはやりおるわ.OpenIDファウンデーションは名ばかりじゃないってことですね.というわけで,超高速で対応してみた.誰か,mixiでコメント付けてみてくれぃ!

関連:
速報、1500万人が使える mixi OpenID の技術面を解説するでござるの巻 - Yet Another Hackadelic

200808201846追記:
ちょwww.mixiなidが表示されてるからwww.これはまずいwww.コメントテストしたけど,消しますorz.

nicknameがSREGから取得されます.urlにmixiのidがばっちり入ってます.

昨日書いた通りなんだが,愛用のプラグインであるTaggingHelperが動作しなくなって困っている件.今の状態はこんな感じ.

080816_th01.png

最新のMT4.2暫定版を使って,この状態です><.これだと,あまりにもブログ更新に影響が出すぎるので,自力で対応してみた.久しぶりにFirebugを使ってみたぜ.至って簡単に原因が特定できたよ!

080816_th03.png

こうしてください.これだけでokです.他に影響があったり,正しい修正方法じゃないかもしれないですけど,とりあえず,これで.っていうか,このトラブルって,オレだけなのかなぁ・・・.テンプレートをリフレッシュしてないのがいけない??よくわかりません><.

080816_th02.png

復活♪

200808170112追記:
テンプレートの不具合があったので,MT4.2を入れ直したところ,最新のMT4.2暫定版がそのまま使えました.お騒がせしましたm(__)m.よって,上に書いてある対策は無視する方向でお願いします.

MT4.2が正式リリースされたので,早速入れてみた.アップグレード時の注意事項があるので,参照されたい.別に,気がつかなかったら気がつかないなりに,それなりに動作しそうな気がする程度の注意事項なので,適当に自己責任で.

新機能というか機能改善というか,いくつかあるわけですが,どうにもこうにも,テンプレートを新しいのにしないとダメみたいです.面倒なので,対応しなくても良いかなって気分で.それ以外ででかいところといえば,OpenID2.0対応かな.たぶん,コメントを付けるときに,Yahoo!でログインできるようになっていると思います.確認してないけど.

てか・・・.過去のタグがぶっ壊れてるんですけど・・・.

080815_mt42.png

200808151853追記:
これって,標準の機能じゃなくて,プラグインだった.TaggingHelperっていうプラグインで,MT4.2対応版が出てました.一安心.

200808151908追記:
でも,やっぱりダメでした><.

リファラではじく策を講じたところ,全く無力だったので,新しい策を講じます.同時に,リファラではじく作戦は終了します.意味なかったorz.

新しい作戦として,MT-Keystrokesプラグインを導入しました.「投稿」ボタンを押さなくてはいけないので,対スクリプトには強そうです.期待して入れてみる.入れ方はこのサイトを参考にしました.MT4.1に導入しているので,手順3の「コメント・プレビューのテンプレートを修正する」は不要でした.いいね!

ただ,逆にこのプラグインはMT3を対象にしているらしく,MT4以降では動作しません.

1.MT-Keystrokesプラグインで問題がおき、再構築できず。

3.3で使用していたコメントスパム対策のため導入した「MT-Keystrokes」も忘れずにセットアップしたのだが、どうもそれが原因で問題が起きていることが推測された。
keystrokes.plの中でMTのバージョン確認を行っているので、下の3のところを4に変えることで解決。

まゆさんのつぶやき: MT3.3から4.0へアップグレード時のトラブル

とこのことなので,仰せのままにkeystrokes.plの65行目を修正.

return 1 unless $MT::VERSION =~ m(^4\.);

簡単ねっ!しばし,様子見.

CAPTCHA認証を外して,コメントスパムの様子を眺めていたのですが,61件/15日なので,看過できません.よって,新しい方策を試みます.

コメントを付ける際はリファラ送信でお願いします.

アイディアは至って簡単で,スパムはcgi直叩きだろうから,リファラは付けていないだろうという考え.ログを確認しないで試みてみる.セキュリティソフト等でリファラ抑制をされている方で,このブログにコメントを付けようとお考えの方は,お手数ですがリファラ送信にてお願い致します.

暫し,様子見.

CAPTCHがスパムです!

との指摘を受けました><.ボット等によるコメントスパム対策で導入していたんですが,人間すらも排除してしまうようなので,コメント欄におけるCAPTCHA認証の使用を中止したいと思います.ログを見る限り,コメントスパムは少ないみたいなので,様子を見たいと思います.ダメだったら,また考える方向で.

jQuery用プラグイン「jquery.suggest」を使って入力補完機能を実装してみる : アシアルブログ

面白そうだったので,実装してみた.簡単すぎて,拍子抜け.

jquery.suggestのサイト等から以下の4ファイルを入手する.

search.phpsは参考にするだけなので,実際には使わなかったです・・・.続いて,MT側にテンプレートを作成します.インデックステンプレートに新しいカスタムインデックステンプレートを作成します.ファイル名等は適当に決めて下さい.コードも一部書き換えています.

080518_jquery1.png

このテンプレートによって作成されるsearch.phpは以下のような感じ.一部抜粋.

080518_jquery2.png

ここまでできれば,完成したようなもの.次に,検索窓がどのような設定になっているかを,適切なテンプレートを開くか,ページのソースを開くか何かして,確認します.

080518_jquery3.png

このブログではid="search"が設定されていることが確認できます.仕上げに,jqueryなスクリプトが走るように,ヘッダを書き換える.モジュールテンプレートのヘッダに次のように追記する.

080518_jquery4.png

赤線を引いた部分が検索窓のidと一致するようにします.気をつけるのはそこだけ.簡単だねっ!

実装結果

080518_jquery5.png

ね.簡単でしょ?(ボブ風)

Account Auto-Discoveryを試してみた - 頭ん中

おもしろそうだったので,実装してみた.環境はMT4.1に,Minimalist Blueスタイルを利用して,一部改.

まず,ヘッダー・テンプレートに書きましょうと紹介されていますが,少なくともこの環境では上手くいかないので,仕方なく,ブログ記事の詳細・テンプレートに書きます.その際,XHTML的にvalidを維持するため,以下のような細工をします.

<div id="entry-<$MTEntryID$>" class="entry-asset asset hentry">
<!--
 <rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:foaf="http://xmlns.com/foaf/0.1/">
 <rdf:Description rdf:about="<$MTEntryPermalink$>">
  <foaf:maker rdf:parseType="Resource">
   <foaf:holdsAccount>
    <foaf:OnlineAccount foaf:accountName="YOUR HATENA ID">
     <foaf:accountServiceHomepage rdf:resource="http://www.hatena.ne.jp/" />
    </foaf:OnlineAccount>
   </foaf:holdsAccount>
  </foaf:maker>
 </rdf:Description>
 </rdf:RDF>
-->
 <div class="asset-header">

上記を見ていただけるとわかると思いますが,ブログ記事の詳細・テンプレート内の最初のdivの直後にコードを挿入しています.XHTML的にvalidを維持するために,コメントアウトしています.って,はてなのヘルプに書いてあった

080512_hatena-point.png

あーん,できてる.はてなIDをお持ちの方は確認してください.そして,試しにポイントを送ってみてください(ぇ.

200805121226追記:
まだ昼食をとっていないが,気がついたので,直しておいた.ランチタイムはどこも混雑よー♪

トラックバックをここ数日で2件も頂いているわけですが,残念なことに文字化けしています.誠に申し訳ないです><.今更で,なんなんですが,対策をしてみた.直っているはずなので,気が向いたら,またTBを打ち込んであげて下さい><.以下,対策方法.

MT4.1の場合,extlibにJcodeが既に入っているようなので,lib/MT/App/TrackBack.pmを以下のように修正する.

sub no_utf8 {
    require Jcode;
    for (@_) {
        next if !defined $_;
        $_ = pack 'C0A*', $_;
        $_ = Jcode->new($_)->utf8;
    }
}

終わり.簡単だねっ!

参考:
小粋空間: Trackback文字化け対処

P.S.
ブラックリストに入っているらしく,MindslideさんにTBが打てないんです><ボクの所為じゃない><

200804111857追記:
Mindslideさんから,再TBを頂きました.色々とお手数をおかけしまして,申し訳ないですm(__)m

いつの間にやら,MT4iがMT4.1対応になっていたので,早速導入してみた.

mt4i.png

これで電車の移動中などにも閲覧可能となります.「長文記事が多くて,携帯で見るのには向かない」という指摘は断固無視します.選択肢は出します.取捨選択はご自由にどうぞ.ご活用下さい.

このブログに「はてなスター」と「はてなブックマーク」を設置しました.以下,設置の仕方.

はてなスター
設置に当たっては,簡単のために,MTのプラグインを利用しました.設置は簡単で,スターを表示させたい場所に,<$MTHatenaStar$>と書くだけ.このブログでは,テンプレートの「ブログ記事のメタデータ」内のトラックバックの隣に表示するようにしてみました.簡単ね!

はてなブックマーク
設置に当たっては,はてなのヘルプに従えば大丈夫です.このブログでは,エントリータイトルの隣に置きたかったので,テンプレートの「ブログ記事の概要」と「ブログ記事の詳細」のそれぞれ適切な箇所に書込みます.簡単ねっ!

MT4.1になり心機一転の気分が高まっているため,タグクラウドを導入しました.当初の予定ではカテゴリによる分類を止め,タグ付けのみにしようと思っていたのですが,どうしても大分類・小分類という扱いの方がしっくり来ることもあるわけで,大分類をカテゴリとし,小分類は無秩序なタグクラウドにしようと決断しました.なお,現カテゴリは試行錯誤中です.ある程度運用して,タグからカテゴリへの昇格もあるかと思います.

閑話休題.タグクラウドのSEO化を行いました.

URL最適化前

http://4403.biz/mt-search.cgi?tag=xrea&blog_id=1

URL最適化後

http://written.4403.biz/tag/xrea.html

これを実現するために,mod_rewriteを用いて.htaccessにこう書く.

RewriteEngine on
RewriteRule ^tag/(.*)\.html$ http://4403.biz/mt/mt-search.cgi?tag=$1&blog_id=1

簡単ね!

さらに,タグクラウドのデザインはこちらのTag Cloud12をいただいた.クールでしょ?

200712281943追記:RewriteRuleを修正しました.

プロフィール

e-m@il @ddress