これは動作していたと確信していますが、今はそうではありません。ログインしていない場合は特定のページカテゴリをリダイレクト
add_action('template_redirect', 'client_redirect_to_login');
function client_redirect_to_login() {
$category_slug = 'client';
global $pages;
if (! is_user_logged_in() && in_category($category_slug, $pages)) {
wp_redirect(site_url('/login'));
exit();
}
}
意図を、単純に十分な、ユーザーがログインしていないということです。「クライアント」カテゴリでページの範囲をタグ付けや機能に追加され、その後
function add_categories_to_pages() {
register_taxonomy_for_object_type('category', 'page');
}
add_action('init', 'add_categories_to_pages');
:私はページにカテゴリを追加しました「クライアント」ページに直接アクセスしようとすると、私のカスタム/ログインページにリダイレクトされます。彼らがアクセスしようとしていたページに直接戻されるのはボーナスになりますが、これは以前から働いていました。ダースのページが増えているので、カテゴリー別に制限するのはページID配列よりも簡単ですが、何が間違っているのか分かりません。
すべてのアドバイスをよろしくお願いします! global variables pages in codex$pages
から
[ここ](https://codex.wordpress.org/Global_Variables)から '$ pages'が返されます:'現在の投稿のページの内容。各ページ要素には、<! - nextpage - >タグで区切られたコンテンツの一部が含まれています。そして投稿IDまたはオブジェクトIDが必要です。 –
ありがとう@dingo_d、ありがとうございます。削除されたグローバルページと$ページは動作しますが、カテゴリのスラッグもあります。ありがとう! – wheeleran
クール:)これを答えとして追加します:) –