В версии 1.1.3 мы добавили возможность манипулировать результатом проверки “is_appropriate_post”.
По умолчанию эта проверка возвращает true, если пользователь запрашивает разрешенный в настройках тип записи и эта запись не защищена паролем.
Вы можете изменять результат проверки, таким образом включая или выключая Мистейп на конкретных страницах по своим условиям.
Для фильтрации по категориям можете использовать такой фрагмент кода (добавьте в конец файла functions.php в папке вашей темы; версия PHP должна быть не ниже 5.3):
/**
* Disable Mistape on posts which belong to specific categories defined by IDs
*/
add_filter( 'mistape_is_appropriate_post', function ( $result ) {
$excluded_cats = array( 13, 107, 182 ); // replace with category IDs where you want to disable Mistape
if ( is_single() ) {
$post_id = get_the_ID();
$args = array( 'update_term_meta_cache' => false ); // save an unnecessary database call
$categories = wp_get_post_categories( $post_id, $args );
return ! array_intersect( $excluded_cats, $categories );
}
return $result;
} );
В части кода $excluded_cats = array( 13, 107, 182 )
замените числа на ID желаемых категорий. На страницах записей, принадлежащих указанным категориям, Мистейп выводиться не будет.
Фильтрация по категории — слишком специфическая потребность. Кому-то может быть нужно фильтровать по тегам или по айди конкретного поста. Поэтому нет смысла добавлять такие настройки в интерфейс админки. Эти вещи легко реализуются фильтрами по приведенному выше примеру.
Надеемся, вам это пригодится.