タグ「MT」 の検索結果(1/1)

2010年8月13日

[web] MTの特定のカテゴリをmixi日記の外部ブログとして更新通知する方法

mixi日記の外部ブログ設定でMTのブログを使いたいけど、mixiに飛ばすには相応しくないエントリとかあって、いまいち設定に踏み切れない!という方向けエントリ、備忘録。
大まかな流れはこんな感じ↓

  • mixiに飛ばすエントリ用のカテゴリを新しく作る
  • mixiに飛ばす用のカテゴリをブログ側で非表示にする
  • mixiに食わせる用のRSSの生成
  • mixi側で外部ブログ設定

mixiに飛ばすエントリ用のカテゴリを新しく作る

MTにある複数のカテゴリに属するエントリから、mixiに飛ばすエントリを「mixi」カテゴリとして集め、そのカテゴリのみをRSSで吐き出します。

※「"日記"カテゴリしか飛ばさないよ!」という方には設定の必要はありません、後で説明するRSSの設定と、外部ブログ設定のみすればおkです。

mixiに飛ばす用のカテゴリをブログ側で非表示にする

このままだと「mixi」というカテゴリがMT上に表示されてしまうので、それを非表示にします。

<MTSetVarBlock name="catname">
<$MTCategoryBasename$>
</MTSetVarBlock>
<MTUnless name="catname" like="mixi">
略
</MTUnless>

上記のようにカテゴリのリストなど、カテゴリ一覧を表示する部分を括ります

mixiに食わせる用のRSSの生成

インデックステンプレートからRSS2.0のファイルをコピーし、<MTEntries>にRSSを吐き出させたいカテゴリ名を指定

<MTEntries lastn="10" category="mixi">

mixi側で外部ブログ設定

mixi側で「設定変更」→「その他ブログの選択」にて「その他」を選択→「RSSのURL」でさっきつくったRSSを指定

以上でっす。

2010年7月17日

[web] movabletype でエントリーに ReTweet リンクを追加できるプラグイン

MTプラグインってちょっとさみしいなぁ、リツイートのプラグインもwordpressのはすぐみつかったんだけど。

ReTweet 0.3 バージョンアップMovable type用プラグイン

RTされるような良記事を書けるかは別として、とりあえず素敵なの見つけたので実装しました☆

関連する記事:6件

2010年7月17日

[web] MT4のアップロード画像のキャッシュディレクトリを変更

そろそろマジでリニューアルちゃんとしたいなぁと。
で、その前にサーバーの中がぐちゃぐちゃだったので整理整頓。

MT4にてアイテムのサムネイルのフォルダが public_html 直下に asset_c として生成されちゃうので、画像アップロード用ディレクトリの中に変更した

mt-config.cgi に以下を追加

AssetCacheDir ディレクトリ名

リニューアルタグをつくって随時更新・・・したい。

関連する記事:1件

2009年6月15日

[web] Action Stream でニコニコ動画やyoutubeのサムネイルを表示する。

素敵なエントリーを見つけたのでいじってみた。

ActionStreamのlinkフィールドからサムネイルをでっちあげる。

サムネがリンクになってなかったので試行錯誤しながら色々いじってみた。

<mt:If tag="StreamActionThumbnailURL">
<div class="picture external-img-off">
<a rel="external" href="<$mt:StreamActionVia$>">
<img alt="<$mt:StreamActionTitle$> のサムネイル" src="<$mt:StreamActionThumbnailURL$>" />
</a>
</div>
</mt:else>
<mt:setvarblock name="link"><mt:StreamActionURL /></mt:setvarblock>
<mt:setvarblock name="thumb"><mt:include module="URL2Image" url="$link" trim="1" /></mt:setvarblock>
<mt:if name="thumb">
<div class="picture external-img-off">
<a rel="external" href="<mt:var name="link" />">
<img alt="<$mt:StreamActionTitle$> のサムネイル" src="<mt:var name="thumb" />" />
</a>
</div>
</mt:if>
</mt:if>

class は外部リンクのアイコン消したりなのでお気になさらず。
StreamActionThumbnailURLができない場合は、URL2Imageを使って表示ってことにしたいんだけど、こーいうやり方でいいんだろうか、知らんことやるのは骨が折れる。

ちなみに URL2Image はそのままだと、ニコ動のnm動画のサムネが表示されないので、sm の部分を (?:sm|nm) に変えてみた。
これでいいのかどうかとかマジでわからん、でもとりあえず無事動いたからいいや。
[sn]m がスマート?みたいです。修正。

<mt:setHashVar urls>
<mt:setvar youtube value="http\://[^\.\/]+\.youtube\.(jp|com)/watch\?v=([0-9a-zA-Z\-]{11})","http://img.youtube.com/vi/$2/default.jpg" />
<mt:setvar niconico value="^http\://www\.nicovideo\.jp/watch/(?:sm|nm)([0-9]{1,9})","http://tn-skr2.smilevideo.jp/smile?i=$1" />
<mt:setvar amazon value="^http\://www\.amazon\.(?:co\.jp|com)/.*(?:ASIN|product-description|product|dp)/([^/]+)(?:/.*)*","http://images.amazon.com/images/P/$1.09._THUMBZZZ_.jpg" />
</mt:setHashVar>
<mt:loop urls>
<mt:setVarBlock check><mt:getVar var="__value__[0]"></mt:setVarBlock>
<mt:setVarBlock pattern>/<mt:getVar var="__value__[0]">/</mt:setVarBlock>
<mt:setVarBlock replace><mt:getVar var="__value__[1]"></mt:setVarBlock>
<mt:if url like="$check"><mt:var url regex_replace="$pattern","$replace"></mt:if>
</mt:loop>

ニコ動だけサムネイルでひっぱってくる URL にどっかで大量の空白文字が追加されてるみたいで lint に怒られる。
trimモディファイア なんてものがあるそうです!これにてスッキリ☆

マイリスの自分のコメントも引っ張ってきて表示したいんだけど、Xpath ってのもよくわからん。
こっちの人たちは凄いな、文系には頭が痛いです。

ちなみに現在こんなカンジ

仕事が落ち着いたらいじろう。

関連する記事:4件

2009年6月14日

[web] CORESERVERでMovableType4のCaptchaが使えない時の解決策

そのまま。
認証が表示されてなくてびびった。

[MT]/lib/MT/Util/Captcha.pm

my $im = $imbase->Montage(geometry => $geometry_str,tile => $tile_geom);

my $im = $imbase->Append(stack=>"");

に変更すればOK。

※Movable Type version 4.25 → 4.26 へアップグレードしました。

関連する記事:4件

2009年6月 6日

[web] Action Streams について

色々書こうと思ったんだけど、なんだかんだで投稿する暇が無いし、良いエントリーがゴロゴロしてるので備忘録プラス誘導。

・導入についての参考
【Movable Type 4.25公開】Action Streamをブログに追加して楽しもう

・日本のサービス追加
日本のサービスに対応したAction Streams用のconfig.yaml

・cronジョブでの自動更新
【Movable Type 4.25】 CRONジョブで情報を自動更新する方法

出来上がったページはサイドバーの「利用サービス一覧」の「recent actions」から見れます。

  • ブログへの投稿
  • Flickr での写真投稿
  • Hatena Bookmark でのブックマークとコメント
  • NICO NICO DOUGA の「公開履歴」へのマイリス
  • Tumblr への切り抜き
  • Twitter へのつぶやき

が、日付別に表示されています。
自分ログと自己顕示欲からのライフストリーミングが地味にじんわり楽しい。
(興味ねーよ!!なんて言っちゃダメダメ><)

関連する記事:3件

2009年6月 1日

[web] movabletype 4.23→4.5 へアップグレードして、ロリポップからcoreserverにサーバー移転してみた。

movabletype のアップグレードと、cronを使ってみたいのでロリポップからcoreserverにサーバー移転してみたので備忘録として。

【事の顛末】
各種サービス利用状況を自動更新で垂れ流ししてみたくて 4.23→4.5 にアップグレードしてaction streams を使ってみようと思った。
せっかくだから自動更新する為に cron の使えないロリポップから coreserver 移転を検討。
いじってみたら感触が良かったので即移転することにしました。

【movabletype 4.23→4.5 へのアップグレード】
そのままアプリケーションディレクトリ(自分の場合はmtフォルダ)を上書きでよさげなんだけど、なんか怖いから利用中のアプリケーションディレクトリをリネームして保守した。

アプリケーションディレクトリ(mt)をリネーム

新しくアプリケーションディレクトリ(mt)を作成してそこに4.5をアップ。

元フォルダからmt-config.cgi をコピー。

cgi のパーミッションを任意の値に変更

データベースファイルをコピー(自分はSQLiteを使ってるので、mt-config.cgi のDatabase項目で指定してある場所のファイルをコピー)

ブラウザから mt.cgi にアクセス、ログインする。

プラグインをコピー

わーい☆

こんな感じ。

【ロリポップからcoreserverへサーバー移転】
ロリポップは安くてお手軽で全く不満は無かったけど、cronが使いたいってのと、サーバー容量やたらと多い coreserver にお試し移転。
実際いじってみると movabletype の再構築が劇的に早くなった(つか今までが遅すぎた)
というわけで、お試し1日で即契約!移転作業としては、

ロリポップにアップしてある movabletype を丸ごとダウンロード

mt-config.cgi でCGIPathの修正(独自ドメインの人は必要ないけど、今回はお試し移転だったので、coreserver のアドレスに変更した。)

coreserver にアップ

cgiのパーミッションを任意の値に変更

ログインしてサイトパス、アーカイブパスを変更

やたー☆

こんな感じ。

【ドメイン設定】
で、色々いじって動作に満足したので、ドメインの設定もしてみた。
自分はムームードメインでドメインを取得していたけど、gmail for your domain を利用するためにネームサーバーにバリュードメインの無料ネームサーバーを指定して使っていたので、coreserver のDNSの自動設定を利用して、gmailの設定に追記して完了。coreserver でドメインウェブ設定をして、30分ほど紅茶を飲んで休憩してたら無事、反映されてました。よかたー☆
(※もちろん、ドメインをcoreserver側に移したので、サイトパスやCGIPathも変更しました。)

action streams についてはまた今度書きます。
とりあえずこんなんができた。
まだいじり中。

関連する記事:3件

2009年1月30日

[web] mt4i にweb拍手をつける方法

いや、まんまなんだけど一応ね。
すっかり携帯の方に拍手つけるの忘れとった。

個別記事のエントリ下に拍手をつけます。
mt4i3.0 の個別記事テンプレートは individual.tmpl なのでその中にぶちこみます。 mt4i3.0 のテンプレートは HTML::Template が使ってあるので、iTMPL_IF タグの中に突っ込んで表示されないなんて事にならないようにね。

リンク先はidをくっつけてコレ
<a href="http://webclap.simplecgi.com/clap.php?id=16shot&page_id=mt4i">web拍手</a>

せっかくの携帯なんでアクセスキーも設定します。
拍手だけに8(ぱち)にしたかったけど位置的に邪魔だからやめたw
とりあえず無難に2をチョイス。ソースはこんな感じ。

<TMPL_VAR NAME="ICON_NO_2"><a href="http://webclap.simplecgi.com/clap.php?id=16shot&page_id=mt4i"<TMPL_VAR NAME="ACCESS_KEY_2">>web拍手</a>

無事、設置完了。
問題は拍手後はブラウザバックしなきゃ駄目ってトコロ。
web拍手はテンプレもっと弄れたらいいのにな。

拍手には色々と種類あるけど、やっぱこのスタンダードな拍手が一番好きです。
FC2拍手はなんかもっさりだし、めんどい。GJなんかがカナリ良い感じだったけど、js 必須ってのでアウト。

んー。もっと良い拍手cgi無いかな。

関連する記事:2件

2009年1月28日

[web] mt4i 携帯用ページにアクセス解析をつける方法

すっかり携帯のページに解析つけるの忘れてた。

mt4i3.0 からテンプレートが利用可能になって随分カスタマイズしやすくなってます。
タグ埋め込みタイプの解析なら tmplディレクトリ内に mt4iディレクトリがあるので、その中の該当テンプレートにタグを埋め込みます。

ボクが使ってるのは body の終了タグ直前にタグを埋め込むタイプのものだったので、 footer.tmpl にタグを記述。

無事に解析してくれました。

アクセス解析については忍者をずっと使ってたんだけど、futomi's cgi cafe のアクセス解析が個人利用で1,000円、商用でも2,000円でなかなか優秀です。 Google Analytics が携帯サイトに対応してくれたら乗り換えるんだが...

関連する記事:4件

2009年1月27日

[web] 打ち消し線について

打ち消し線を引いてみたらバリデーターでNGが出た。
というのもMTの打ち消し線は strike要素 を使っているからで( strike要素 や s要素 での打ち消し線は非推奨要素)、宣言をしてる割にこんな初歩的な見落としでNG出してる自分ってどうなんだと思うんだけど、まぁそれは日々勉強ということで。

実際、準拠した取り消し線はどう書くのかというと、 del要素 や css を用いるわけだけど、文法的に「これはもう削除しています」という内容を明示したければ del要素 、自分へのツッコミも兼ねた小声効果としての打ち消し線なら装飾扱いとして css を使った方がよさそうですね。

つか、そもそも 「打ち消し線を出したい」 って考えが間違っているわけで、装飾って意味で打ち消し線を出したいなら css での打ち消し一択になるわけですよね。( html での装飾って考え自体が間違っているわけだから。)

本来の意味で del要素 を使用する場合は、混乱を避ける為にも del要素 でマークアップした内容を display: none で非表示にして、 ins要素 にて追記、文書内に削除訂正した旨を併記、がいいのかな??
とはいえ、スタイルシート無効の環境もあるわけだし。

うーん、煮え切らない。

関連する記事:3件

2009年1月14日

[web] Event.observe と window.onload

いや、すっかり罠にはまってました。前回のエントリで紹介した、

target="_blank"を使わずに新しいウインドウを開く方法

だけど、これがメインページからは機能するのに個別記事では機能しない。
何でだろ?と調べてみたら小粋空間さんのテンプレートでは mt.cgi の中に window.onload の記述があって、アーカイブや個別記事で先に動いちゃってるみたいなんです。

window.onload は1ページに1回しか機能しないって事なんで、代替案として prototype.js の Event.observe を使ってみました。

前回紹介した target="_blank"を使わずに、rel="external"、rel="external nofollow"で新しいウィンドウを開く方法海外のSEO対策・SEOツールをわかりやすく解説するブログ さん)で紹介されている js ファイルの最後を

window.onload=externalLinks;

から

Event.observe(window,'load', externalLinks, false);

に変更、prototype.js をヘッダー内に追加する事も忘れずに。

<script type="text/javascript" src="/パス/prototype.js">

これで無事個別記事でも動きました。
いや、これ当然の事なんだろうけど、すっかり見落としてました。
MT で window.load 指定して動かなかった方はチェックしてみてください。

関連する記事:6件

2009年1月14日

[web] target="_blank"を使わずに新しいウインドウを開く方法

web制作の仕事をしてると言葉ばかり先行して web2.0 や、最近だと クラウドコンピューティング なんて実体があるのかないのかよくわからない言葉が蔓延してるどころか、クライアントがそれを理解しようともせずに 「とにかく新しくて良さそうなものだから盛り込んでいこう」 的なノリで発注してくることもあったり。(しかしこっちも殺し文句としてそういった言葉を使ってしまうこともあるが。)

まぁ皆が幸せになる(なれる可能性のある)方法をとるならば新しいウインドウなんて開くようにする必要は無いわけで、古い話これはもう4年以上前から言われてるんだけど。

原則論を貫けば怠惰な閲覧者に「ユーザビリティが低い」と罵られ、現実論で突き進んでも理論派に「ユーザビリティが低い」と批判されます。絶望的な状況です。趣味でやっている製作者は、純粋に自分の好きな方を選べばいいと思う。私は原則論を重視したい。だから、こういう。

バカな閲覧者は勝手に不幸になればいい

新しいウインドウを強制してしまうと同一ウインドウで開くという自由を奪われてしまう(shiftクリックしてくれよ!)って話です。

でも4年以上たった今でも相変わらず閲覧者の殆どは学ぼうとせず、同一ウインドウは不親切!!といわれるわけで。
(タブブラウザも普及してきて新しいウインドウもさしてウザくはなくなったとは思うんだけど)


まぁそれはおいといて!

とりあえずファッションでも何でもなく、xhtmlでvalidと評価される状態にしたいってことで targetを使わず新しいウインドウを開くようにしてみました。
現在 target="_blank" を使わない選択肢はいくらかあるんですが、今回はこちら

target="_blank"を使わずに、rel="external"、rel="external nofollow"で新しいウィンドウを開く方法海外のSEO対策・SEOツールをわかりやすく解説するブログ さん)

のやり方でやって......って、けっきょくコレだと _blank つけてんじゃん!!!

まぁそこらへんは検索してみたら window.open を使うやり方もあるみたいだし、同じく JavaScript で「同一ウインドウで開く」と「新しいウインドウで開く」を並べてのせる方法とかもあるみたい。
でもさ、文字列で同一ウインドウで開いて文字列の隣のアイコンで新しいウインドウで開いたとして、その判りやすくて便利な機能を果たしてどれだけの閲覧者が理解してくれるのか。

いや、マジな話、新規ウインドウで開くアイコンを並べたとして、そのアイコン無視で文字列クリックして「同一ウインドウじゃねーか!」とか言う閲覧者もそこそこ居ると思うんだ。
そのうち「新しく開くアイコンは小さいから押しにくい!」とか言いそうだし、まだ新規ウインドウで開く事を望む人が多い中で結局どないせーと。
だからもうそこらへんの匙加減はお好みでいいんじゃないかと思う、というか作る人、会社の好みとか信念で。
つか正直どれがベターなのかいまいちわからんとです。(併記するのがいいとは思うんだが......)

ちなみに外部リンクにはアイコンをつけて区別するようにしました。
CSS で外部リンクにだけアイコンを表示
↑こちらを参考にしました。


valid にさえなればいいのか......?と考え出すとちょっとスッキリしない、ううむ。

関連する記事:8件

2009年1月13日

[web] エントリーの関連付けを行うプラグイン

いかにもウェブログ!な機能ですよ。
投稿したエントリーから以前投稿したエントリーに関連付けするプラグインです。
リンク、被リンク、両方向と選べます。

エントリーの関連付けを行うプラグイン(MT4専用版)

プラグインをアップして、テンプレートの関連付けリストを表示したいに部分にタグを挿入すればokです。
cgiファイルのパーミッション変更をお忘れなく☆

関連する記事:6件

2009年1月13日

[web] mt4iでMovableTypeを携帯電話用に変換

携帯電話でも表示出来る様に、ということでmt4iを導入しました。

自分が使ってるサーバー(ロリポップ)ではmt4i3.0に必須のperlモジュールである Encode と HTML::Template は既に入っているので、そのままアップするだけでokでした。 wiki のインストール説明がわかりやすいので、詳しくは wiki で。
3.0以降はデザインテンプレートも編集可能なので、そのうち弄ろうと思います。

後は携帯からのアクセスを生成されたモブログのurlへ飛ばすだけです。
以前のエントリ Canonicalization(正規化)でも使用した mod_rewrite に以下を追記

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank)
RewriteRule ^$ http://www.hvc-001.com/mt/mt4i.cgi [R,L]

これで携帯からのアクセスはモブログのトップに誘導できます。

MTをPHP化すれば、携帯での各エントリへのアクセスをそのまま対応するモブログのエントリに飛ばすスクリプトを使えるんですが、まだPHP化する気もないしとりあえずは以上で。

関連する記事:6件

2009年1月11日

[web] web拍手でMTエントリ毎にページIDを自動的に割り振る方法

所謂オタク系サイトではweb拍手ってのはかなりのシェアを誇っていて、多くのブロガーや同人作家がweb拍手を設置しています。
(コメントやメール・メールフォームがあるにもかかわらず!)

たぶんココも「web拍手」のインターフェイスに慣れ親しんだ人たちが訪れるだろうと予測して気軽にコメント出来る様にとブログ記事のメタデータ部分にweb拍手を設置しました。

が!

このままでは 「いつコメントした」 かは判りますが、 「どのエントリを見てコメントした」 かは判りません。
そこでweb拍手のページidを表示する機能を使ってみようと思ったんですが、エントリ毎に本文にいちいちidを記入したソースを貼るのは面倒だし、メタデータ部分に CM や TB とまとめておいて置きたいという思いもあり、自動にidを割り振る方法を考えてみました。


方法は簡単で、MTの変数タグ(現在のファンクションタグ)を使います。
web拍手のidは10桁の英数字で登録可能で、登録方法は拍手urlの末尾に「&page_id=【ページID】」と追記するだけ。
ページIDの部分に変数タグを利用します。このサイトだとこんな感じ。


<a href="http://webclap.simplecgi.com/clap.php?id=16shot&page_id=<$MTEntryDate format="%y%m%d%H%M"$>">web拍手</a>

投稿日時を参照してみました年(下二桁)月日時分の合計10桁。
もっと良い方法無いものか...。


ちなみにコレ、エントリ毎にページIDは振れるものの、コメントしか区別できません。
どのエントリを見て拍手したかはわかりません。web拍手さん、有料登録でもいいから解析で拍手の区別出来るほうにしてください!


※レンタルブログを利用してる人も、ブログの独自タグで10桁までの英数字を吐き出すタグがあれば同様の事が出来ると思います。

関連する記事:7件