Using with Custom Post Type
-
I have a custom post type of “monthly bulletin” that I need to send to subscribers.
I’ve added the code below into my functions.php file, and tested it by publishing a new bulletin, but the email notification doesn’t come through.Any ideas on what I am missing?
function my_post_types($types) { $types[] = 'monthlybulletin'; return $types; } add_filter('s2_post_types', 'monthlybulletin');I’ve tested the plugin with a standard post and that works fine.
Thanks in advance.
-
Are these ‘pending’ posts actually created in the database with a status of ‘pending’? Are they visible on the site while pending?
@mattyrob Yes, indeed, they are saved in that way, and no, they are not visible to non-admins at least :).
Okay, forgive my ignorance then – but why do you want to send emails for posts that most users are unable to see?
@mattyrob It’s quite simple. It is a corporate site where users have a page where they can ask questions. Since there are different areas of expertise, different moderators need to be notified once a question is being posted in their area of expertise, i.e. category of the custom post type ;). Until someone reviews and answers/comments the question, it should stay invisible.
Okay, I think I understand the set up better now.
I’ve also just noticed a bug or two in you code above. Firstly you are hooking to the wrong filter (it should be s2_post_statuses) and you are adding the ‘pending’ status to an array called $types but returning $statuses unchanged, your code needs to be:
function my_post_statuses($statuses) { $statuses[] = 'pending'; return $statuses; } add_filter('s2_post_statuses', 'my_post_statuses');@mattyrob Oh, I took that from your site 1:1 (except for the pending status), so that is where the mistake came from :). Still it’s not registering frontend posts from the Q&A plugin, bummer :(.
Thanks for pointing that out – the API documentation is now fixed.
Are you using a plugin for ‘frontend’ editing? I suspect it’s a conflict there. Does it work when creating pending posts from the backend?
@mattyrob
Yes, more or less, it is the plugin itself (DW Question & Answer, via https://wordpress.org/plugins/dw-question-answer/) that lets users create questions on the frontend and saves them as pending posts of a custom post type of theirs. I checked the database plus the backend: They are saved as pending posts, and once I let them save as published posts notifications work, though everybody subscribed to any custom taxonomy term of that post type (the ‘categories’ that are non-hierarchical as reported) is getting notifications on every question being asked, even in the wrong category/term.I’ve looked briefly at that plugin, it registers 2 custome post types:
‘dwqa-question’ and ‘dwqa-answer’It also registers 2 custom taxonomies, one like categories and one like tag (i.e one hierarchical the other not)
‘dwqa-question_category’ and ‘dwqa-question_tag’Perhaps you need to use these to link into Subscribe2 to get things working.
This is what I registered, and it should be just fine, though it isn’t:
// Subscribe2 - add post type and taxonomy plus post status function my_post_types($types) { $types[] = 'dwqa-question'; return $types; } add_filter('s2_post_types', 'my_post_types'); function my_taxonomy_types($taxonomies) { $taxonomies[] = 'dwqa-question_category'; return $taxonomies; } add_filter('s2_taxonomies', 'my_taxonomy_types'); function my_post_statuses($statuses) { $statuses[] = 'pending'; return $statuses; } add_filter('s2_post_statuses', 'my_post_statuses');However, the one you thought to be hierarchical isn’t hierarchical, unfortunately. The category behaves just like tags, I detected that from the backend URL
The categories show up in the backend, I can tick them for specific users, but they only trigger notifications a) when I don’t let questions be moderated, meaning when I don’t let them be saved as pending, and b) universally to anyone who is subscribed to ANY category of that CPT.
On digging further into the code, DW Question & Answer treats each new entry as a ‘page’ not a ‘post’.
Subscribe2 does not expect pages to behave in this way as core WordPress pages don’t allow assignment of a category.
Sadly, I suspect the two plugins are not 100% compatible.
Hi @mattyrob,
that is something I wouldn’t have come up with on my own. It sounds really weird that the author uses a ‘page’ format – are there any advantages towards that?
Too bad to hear there is no solution to my problem and your plugin cannot help me out on this matter – but thanks so much for your continuing support!
It is weird and there are no advantages I can think of – maybe that’s a question to ask the author of DW Question & Answer.
One solution is to hack the code yourself and change the post-type to post rather than page – if you feel comfortable hacking code that is.
But, you’d need to make sure to avoid updating the plugin or to re-apply the hack each time.
The changes would need to be made in the dw-question-answer.php (and perhaps other places – I haven’t looked.
@mattyrob Oh well, that sounds like some real dirty and unproductive way of handling it. Actually something like a hook would be fine, but I doubt it’s possible with something so basic for the plugin. Really strange, and I fear they won’t change it due to the fact that they need to handle current users of the plugin. BUMMER!
The topic ‘Using with Custom Post Type’ is closed to new replies.