Разработчики шаблона с которым я сейчас работаю перед выводом основного текста статьи показывают имя автора этого текста. Если я закрываю статью шорткодом, то в принципе все показывается нормально. Но если я закрываю статью из админки, то карточки доступа показываются два раза (сам текст статьи и автор), что не очень хорошо.
Код в single.php для показа имени автора следующий:
<?php
$authors = apply_filters('the_content', get_post_meta($post->ID, 'post_authors', true));
echo $authors;
?>
Можно ли в этом случае (при закрытии всей статьи из админки) не применять закрытие статьи к этому коду? То есть чтобы результат работы этот кода показывался в любом случае?
И еще один общий вопрос: Как можно определить в коде php разрешен ли доступ к статье или нет? То есть закрыта ли статья или доступ к ней разрешен из WP Access Ultimate?
ну конечно, если пропускать каждую строку через фильтр the_content, то все что предназначено для контента публикации будет цепляться и к этой строке, проблема не в плагине, а в этом, как бы сказать помягче... неверном подходе, который применяют авторы вашей темы, мне видеть это просто дико.
Пробуйте изменить указанную строку так:
<?php echo get_post_meta($post->ID, 'post_authors', true); ?>
Проверить закрыта ли текущая публикация каким-либо доступом:
global $WAU_Post; if($WAU_Post->access){ echo 'публикация закрыта доступом'; }
Проверить текущего пользователя на доступ к текущей публикации:
global $WAU_User, $WAU_Post; if($WAU_User->is_branch_access($WAU_Post->get_account_ids(), 0)){ echo 'Пользователь имеет доступ к публикации'; }