[WordPress]ホームページ接続時に特定のURLまたはカテゴリにリダイレクトさせる

Last Updated:2016年08月26日| | コメントを残す

はじめ

WordPressで作成したサイトでホームページにアクセス時に特定のページ、特定のURLまたは特定のカテゴリなどにリダイレクトさせたい場合には、発生する可能性があります。

いくつかの方法があります。 直接 header.phpの ファイルにリダイレクトコードを挿入することも考えてみることができます。 ここで template_redirect フックを使用してリダイレクトさせる方法を考えてみましょう。 この方法を使用すると、テーマのソースファイルを変更しなくてもされます。

特定のページにリダイレクトさせる

まずページの場合には、 設定>読むから フロントページの表示静的なページに設定して簡単に解決することができます。

読むの設定でフロントページに使用するページを設定することができます。
読むの設定でフロントページに使用するページを設定することができます。

特定のカテゴリにリダイレクトさせる

ホームページにアクセスしたときに、特定のカテゴリが表示されるようにしたい場合 template_redirect アクションを使用することができます。 基本的な使い方は次のとおりです。 (template_redirect アクションの詳細については、 WordPress Codex文書を参照してください。)

function my_page_template_redirect()
{
if( is_page( 'goodies' ) && ! is_user_logged_in() ) // 'goodies' 페이지에 게스트가 접속하는 경우
{
wp_redirect( home_url( '/signup/' ) ); // 가입 페이지로 리디렉션시킵니다
exit();
}
}
add_action( 'template_redirect', 'my_page_template_redirect' );

上記のコードを応用して、特定のカテゴリにリダイレクトさせるには:

function my_category_template_redirect()
{
if( is_home() || is_front_page() ) // 홈 또는 전면 페이지에 접속하는경우
{
$category_link = get_category_link( 14 ); // 카테고리 ID 14
wp_redirect( $category_link ); // 위에서 지정한 카테고리로 리디렉션시킴
exit();
}
}
add_action( 'template_redirect', 'my_category_template_redirect' );

上記のようなコードを使用しているテーマの関数ファイル(のfunctions.php)に追加するようにします。 関数ファイルにコードを追加する方法は、 この記事を参照してみてください。

特定のURLにリダイレクトさせる

特定のURLにリダイレクトさせることも可能です。 この場合、基本的には上記のコードを使用します。 例えば、Googleに移動させる場合:

function my_homeexternal_template_redirect()
{
if( is_home() || is_front_page() )
{
$external_link = 'https://www.google.com'; // 구글 URL
wp_redirect( $external_link ); // 위에서 지정한 특정 URL로 리디렉션
exit();
}
}
add_action( 'template_redirect', 'my_homeexternal_template_redirect' );

グーグルURLの代わりに目的のURLに置き換えるようにします。 必要に応じて条件を変更して、様々な応用ができます。


コメントを残す

コメント