WordPressのヘッダーにデフォルトでセットされるrel_canoncalをカスタマイズする方法です。
もともとrel_canoncalは投稿URLなので、post/getなどで動的にURLを作っている場合などカスタマイズしたくなることがあります。
どうもフィルターはなさそうなので、やっぱり上書きしてあげるしかないようです。headerに書いてもいいのでしょうが、以下functions.phpで対応する方法です。
■まず、デフォルトセットの削除です。
coderemove_action('wp_head','rel_canonical');
■期待するurlをrel_canonicalにセットして、headerへ出力させます。
codeadd_action( 'wp_head', 'my_canonical' );
function my_canonical() {
echo ' <link rel="canonical" href="'.home_url().$_SERVER[" request_uri"].'"="">';
}
ここでは、呼ばれるURLをセットしました。
これで、FBでもog:urlのwarningはなくなりますね…