У меня есть стандартный тип записей «post», который автоматически публикуется, как и ожидалось, с помощью плагина WP Discourse. Также у меня есть другой тип записей, поддерживающий редактор Gutenberg, но единственный способ назначить ему существующие или созданные сообществом вручную темы — отметить это здесь:
но и автоматически публикует всё, что я делаю с записями этого типа. Как разделить эти задачи? Я разработчик и, если указать правильное направление, смогу внести изменения в код. Я предпочитаю вручную связывать записи этого типа с соответствующими темами на форуме, если они есть.
Я могу ошибаться; мне кажется, что только настройками этого не сделать.
Как насчет использования Exclude Posts By Tag? Вы могли бы автоматически (с помощью плагина) присваивать этим типам пользовательских записей определенный тег. Подойдет ли вам такой вариант?
Также можно отфильтровать их с помощью кода, используя wpdc_publish_after_save.
Да, фильтр был ключевым! Я использую это как часть класса, и всё работает отлично:
add_filter('wpdc_publish_after_save', [$this, 'prevent_autopublish_for_konyv'], 10, 3);
public function prevent_autopublish_for_konyv($publish_to_discourse, $post_id, $post)
{
if ('konyv' === get_post_type($post)) {
return false; // Предотвратить автоматическую публикацию для типа записи 'konyv'
}
return $publish_to_discourse; // Разрешить обычное поведение для других типов записей
}