WordPressでのシームレスインストールページの作成

このサイトもそうだが、WordPressが手軽なのでサイトの構築に使うことが増えた。

僕はWEBサイト作成は本業では無いので、必要に迫られるとCMSを使うようにしている。

以前はXoopsを使っていたのだが、最近、このサイトを移設する為に、新しく借りたレンタルサーバーでWordPressのインストールサービスがあったので使った為、某製品のダウンロード用サイトでもこれを使うようにしたが、WordPressはFlashを簡単に埋め込めない。
AIRのシームレスインストールの為にはFlashが必要なので、何とか方法が無いかと調べたらプラグインがあるらしくて利用してみた。

只、一般的に使われている「WP-SWFObject」の場合、シームレスインストールに必要なflashvarsを設定できない。

その為「WP-Al-SWFObject」と言うプラグインを使ってみた。このプラグインならflashvarsを渡せるようだ。

プラグインのダウンロードやインストールは
http://blog.alumican.net/2009/04/19_233117を見てもらうとして、ページへの埋め込みはこんな感じだ。

[embedSWF]http://サイトURL/AIRInstallBadge.swf, 215, 180, center, 6.0.65, http://サイトURL/expressinstall.swf,{airversion:”1.2″,appname:”アプリ名(日本語は表示しない)”,appid:”アプリID”,pubid:”publishID”,appversion:”アプリのバージョン”}[/embedSWF]

ここで、{}の部分がflashvarsだが、実は設定にあるべきAIRのアドレスや背景画像のアドレス設定はここにない。

実は、初めは背景画像もAIRアプリのアドレスもflashvarsにimageurlやappurlと言う値で設定していたのだが、画像も表示されないしAIRのインストーラも起動しない。

何故?と思って実際にWordPressで出力しているHTMLのソースを見ると何故か2つとも「http:」までしか無い。
それなら表示もされないし、インストーラも立ち上がらない筈だ。

どうもflashvars内のアドレスがちゃんと渡ってない様だが、WordPress側の問題かこのプラグインのバグか理由が良く分からないし、突っ込んで調べる時間が勿体なかったので、僕はAIRInstallBadge.flaで読み込んでいるAIRInstallBadge.asの以下の中に直接この二つを仕込んだ。

appName = validateString(params.appname);
appURL = ‘AIRのURL’;
appVersion = validateString(params.appversion);
helpURL = validateURL(params.helpurl);
hideHelp = (params.hidehelp != null && params.hidehelp.toLowerCase() == “true”);
image=’画像のURL’

この辺の値はそうコロコロ変わる訳では無いので別に問題ない為、これで実現した。

カテゴリー: 未分類   パーマリンク

コメントは受け付けていません。