iPhoneアプリのこととかを書いてるブロガーの間で最近ちょー盛り上がっている「iTunesのアフィリエイトが変わった」ってやつ。
今までLinkShareを使っていたAppleが、10月からLinkShareは全部使えなくなるからね、早くPHGに移行せなあかんよ、という状態になっております。
で、これやらないかんのだけど、なんかクソめんどくせーなーと思っていたところ、ラクイシ先生が素晴らしいプラグインを作ってくれました。
[WordPress] LinkShare を PHG のアフィリエイトリンクに置き換えるプラグイン「LinkShare To PHG」を作りました | ラクイシロク
プラグインでHTML出力結果を変更する
このプラグインの仕組みは、WordPressがページを表示する時に、LinkShareのリンクがあるか探し出して、もしそれがあった場合には、そのHTMLをPHGのものに変更して書き出す、というもの。
「データベースを変更する」のではなく「HTML出力をする時に毎回変更する」という仕組みであるため、悪い言い方をすれば「その場しのぎ」的な感じにもなってしまいますが「データベースをいじる」という、一歩間違えるとブログが何もかも出なくなる可能性があるリスクを負わずに済む、というのが良い点です。
まさに「とりあえずやっとくにはいい感じ」のお手軽で便利なもの。
LinkShare to PHGがうまく動かない場合
で、こりゃあいいやラクイシ先生素晴らしいぜ!って思って早速というかようやくプラグインを導入してみたんですが、うまく動かない!
で、記事のコメント欄を見てみると、なんかどうやらリンクシェアコードの違い?によって、うまく動いていない人がいるっぽいのを発見。
僕のリンクシェアのコードと、アプリid(数字)の終わりの後の文字が違いますね。僕のは アプリid + %253 ですが、Aki さんのは、%3F で終わっていますね。ここらへんを調整すればうまく動作するかもしれません。
で、これを見て、プラグインのソースをちょいといじってやったら、問題なく動作するようになりました。
以下手順
WordPressの管理画面から、 プラグイン > LinkShare To PHG > 編集でページを開いて、プラグインの編集画面でソースを一部書き換える
書き換えるのはこの $pattern がある行の一部
変更前
[php]
$pattern = ‘|"http://click.linksynergy.com/.*?itunes.*?id([0-9]+)?%253.*?mt%253D([0-9]+)?%252.*?"|’;
[/php]
変更後
[php]
$pattern = ‘|"http://click.linksynergy.com/.*?itunes.*?id([0-9]+)?%3F.*?mt%3D([0-9]+)?%252.*?"|’;
[/php]
文字だとすごくわかりにくい、てかスクロールしないと全部は見えないですが(コピペは可能です) 2箇所ある「%253」という文字を、「%3F」に置き換えています。
この部分だけ変更してやったら、見事リンクシェアのリンクをPHGに置き換えてくれました!
データベースいじるのが怖い人にも、とりあえず変更するまでのつなぎにも
まぁちょっとだけ設定部分で苦労しましたが、とりあえずこれはすごーく簡単で便利で素晴らしい!
ホントのこと言えばデータベースをいじって「ちゃんと」変更した方がいいんですが、まぁこれは気が向いたらやってみるか、くらいの気持ちになってしまいました。
「とりあえず10月までにやっておかないといけないこと」は済ませられて、さいきょーに嬉しい気分満載です。
ラクイシ先生あざます!!!
参考
[WordPress] LinkShare を PHG のアフィリエイトリンクに置き換えるプラグイン「LinkShare To PHG」を作りました | ラクイシロク
データベース変更でのやり方はもやしさんの記事が超親切でわかりやすいです。
ひとりぶろぐ » WordPress上のApp StoreアプリのLinkShareリンクを新アフィリエイトプログラム(PHG)のものに書き換える方法