web-dev-qa-db-ja.com

特定のページのワードプレスページ付けURLの書き換えを無効にする

私は誰かが次の問題で私を手伝ってくれることを願っています。私はワードプレスのページがあります: http://www.howdesign.com/design-jobs そして経由でbehance.netから来ている仕事のリストがありますJavaScriptです。 [次のページ]または特定のページ番号をクリックすると、URLは次のようになります。/design-jobs/?callback=Joblist.search.repage&page=2&sort=published_date&status=current

しかし、WordPressは自動的に "page = 2"を取り、URLを次のように書き換えます。

/design-jobs/2/?callback=Joblist.search.repage&sort=published_date&status=current

(私は2つ以上のURLを投稿することはできませんでしたので短縮版です)。番号2がクエリ文字列から外れ、 "page = 2"も削除されていることに注目してください。これにより、このページの求人一覧のページ区切りが壊れます。

ページ付けを正しく機能させるために特定のページでこの書き換え動作を無効にする方法があるかどうか私は思っていました。

2
matr07

これにはredirect_canonicalフィルタが関与します。要求されたページに応じて選択的に無効にできます。これはテストされていませんが、動作するはずです。

function wpa66273_disable_canonical_redirect( $query ) {
    if( 'design-jobs' == $query->query_vars['pagename'] )
        remove_filter( 'template_redirect', 'redirect_canonical' );
}
add_action( 'parse_query', 'wpa66273_disable_canonical_redirect' );
2
Milo