Using the ‘draft_to_publish’ hook (post status transition)
You certainly have the right hook, but keep in mind that you are hooking your functionality specifically to the draft_to_publish action, i.e. to the specific case of a post-object pre-existing in the database with draft status being updated to publish. Note that this action ignores drafts which are automatically saved by WordPress when a new … Read more