2006年4月17日(月)

MTのカテゴリーの順番を並ベ替える (MT4i2.1β対応)

MovableTypeのカテゴリー名を任意の順に並べ替える方法をMTのカテゴリーの順番を並ベ替える (MT4i対応)で書きましたが、その後リリースされたMT4i 2.1βxでカテゴリー名の処理が変わったようなので、ここに修正方法をエントリーしておきます。
※当初少し行数が変わっただけかと思いそう記述していたのですが、全く違っていたので新規投稿しています。

これを投稿した時点での最新版「MT4i2.1β4」で確認しています。β1~3は私はソースの閲覧すらしたことがありませんので未確認です。

今後のマイナーバージョンアップでまた行数が変わると思いますので、基準となる行をベースに探して下さい。
前回同様、mt4i.cgiに二行追加するのみです。※コードはタブを全角スペースにして表示おります。

前回は二箇所とも全く同じコードでしたが今回は変数名が異なります。
ご注意下さい。

まず、3385行目あたり、サブルーチンcheck_category内の以下の場所に、以下の赤字になっている一行を足します。
「return $cat_label;」を検索して、その上の行に追加すればいいでしょう。

  for my $cat_data (@cat_datas) {
      if ($match_cat == 1) {
       last;
      }
     }
    }
   }
  }
 }
 $cat_label =~ s/^\d+\)//;#←この行を追加
 return $cat_label;

次に、3495行目あたり、サブルーチンget_subcatlist内の以下の場所に、以下の赤字になっている一行を足します。
「if ($cat == $id){」を検索して、その上の行に追加すればいいでしょう。

  $label = $blank . $label;
 }

 $label =~ s/^\d+\)//;#←この行を追加
 if ($cat == $id){
  push @categories, "

これで、MT4i2.1β4でもカテゴリーが任意の順番で表示され、かつ数字が出ない状態になるはずです。

2006年1月13日(金)

Flash横カレンダー付けたよ

携帯電話でご覧の方には見えませんが、トップにFlashのカレンダーが付きました。

ろじかぶ。(logikabu.com): ノエルいったー!(≧▽≦)で見つけた、Kinarie&Mayさんで配布中のFlashスクリプトです。

何故かここの環境では個別エントリーで日付取得をしてくれなかったので、トップのみです。

普段見てる方にはあまり必要ないと思いますが、私自身必要とすることが多いもんで。

2005年12月23日(金)

選択範囲の語句をamazon・楽天で検索するスクリプト

[2006.7.10]
amazon用のスクリプトが2006.7.10付でバージョンアップしています。
こちらをご利用ください。



+ HideAway Firefox +さんで配布されているFirefox用拡張「JSActions」を使い始めました。
いろんなスクリプトが公開されていて、とても便利です。

私が最もよく使う「amazon.co.jp」「楽天市場」用のスクリプトを作りましたので公開します。
共にJSActionsのスクリプトフォルダの“selection”フォルダに放り込んで下さい。

選択範囲の語句を楽天で検索するスクリプト

選択範囲の語句をamazon.co.jpで検索するスクリプト
※中味はほとんど選択範囲をWikipediaで検索 [addTab]と同じです。
den-zouさんありがとうございます。連絡先が分からないので勝手に実装しちゃいましたが。

共にアフリエイト・アソシエイトのIDは含まれておりませんので、お気軽にご使用下さい。

続きを読む "選択範囲の語句をamazon・楽天で検索するスクリプト"

2005年12月15日(木)

位置情報復活

当ブログを載せ替えてから画像の位置情報の取得が出来なくなっていましたが、このMovable Type用 位置プラグインの制作者であるMotonagaさんにご教授いただきましたお陰で、無事復活しました。ありがとうございました。

例えば2005.5.8の記事なんかを見ると、いろんなロケ地の位置情報をGoogleマップで見ることが出来ます。
今はパソコンからだけなのでケータイなどMT4iから見た時にも対応させたいのですが、そのうちやります。

メモ代わりに、改造したとこを書いておきます。

続きを読む "位置情報復活"

2005年12月 7日(水)

MTのカテゴリーの順番を並ベ替える (MT4i対応)

[2006.4.17] MT4i 2.1βxでは実装方法が異なります。MTのカテゴリーの順番を並ベ替える (MT4i2.1β対応)でご確認下さい。

MovableTypeではカテゴリーの表示順がASCII配列順に自動でソートされるため、場合によっては“その他”なんてのが上の方に来たりしてかっこ悪いことになります。
出来れば任意の順で表示したいところです。
同じように考えている方もたくさんいるわけで、そのための知恵もあります。

以下が参考になります。
カテゴリーソートにも使える文字列置換プラグイン:pmLabo.
The Desert Sea: カテゴリーの順番を変えるプラグイン

上記だけ見ていただければすぐ実装出来ますが、一応ここでも簡単に説明しておきます。

まず、カテゴリー名の頭に数字を入れます。
例えば当ブログの場合は

0100)日記

というような設定にしています。
頭の数字順にソートされますので、
順番に 0200、0300と付けていけば、その順に表示されます。

このままでは、カテゴリー名に「0100)日記」と表示されていまいますので、そこで上のpmHeadChangerというプラグインが登場します。
これを入れるとカテゴリー名冒頭の数字+「)」を消したり、別の文字に書き換えたり出来ます。

各テンプレートの
<$MTCategoryLabel$> や <$MTArchiveTitle$> に

<$MTCategoryLabel pmhc=""$>

のように pmhc="" と引数を与えてあげるだけです。
これだけです。簡単簡単。


で、今回の本題は、これをMT携帯電話向け変換プログラムMT4iに対応させるお話です。
上記プラグインではMT4iから閲覧した時には数字がモロに出てしまうのですが、これを削除します。
Googleで検索してもそういう記述が見つからなかったのでここに書いておきます。

ズバリ改造するためコードを書きます。

今現在配布されているMT4i/2.0を元に説明します。([2006.4.17] MT4i 2.1βxでは実装方法が異なります。MTのカテゴリーの順番を並ベ替える (MT4i2.1β対応)でご確認下さい。)
mt4i.cgiに、以下の二行を追加するだけです。

465行目あたり、サブルーチンmain内の以下の場所に、以下の赤字になっている一行を足します。

  for my $cat_data (@cat_datas) {
  my @cd_tmp = split(",", $cat_data);
  
   $cd_tmp[1] =~ s/^\d+\)//;#←この行を追加
  if ($cat == $cd_tmp[0]){
   $data .= "

3090行目あたり、サブルーチンcheck_category内の以下の場所に、以下の赤字になっている一行を足します。

     if ($cfg{CatDescReplace} eq "yes"){
      $cat_label = &conv_euc_z2h($category->description);
     }else{
      $cat_label = &conv_euc_z2h($category->label);
     }
    }
   }
  }
 }
  $cat_label =~ s/^\d+\)//;#←この行を追加
 return $cat_label;

これで、MT4iからもカテゴリーが任意の順番で表示されかつ数字が出ない状態になります。

なお、ここに書かれている内容について意味が分からないという方は改造はされない方がいいと思います。
二行追加するだけですのでテンプレートいじるより簡単ですが、こちらは実際のCGIを直接書き換えますので十分な注意が必要です。

2005年12月 6日(火)

amazonからYahooブックス・楽天ブックスにリンクする( Firefox1.5 + GM 0.6.4 )

[2006.5.19追記]
最近amazonの商品urlが変わってこのスクリプトがあまり有効でない場面が出てきましたので、修正したものをアップいたしました。
amazonからYahooブックス・楽天ブックスにリンクするGMスクリプト(amazonダンス対応)をご参照下さい。


私はFirefoxを使っているのですが、今日初めてgreasemonkey(公式サイトまとめサイト)を入れました。
これ単体では何の役にも立たず、いろんな方が作ってくれたスクリプトを読み込んで使用します。

データバックアップメモ - extended -: Amazonから図書館Webに自動リンクするGreasemonkeyスクリプトをちょこっとカスタマイズしてみた。にある、amazonからYahooブックスにリンクするスクリプトを使用したかったのですが、Firefox1.5 + greasemonkey 0.6.4では動きませんでした。
動くように手直ししてみましたのでここで公開してみます。

Vegetable Juice: Amazonからbk1、Yahoo!ブックス、楽天ブックスへ自動リンクも参考に、楽天ブックスへリンクするスクリプトも作りました。
私は最近楽天ブックスを利用することも増えてきたので、これはとても有用です。


AmazonからYahoo!ブックスの当該書籍を検索する。
amazon2yahoobooks.user.js

Amazonから楽天ブックスの当該書籍を検索する。
amazon2rakutenbooks.user.js


元のスクリプトとは異なりこれは別窓で表示されます。私の趣味です。
気に入らない方は双方の
spl_link.setAttribute('target', '_blank');
という行を、削除するなりコメントアウトするなりして下さい。

greasemonkeyに関しては今日初めて触ったくらいで本当に不勉強なので、“とりあえず私の環境では動いてる”というレベルです。
おかしなところがあったら教えて下さい。

bk1が無いのは、私がbk1を全く利用していないからという以外の理由はありません。

続きを読む "amazonからYahooブックス・楽天ブックスにリンクする( Firefox1.5 + GM 0.6.4 )"

2005年4月20日(水)

Copy URL + 1.3.1

Firefox用の、今見ているページのタイトルやURLをコピーしたり、リンクタグを作ったりしてくれる拡張が「Copy URL +」です。

1.3.1の日本語Locale同梱版がリリースされています。

電網探題: Copy URL +

私のエントリーは外部リンクが多いのですが、この拡張を入れてからはリンク作業が格段に楽になりました。
なんと言ってもペーストするだけですからね。

user.jsに追加することでさらに機能拡張も出来ます。
user.jsについてはFirefox Help: 設定ファイルの編集をご参照下さい。
私は以下を追加しています。

user_pref('copyurlplus.menus.1.label','タイトルのみコピー');
user_pref('copyurlplus.menus.1.copy','%TITLE%');
user_pref('copyurlplus.menus.2.label','URLのみコピー');
user_pref('copyurlplus.menus.2.copy','%URL%');
user_pref('copyurlplus.menus.3.label','リンクタグを作る');
user_pref('copyurlplus.menus.3.copy','<a href="%URL%" target="_blank">%TITLE%</a>');
user_pref('copyurlplus.menus.4.label','リンクタグを作る(W/TitleTag)');
user_pref('copyurlplus.menus.4.copy','<a href="%URL%" target="_blank" title="%TITLE%">%TITLE%</a>');
user_pref('copyurlplus.menus.6.label','引用文を作る');
user_pref('copyurlplus.menus.6.copy','<blockquote>%SEL%</blockquote>');
user_pref('copyurlplus.menus.5.label','引用文を作る (W/cite)');
user_pref('copyurlplus.menus.5.copy','<blockquote cite="%URL%">%SEL%</blockquote>');

と、このコードを自宅のPCにも設定するためのメモ書き用エントリーでもあるんですけども。
※user.jsはUTF-8で保存