楽天WEBサービスの動作デモページ

ウェブサービス > 動作デモページ > 楽天WEBサービスの動作デモページ

前回の楽天ウェブサービスのサンプルコードの動作を確認するためのデモページです。

ワードプレスのリライト介入を回避する方法。

ワードプレスのようにリンクで存在しないページURLを指定すると強制的にエラーページやサイトホームへと遷移してしまう環境に限ってのはなしになりますが、この挙動が原因でページャーで思うように遷移できない現象が生じます。

ページャーを使ったページ遷移でワードプレスのリライト介入を避けるために下記コードをご使用テーマのfunctionsファイル内に追加します。

function rws_redirect( $rewrite_url ) {

	if ( is_single() ){
		 // ページャーURLに「?Keyword=」が含まれているかどうかで判定
		$pattern = '/\?keyword=/';
		preg_match($pattern, $rewrite_url, $matches);

		if ($matches){
		  //ページャーURLに「?Keyword=」が含まれていればリライトさせない
		  $rewrite_url = false;
		return $rewrite_url;
		}
	}

}
add_filter('redirect_canonical','rws_redirect');

続いてサンプルコードのページャーリンク部分を下記のようにします。


// サンプルコードを貼り付けたページURLを取得
$currenturl = ((empty($_SERVER["HTTPS"]) ? "http://" : "https://") . $_SERVER["HTTP_HOST"] . 
$_SERVER["REQUEST_URI"]);

// URLの中に「&」が含まれていればカレントURLの中から「&」以降を削除
if(strstr($currenturl, "&")){
  $die = strstr($currenturl, "&");
  $currenturl = str_replace($die, "", $currenturl);
}

// ページャーリンク生成部分
$url_a ="<a style='background-color: #ffffff; color: #ff0000; margin: 0; padding: 0.2em 0.5em; border: solid 1px; text-decoration: none;' href=\"$currenturl&page=";