I’m wondering if it’s possible to default the new topics from Wordpress to “hidden” or something, until somebody bothers to comment on them. We put up a lot of posts, and some of them will generate significant discussion, but others not so much. I’m worried about having Discourse cluttered with a lot of posts that have no activity.
I see a similar question here which says it isn’t possible:
However, I swear I saw something like this option somewhere in the past. Perhaps now I’m just missing the setting?
It’s hidden in the Advanced Options of the Discourse meta-box. The setting you are looking for is ‘Publish as Unlisted Topic.’ If you also configure the Sync Comment Data Webhook, topics will be listed when a comment is added on Discourse.
I’m assuming you mean “listed” (ie unhidden)? And why would I need to sync comment data back to Wordpress? If the comments are being posted in Discourse, shouldn’t Discourse display the topic? Or is it really the Wordpress plugin that is changing the listing back in Discourse?
The reason the webhook needs to be enabled to automatically list topics when a comment is added is because the topic’s status is changed through the API.
For those who are confused, the “Discourse meta-box” that @simon mentioned is only displayed when creating/editing a post in Wordpress. This is not a setting in the plugin, but rather something that is able to be set only on a per-post basis. That’s why I couldn’t find it in the settings.
Edited to add: This particular setting is only available when creating a post in Wordpress, or when editing a post that does not yet have a Discourse topic associated with it. If you want to unlist a topic in Discourse that already exists, just go to Discourse and make it unlisted.