Я пытаюсь создать плагин, который изменяет страницу «Добавить новое сообщение», поэтому в поле «Видимость» по умолчанию указано «Приватное»:
Status: Draft
Visibility: **Private**
Publish immediately
[Publish]
... в отличие от того, что WordPress обычно предполагает:
Status: Draft
Visibility: **Public**
Publish immediately
[Publish]
В настоящее время я использую фильтр "wp_insert_post_data", и это позволяет мне изменять любые сообщения с post_status "auto-draft" на "private". Хотя это работает, есть непреднамеренный побочный эффект: изменение post_status на «private», по-видимому, автоматически публикует сообщение, изменяя кнопку в редакторе на «Update». Кроме того, если пользователь сохранит данные перед тем, как указать заголовок, публикация будет опубликована с заголовком «Авто-черновик».
Можно ли как-то просто изменить Visibility на Private по умолчанию, чтобы не публиковать публикацию автоматически, и изменить кнопку на «Обновить»? В ванильном WordPress пользователи могут вручную изменить видимость на Приватный, и кнопка остается как Публикация ... Мне просто нужно добиться этого с помощью плагина. Я также хочу убедиться, что пользователь может выбрать «public», если он того пожелает.
Спасибо!
из плагина; использует действие 'post_submitbox_misc_actions' и некоторый запрос, чтобы поймать пользовательскую форму публикации: http://wordpress.org/extend/plugins/private-post-by-default/
источник
Правильный способ автоматически пометить сообщение как личное - это сделать с помощью фильтра wp_insert_post_data. Это очень просто:
источник