WordPressでClickonceを配信する

今までWordpress単体でClickonceは配信できないと思っていたのですが、プラグイン次第ではいけるみたいです。それでは、順番に解説していきましょう。長いので省きつつ。

今回使用するプラグイン

    • Media File Manager
      階層別にファイルを置いたり書き換えたりするのに必要なプラグインです。というか、これは必須ですね。Wordpressの基本動作にも普通に役立ちます。
    • Organize Media Library by Folders
      しかし、上記のプラグインのみでは「半角スペース」に対応していません。え?なぜ対応しなければならないか?実はClickonceには必ず「Application Files」というフォルダがあります。名前に半角スペースがあります。それ以外にも半角スペースを使用するソフト名…など多々あると思います。ですが上記のプラグインでは半角スペースが使えません。そこでこのプラグインを使用します。
    • WP Add Mime Types
      さらにさらに厄介なことにdefaultのWPの設定では.exeや.application
      といった対応していない拡張子や、これらの拡張子へ個別に応答ヘッダを付けるときのプラグインが別途に必要になります。まあ、わざわざプラグインを使用しなくてもテーマの編集でできるらしいのですが、それでミスったら嫌なので、今回はプラグインを用いて説明します。
ステップ1 基本の準備

準備は簡単。Visual Studio(動作検証済み:2015・2017・2019)の公開(または 発行)からそれぞれ指定してください。

ここでは一つ注意が必要。基本的にWPの場合のURLは、
https://ドメイン名/wp-content/uploads
と指定してください。ここは今後も重要となっていきます。
ちなみにこの場合だとWPのメディアから直下に.applicationファイルを置いた場合なので、別フォルダに置いた場合はそれぞれ間にフォルダ名を挟む必要があります。
例:https://ドメイン名/wp-content/uploads/(フォルダ名)/○○.application

これ以外に設定が済んだら「今すぐ発行」を押して発行。発行フォルダーの場所はできる限り分かりやすい場所を推奨します。

ステップ2 WP側の準備

ここまでくればいよいよWP側の準備が必要となります。

※ここからプラグインが必須になるので、ここで先ほどのプラグインをインストール。
設定からMine type設定で、追加の項目に、

application = application/x-ms-application
manifest = application/x-ms-manifest
deploy = application/octet-stream
exe = application/octet-stream

と入力(面倒ならコピペでもどうぞ)。「設定を保存」で設定が保存されます。これでメディアのアップロードでexe、applicationといったClickonceの主要拡張子がアップロードできるようになります。

1.メディアのアップロードで先ほど「今すぐ発行」の時に発行されたフォルダをオープン。

2.主要アイテム「setup.exe」「○○.application」をアップロード。これはそのまま(特にこだわりがなければ)でいいですが、WP上に二つClickonceのソフトを入れたい場合は小フォルダに入れた方がいいので、これらを含めて小フォルダを作り方から(そっちが本命)。

3.メディアから「フォルダーを作成&設定」を選択、フォルダーを作成から、
「○○」(アプリ名)、「Application Files/(アプリ名)1_0_0_0」(四桁の番号はバージョン。先ほどのフォルダを確認し、正しい四桁のバージョンを入力する必要があるが、初回は1_0_0_0なので、今回はこのバージョンで説明する)の2フォルダを作成。作成したら先ほどのメディアライブラリに戻る。

4.WPのメディアライブラリに戻ったら先ほどのフォルダの「\Application Files\(アプリ名)_1_0_0_0」を開く。ここで先ほど作成したのと同じか確認しつつ、開いたフォルダの中にあるdeployファイル、manifestファイルをアップロードする。ここですべてのファイルがアップロードを終えます。

5.WPのメディアライブラリにまた戻り今度はフォルダーという欄に「/」というテキストがたくさん並んでいるので、.deployファイルと.manifestファイル(必要があれば「\Application Files\(アプリ名)_1_0_0_0」にあったapplicationファイルも)を「Application Files/(アプリ名)1_0_0_0」にし、チェックを入れ適用を押す。これで配信できる状態になった。お疲れ様です。

6.いよいよPCにインストール。今回直下に入れた方の(アプリ名).applicationをWPのメディアライブラリからプレビューを押し、ダウンロードしますか?と聞かれるのではいを押す。相変わらずの警告画面(×2)が出るが無視しインストール→詳細→続行。ダウンロードが始まりスタートメニューを見て正しくインストールされていればインストール成功。やっと終わりました。

ステップ3 補足・おまけ

1.アップデート・更新
更新をする際はapplicationファイル諸々置き換える必要がある。またフォルダ名を1_0_0_0じゃなくて1_0_0_1にする必要がある。その際フォルダ管理プラグインが役に立つ。フォルダ内を一括選択し、削除してからフォルダごと削除すればよい。(逆はだめ)必要であれば置き換えプラグインも必要なのかもしれない。

2.簡単な方法はないのか?
おそらくこれがWPの限界だと考えています。代替サイト「Clickonceget」(WPじゃない人・WPを使いたくない人はぜひ)でもある程度の手順は踏む必要がある(githubのアカウント作成、zipへ圧縮…)ため、そもそもClickonce自体の特徴だと考える。だがユーザーにとってみればインストールをすればあとはWPでの置き換え次第で勝手にダウンロードしてくれるのだから、開発側に苦労があるのは「仕方ない」と考えるしかない。(Clickonceで十分と考えればそれ以上はないし、Clickonceに勝つ技術があると考えればそれ以下はない)

3.その他参考サイト(このサイトがわかりにくければ)

※このページはWordPressでClickonce配布するにはどうすりゃいいんだ!と思った筆者が、深夜テンションで作ってしまったページなので、もし参考になれば幸いです!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です