wordpressでパーマリンクに日本語を含めるとiPhoneのfacebookアプリ上ではリンク切れになる件

photo credit: duncan via photopin cc

photo credit: duncan via photopin cc



ブログとFacebookページとの投稿連携の現状

会社で運用しているfacebookページで、ちょっと変な現象が起きてる。

wordpressで運用している会社のブログがあり、ブログエントリーをJetpackのパブリサイズ共有を用いて、会社のfacebookページと、Twitterに連携・投稿させている。

エントリーはブログタイトルと短縮URL。その下にアイキャッチ画像。アイキャッチ画像の下にもう一度ブログタイトル。アイキャッチ画像以下のところは全部当該ブログエントリーへのリンクになっている。

(投稿はこんな感じ)

困っていること1〜アイキャッチ画像のリンクがリンク切れ

さて、困ってるのは、ボクのiPhone5のfacebookアプリから、この投稿を閲覧した時だ。
なぜか、アイキャッチ画像に付く本文へのパーマリンクがリンク切れとなるのだ。
投稿文中に記載される短縮URLの方は問題ないのだが、アイキャッチ画像をクリックして、ブログの方にジャンプすると、エントリーがなく、404NotFoundとなる。

試しに同じiPhoneで、facebookアプリではなく、ブラウザからfacebookを利用してみる。この場合は、アイキャッチからのリンクで問題なく該当エントリーに飛べる。

PCでも同じ。別の人のandroid端末のfacebookアプリでも試してみるが、こちらでも問題ない。
つまり、今のところ、iPhoneのfacebookアプリのみで発生している問題ということになる。

リンク切れになってしまうURLをコピーして、PCに送って分析してみると、URLのエンコーディングがおかしい。

現状、ブログのパーマリンクは、カスタム構造(/%category%/%postname% )にしている。
カテゴリは日本語だが、スラッグの設定をしているので半角英語に変換している。

しかし、タイトルはブログエントリーのタイトル、つまり日本語だ。タイトルが長いと、エンコーディングすると物凄く長くなってしまうので、一応いつもエントリーの編集画面のところのパーマリンクの編集機能で、URLを書き換えてる。でも、基本全角の日本語だ。

例えば、hogehoge.co.jp/blog/category/日本語タイトル みたいな感じで、タイトルを少し短くするぐらい。

iPhoneのfacebookアプリ上でのアイキャッチのURLはエンコーディングに失敗しているようで、デコードしてみても意味不明の文字列にしかならない。

今のところiPhoneのfacebookアプリのみ、しかもアイキャッチ画像のリンクのみで起きてる現象ではあるけど、でも、iPhoneの利用シェアとかで考えると、無視しておくわけにもいかない。

日本語URLのエンコーディングの問題だとするならば、やはりパーマリンクは、手動で書き換えて英語表記にしたほうがいいのだろうか。

パーマリンクを半角英語に書き換えたらリンク切れは発生しないけど・・・

試しにパーマリンクを、手動で半角英語に変えて投稿したものだと、リンクは問題なかった。

うーむ。 ちなみに一度、facebookに投稿されてしまった後で、ブログ側のパーマリンクを英語に書き換えても、facebook側の投稿が勝手に書き換わってくれるわけでもない。

OpenGraphのデバッガを利用すれば、ブログのタイトルやらアイキャッチ画像やらの変更については、ブログ側の更新を、facebookのフィードの方に反映させることは可能なのだけど、パーマリンクの変更が出来ない。記事のパーマリンクを変更しても、元のURLからリダイレクトになる設定になるだけっぽい。

Debugger



今のところ、一度投稿されたものパーマリンクを変更する方法がわからない。なので、リンク切れのまま放置してる。検索しても、この手の解決方法を見つけられない。というか、こういう現象が発生している人がいない。なぜだろう。僕の環境だけで起きてることなんだろうか。

とりあえず、今のところパーマリンクには日本語を含めない。パーマリンクを英語に書き換えて投稿するということを徹底していくしかなさそうだ….  こんなことなら最初からパーマリンクはディフォルトの連番形式とかにしておいたほうが良かったんじゃないかろうかと少し後悔しているが….

困っていること2~Googleウェブマスターツールでのエラーが出る

googleウェブマスターツールで、サイトマップのインデックスエラーが発生しているのも、こちらのブログのエントリー絡みだ。

サイトマップは、これも定番のプラグイン Google XML Sitmaps を用いて、自動処理してるのだが、Googleウェブマスターツールで確認すると、ブログのエントリーは、警告が出ていて、ほとんどのエントリーがインデックスに登録されていない。

警告内容は、「クロールが完了できなかった」となり、詳細としては、「サイトマップの URL のサンプルをテストしたところ、一部の URL が別のページにリダイレクトされることがわかりました。サイトマップには、他の URL にリダイレクトされる URL ではなく、最終的なリンク先 (リダイレクト先) の URL を指定するようお勧めします。」となっている。

sitmaps.xml に登録されているブログのパーマリンクが、リダイレクトになっているのが原因のようだ。

しかし、エラーになってるURLを当該のsitnapa.xml から拾って、ステータスコードチェッカーなどで調べても、ステータスは200が返ってきてる。

リダイレクトされていないんだけど…  なぜだ??

これも謎。こちらもまだ解決できてない。誰か良い解決方法知ってたら教えて!

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク

コメントをどうぞ

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