Добавлять возможность изменять только данную категорию в этом коде? - PullRequest
0 голосов
/ 14 августа 2010

Недавно я создал этот код для моего сайта Wordpress.Это делает так, чтобы незарегистрированные пользователи не могли видеть самые новые доступные сообщения до 15 дней, если они не регистрируются.Это работает, но мне нужно, чтобы оно ограничивало только одну конкретную категорию в моей установке Wordpress, а не все (т.е. мне нужно, чтобы она ограничивала эту категорию, но не мои сообщения в блоге).что нужно, чтобы этот код функционировал таким образом?Спасибо.

    add_filter('posts_where', '_custom_s2member_archive_filter');
function _custom_s2member_archive_filter($where) /* Require membership to view latest content. */
    {
        if(!is_admin() && (is_archive() || is_home()) && !current_user_can("access_s2member_level1"))
            {
                $where .= " AND post_date <= '".date ("Y-m-d", strtotime ("-15 days"))."'"; /* Back-date freeloaders. */
            }
        return $where;
    }
add_filter('template_redirect', '_custom_s2member_single_filter');
function _custom_s2member_single_filter() /* Require membership to view latest content. */
    {
        global $post; /* Need this for date comparison. */
        if(!is_admin() && is_single() && !current_user_can("access_s2member_level1"))
            {
                if(strtotime($post->post_date) > strtotime("-15 days"))
                    {
                        header("Location: ".S2MEMBER_MEMBERSHIP_OPTIONS_PAGE_URL);
                        exit();
                    }
            }
    }

1 Ответ

0 голосов
/ 24 августа 2010

Начните с выяснения идентификатора рассматриваемой категории.Вы можете получить это, перейдя в Сообщения -> Категории на боковой панели администратора, а затем нажмите на категорию, которую вы пытаетесь ограничить.URL новой страницы, к которой вы ведете, будет заканчиваться tag_ID = [некоторое число].Это [какое-то число] является идентификатором категории.

Затем используйте условные теги Wordpress , чтобы написать выражение if, например
if(is_category('[some number]')) <br> { <br> Put the code you already have for restricting the posts here <br> }

Конечно, я сам не проверял, но позвольтезнать, как это работает!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...