Windows に Ruby on Rails の環境を入れてみた

2007/12/04 火曜日 16:38 投稿者 zon

いろいろと試してみて、なんとか動く環境ができたっぽいのですが、まとめるほどスムーズに行かなかったので、とりあえず、参考にしたページを羅列しておきます。近いうちにOSを再インストールしようと思っているので、またお世話になるし。

10分で作るRailsアプリ インストール編
頑張ってみたけど、うまくいかなかった。Rails のインストールに失敗してしまう。多分バージョンのバージョンの組み合わせがうまくいっていないみたい。実際に動かすバージョンと一緒にしたかったのであきらめる。

Ruby/Ruby on Rails/インストール for windows
Ruby のバージョンは 1.8.5 を使いたかったので、RubyForge: One-Click Ruby Installer: ファイルリストから ruby185-24.exe をダウンロードしてきた。

『Windows に Ruby on Rails の環境を入れてみた』の続きを読む »

Maple Project と Usagi Project がコラボレーション

2007/12/02 日曜日 17:52 投稿者 zon

オープンソースとしてSNSを開発しているUsagi Projectとコラボレーションをさせてもらうことになりました。

Maiple Project:[Maple] コラボレーション

この度、PHPフレームワークの「Maple Project (http://kunit.jp/maple/)」と、PHPライセンスでSNSエンジンを開発している「Usagi Project (http://usagi.mynets.jp/)」が、プロジェクトとしてコラボレーションし、今後の開発を共同で行うことを決定しました。

Usagi Project:国産のOSSフレームワークMaple Projectと、SNSエンジン開発OSSのUsagi Projectがコラボレーション!!

しばらく Ethna を使ってWebアプリを作ってみたものの、もうひとつしっくりこなかったというか、Ethna のよさを十分に活かせていないような気がして、他のフレームワークを使ってみようかと調べてみた結果、CakePHP を試してみようと思って、いろいろと CakePHP の情報を集めているところのでこのニュースを知りました。

『Maple Project と Usagi Project がコラボレーション』の続きを読む »

WordPress のデフォルトで使える、 🙂 や 😉 などのアイコンがどうも好みではないので独自にアイコンを追加する方法を調べて、投稿フォームに独自の絵文字アイコンを追加する という記事を参考に自作プラグインを作ってみたので、自分が追加したアイコンをデフォルトに配布してみようかと思っていたのですが、よくよく調べてみると、More Smilies というプラグインがあって、使ったことはないけど説明を見た感じでは、自分が作ったものと考え方がほとんど同じどころか、画像の追加部分だけを切り分けて、管理画面で追加できるようにしていうところに関しては、多くの人が設定を共有できるので、こっちの方が便利だよってことで、この記事書いている途中でプラグイン配布は没にしました :b-oops:

自分にとっては、必要な機能のみを実装していたり、onclick を HTML のソースに書きたくない等の理由で、自分が自作したプラグインの方が好みなので、More Smilies は使いませんが、一般的に考えて More Smilies の方がいいです。使っていないのに薦めるのもどうかと思いますが。

※日本語版はこちらで配布されています。→ More Smilies 日本語版

なので、プラグインを配布する代わりに、現在自分が追加しているアイコンの More Smilies 追加用パッケージを配布しようかと思います。

ただ、アイコンは自分が作ったわけではありません。 A Trial Product’s 素材置き場絵文字風から拝借したものです。

利用規約や FAQ を読む限りでは問題ないと思うのですが、個人的にアイコン制作者様に承諾なく配布するのも気が引けるので、連絡してみて許可をいただければ、パッケージとして配布しようかと思います。

簡単ログインができなかったときの話

2007/10/31 水曜日 20:23 投稿者 zon

携帯サイトで、ユーザ登録してログインをするサイトでは、簡単ログイン(mixiでは、『かんたんログイン』という)というログインを簡略化する機能がついてきているものが増えてきていますが、この簡単ログイン機能でログインできなかったので原因を調べていたときの話。

簡単ログインの機能を簡単に説明すると HTTP_USER_AGENT で送信されるユニークな個体識別番号を参照して、事前に登録されている個体識別番号と照合し、ユーザを判定します。

問題になったのは、SoftBank(Vodafone) 携帯です。

一部の SoftBank(Vodafone) 携帯は、初期設定で個体識別番号を送信しないようになっているようです。参照元を記憶していないので信憑性が薄いものになりますが、たしか3G以降の携帯とどこかで読んだので、比較的、新しい携帯の多くは、初期設定では簡単ログインが出来ないものが多いと思います。

簡単ログインのチェック

以前、原因を調べていたときに、個体識別番号が送信されているかを調べるために、簡単なプログラムを作ったので、困っている人がいたら調べてみてください。以下のURLから調べることが出来ます。

https://www.zontheworld.com/lib/ktai/kantan/

携帯に便利なQRコードも用意してみました。

簡単ログインのチェック用 URL

簡単ログインのチェックの使い方

前述の URL にアクセスすると、『簡単ログインのチェック』というリンクが出るので、そのリンク先にアクセスすると以下のような結果が出ます。※下記は例です。

【表示例】
MS : [ SoftBank ]
UA : [ SoftBank/***/***/***/SN********** Browser/***/***/***/*** ]
ID : [ ************ ]

この、一番下にある ID の [ ] の中に、英数字が入っていれば、個体識別番号が送信されていることになります。[ ] の中が空白の場合は、個体識別番号が送信されていないので、簡単ログインが出来ない原因になっている可能性が高いです。

個体識別番号の送信の設定について

どこかで目にしたことがある程度の情報なので、信憑性はいまいちですが一応書いておきます。

DoCoMo の場合

個体識別番号の送信が必要な場合は、毎回、送信するかどうかを聞かれる。

au の場合

初めて個体識別番号の送信が必要になったときに、送信するかどうかを聞かれて、送信すると、以後は、自動的に送信するようになる。

SoftBank(Vodafone) の場合

初期設定では、個体識別番号を送信しないものが多く、各自で個体識別番号を送信するように設定する必要がある。
尚、SoftBank(Vodafone) 携帯では、個体識別番号のことを 『製造番号通知』や『ユーザID通知』という表現をしているようなので、携帯の説明書で設定方法を調べてみてください。

以下のような、とあるサイトのFAQをたまたま見つけたので、そちらも参考にしてみてください。

SOFTBANK(Vodafone)をお使いの方で、設定できない方は、以下を参考にMy SoftBank(My Vodafone)を設定を行った後、簡単ログインの「設定」を行ってください。

▼SOFTBANK(Vodafone)の簡単ログイン設定方法
簡単ログインの設定は、携帯電話とMy SoftBank(My Vodafone)の2つを設定する必要があります。

MySoftBank(My Vodafone)の設定方法
[メインメニュー]→[My SoftBank(My Vodafone)]→[各種変更手続き]→[製造番号通知設定]→[許可する]
[メインメニュー]→[My SoftBank(My Vodafone)]→[各種変更手続き]→[ユーザID通知設定]→[通知する]

携帯端末の設定例
904SH
[メニュー]→[ブラウザ設定]→[製造番号通知]→[On]
903T,904T
[メニュー]→[Yahoo!ケータイ(Vodafone live!)]→[ブラウザ設定]→[製造番号通知]→[On]
910T
[Yahoo!ケータイ(Vodafone live!)]→[メニュー]→[ブラウザ設定]→[セキュリティ設定]→[製造番号通知]→[通知する]

上記の方法にて設定できない場合は、ご利用の端末のマニュアル(説明書)をご覧になるか、携帯電話会社のお客様センターにお問い合せください。

SOFTBANK(Vodafone)の携帯電話を使っているのですが、簡単ログインがうまく設定できません。

通常の場合

ol タグで、算用数字が振られるリストを表示すると、1. 2. 3. ・・・ となっていく。

以下が、ol タグで算用数字が振られるソースとその表示例。

■参考ソース

<ol style="list-style-type:decimal">
<li>リスト1</li>
<li>リスト2</li>
<li>リスト3</li>
</ol>

■表示結果

  1. リスト1
  2. リスト2
  3. リスト3

width を指定した場合

これが、li の style に width を指定して、IEでみるとなぜか 1. 1. 1. ・・・ となっている。

以下が、挙動がおかしくなるソースとその表示例。

■参考ソース

<ol style="list-style-type:decimal">
<li style="width:90%">リスト1</li>
<li style="width:90%">リスト2</li>
<li style="width:90%">リスト3</li>
</ol>

■表示結果

  1. リスト1
  2. リスト2
  3. リスト3

これはどうすれば対処できるんだ?

コナミコマンドの有効な活用方法を思いついた

2007/09/07 金曜日 0:31 投稿者 zon

コナミコマンドって?という人に

ちょっと前に、Webサイトにコナミコマンドを実装するというのが話題になったことがありましたが、その時は面白いことを考える人がいるもんだと思い、自分も乗っかろうかと考えたのですが面倒だったので流してしまったことがありました。

以下が、話題の元になったと思われるブログ記事です。
[NS] お知らせ:「コナミコマンド」を実装しました

そうだ!コナミコマンドだ!

このコナミコマンドを有効活用するべく閃いたのが以下のブログ記事です。

ブログサイトで「ログイン」やら「編集」やらのアンカー付きで管理画面にリンクを貼っているケースがあるけども、Wikiでもない限り、極力こうしたリンクは出すべきではないんじゃないかな(編集できるのかなと思ってクリックする人がいるのかもしれないので)

<中略>

この備忘録でも管理者がアクセスしている思われる場合は、編集リンクや記事毎の人気度などいろんなリンクを追加している。つまり逆に言うと、管理者の場合はユーザに見せられない(見せる必要のない)いろんな内部データを載せるのも、いいんじゃないかなということです。

Liner Note:ちょっとしたアイデア(11):一般ユーザが触っても仕方のない項目は隠すべき

『コナミコマンドの有効な活用方法を思いついた』の続きを読む »

WordPress 投稿エディタに LightBox のコードを挿入

2007/08/19 日曜日 11:38 投稿者 zon

コア部分を変更するのであまり参考にしない方がいいと思います。

変更後のイメージは以下のようになります。

LightBox のコードを挿入

■バージョン:2.1.3
■変更ファイル:/wp-admin/upload-js.php

修正点その1

【変更前】116行目:

h += "<label for='link-file'><input type='radio' name='link' id='link-file' value='file' checked='checked'/> <?php echo attribute_escape(__('File')); ?></label><br />";

【変更後】file のチェックをはずして、その上に LightBox のラジオボタンを追加

h += "<label for='link-lightbox'><input type='radio' name='link' id='link-lightbox' value='lightbox' checked='checked' /> <?php echo attribute_escape(__('LightBox')); ?></label><br />";
h += "<label for='link-file'><input type='radio' name='link' id='link-file' value='file' checked='checked'/> <?php echo attribute_escape(__('File')); ?></label><br />";  

修正点その2

【変更前】236行目~241行目:

if ( 'none' != link )
	h += "<a href='" + ( 'file' == link ? ( this.currentImage.srcBase + this.currentImage.src ) : ( this.currentImage.page + "' rel='attachment wp-att-" + this.currentImage.ID ) ) + "' title='" + this.currentImage.title + "'>";
if ( display && 'title' != display )
	h += "<img src='" + ( 'thumb' == display ? ( this.currentImage.thumbBase + this.currentImage.thumb ) : ( this.currentImage.srcBase + this.currentImage.src ) ) + "' alt='" + this.currentImage.title + "' />";
else
	h += this.currentImage.title;

【変更後】LightBox を選択時、rel 属性に lightbox[post-id] を設定する処理を追加。ついでに、img タグに width、height、title 属性を設定する処理を追加

if ( 'none' != link ) {
	h += "<a href='"
	if ( 'file' == link )
		h += this.currentImage.srcBase + this.currentImage.src;
	else if ( 'page' == link )
		h += this.currentImage.page + "' rel='attachment wp-att-" + this.currentImage.ID;
	else if ( 'lightbox' == link )
		h += this.currentImage.srcBase + this.currentImage.src + "' rel='lightbox[" + this.postID + "]";
	h += "' title='" + this.currentImage.title + "'>";
}
if ( display && 'title' != display ) {
	h += "<img src='";
	if ( 'thumb' == display ) {
		imageThumb = new Image();
		imageThumb.src = this.currentImage.thumbBase + this.currentImage.thumb;
		h += imageThumb.src + "' width='" + imageThumb.width + "' height='" + imageThumb.height;
	} else {
		imageBase = new Image();
		imageBase.src = this.currentImage.srcBase + this.currentImage.src;
		h +=  imageBase.src + "' width='" + imageBase.width + "' height='" + imageBase.height;
	}
	h += "' alt='" + this.currentImage.title + "' title='" + this.currentImage.title + "' />";
} else {
	h += this.currentImage.title;
}

img タグの width、height、title 属性は、LightBox とは関係ないのですが、W3C XHTML1.0 valid を意識して、毎回設定しているのが面倒になったので、コア部分を変更するならと、ついでにやっておきました。

プラグインを駆使してなんとかなるものなら、コア部分を変更せずになんとかしたいものですが分からないのです。

2.0系でこのカスタマイズを行いたければ、inline-uploading.php 辺りを変更すればいいのかと思って、ソースをざっくり追ってみましたが、2.1.3 の仕組みとは大きく変わっていたので追うのが面倒になりました。2.0系をカスタマイズしたい人は、ほとんど参考にならないと思います。

結論から言ってしまうと、Smart Update Pinger の影響のようです。プラグインを無効にすれば正常にタイトルが反映されました。

私の使っているバージョンは、2.1.3 なので、サポートされているバージョンで Smart Update Pinger を使っている人は、この症状は出ないのではないかと思います。
※ざっくりソースを流し読みしただけの予想です。

ちなみに、Smart Update Pinger のサポートされているバージョンは、配布元をみると1.5系か2.0系と書かれているようです。
※自信がないので、それっぽく書かれているところを引用。

WordPress 1.5/2.0 Support

If you’re still using WordPress 1.5.x, you must use the older version of Smart Update Pinger. This version will not work properly on WordPress 2.x, so make sure you have the right version of Smart Update Pinger.

WordPress Plugins: Smart Update Pinger, Jerome’s Keywords; Enhance your blog tool

原因

Smart Update Pinger(日本語版) の 161行目の、$post_title = ""; が悪さをしているような気がします。
2.0系までは、ファイルをアップロードする際のタイトルに、imgtitle を使っていたみたいですが、2.1系からは post_title を使っているので、Smart Update Pinger で post_title を初期化することで、post_title が設定されていないと判断されているみたいです。

対処

ファイルアップロード時は、Smart Update Pinger のプラグインを読み込まないようにしました。
※正確には読み込むが、if文で処理を通さないようにしました。

smart-update-pinger.php の最初と最後に以下のコードを追加

if (false === strstr($_SERVER["SCRIPT_NAME"], '/wp-admin/upload.php')) :
~ (中略) ~
endif;

初めから smart-update-pinger.php 自体を読み込まないような方法があるような気もするのですが、プラグインの読み込み時に振り分ける方法が分からないし、処理を追っかけるのが面倒なので上記のような安易な対処しました。

この対処で問題ないかどうかは不明ですが、今のところ正常に動いているようです。

日本語のサブドメインを使ってみる

2007/08/11 土曜日 3:24 投稿者 zon

しばらく前に Yahoo! JAPAN で異常なほど日本語のドメインが上位に表示されていたことがありました。まだ名残が残っているのか、それともこれで落ち着いたのかは分かりませんが、今もその当時ほどではないにしても、それなりに効果はあるようです。

メリット、デメリットはあるもののとりあえず試してみたいと思いながらも、特に新しいドメインを取ってまで公開するようなサイトはなかったので傍観していたのですが、この前の記事にも書いた 『宅建の試験に合格するぞぉ』 を日本語サブドメインを使って公開することにしました。

宅建の試験に合格するぞぉ
http://宅建.zontheworld.com (http://xn--09s63f.zontheworld.com)

※上記のURLは移転しました。日本語のサブドメインもやめました。

日本語ドメインへの変換は、こちらを使うと便利です。
日本語JPドメインのPunycode変換・逆変換

日本語サブドメインの変更以外で気をつけた点

今回のSEOは、Yahoo! をメインのターゲットした作りにすることにしました。

旧URLへのアクセスは、301 リダイレクトで日本語サブドメインへ

.htaccess を使ってごにょごにょと。
※『.htaccess リダイレクト』 で検索すれば詳しく解説したページが出ます。

ディレクトリ構成は3階層以内で収める

感覚的に、Yahoo! は深いディレクトリはなかなか掘ってこない気がしていて、以前のディレクトリ構成はあまり深く考えずに、作りやすいようにしたらちょっと深くなってしまって、トップのディレクトリに takken/ のディレクトリを切って、そこが 『宅建の試験で合格するぞぉ』 のトップページになるので更に深くなっていました。

今回のサブドメインへの以降の理由はこの点を改善する為というのが大きな理由のひとつでもあります。
この点は修正して今現在は2階層までで、まとめています。

タイトルはページごとに変え、ページを増やす

最近の変更でどうなったかは分からないですが、Yahoo! はページのタイトルと内部リンクをそれなりに見てくれている気がします。だから、ページタイトルはそれぞれ変更しました。また、ページを増やす為に1問ずつの小テストのページを作りました。これは、前回公開した宅建の過去問をそのまま利用しているので、新規でデータをする必要がなく、たいした手間になりませんでした。

1問ずつのページを増やしたのは、実はページを増やす為ではなく、50問一気にやって解答するのは面倒でなかなかやらないので、手軽にできる小テストを作ったのですが、後から無理やり理由っぽくこじつけてみました。

なんにせよ、宅建の過去問を作ることに力を注ぐよりも、はやく宅建の試験勉強をすることに力を注がなくてはいけないのですが、なかなか集中力がつづきません。

Ethna Controller のトレースをメモ

2007/08/07 火曜日 0:09 投稿者 zon

Ethna_Controller の大まかな流れをメモ。

  • バージョンは、2.3.2
  • トリガーは、GATEWAY_WWW

『Ethna Controller のトレースをメモ』の続きを読む »

zontheworld HTML convert time: 0.151 sec. ( Login )