Intereting Posts
Для лучшей производительности БД я должен сериализовать все параметры темы вместе или по типу? Как добавить ссылки на названия виджетов? WordPress переписать url помощь нужна Многоязычные постоянные ссылки для установки вложенных папок Как сохранить настройки пользовательской страницы продукта вкладки в стороне администратора в базе данных? Функция для получения изображения из медиа-библиотеки WordPress: заставить пользователей сменить пароль при первом входе в систему Action hook для настраиваемого изменения налога Список URL-адресов WordPress по умолчанию Должен ли я хранить внешние данные API в моей базе данных WP или сохранять его как переходный? Помогите с этим настраиваемым полем, если поле не установлено, ничего не отображает как создать дополнительную миниатюру сообщения с объединением изображения значка? WordPress Permalinks на Mac OSX Server 5 (El Capitan) Подробное объяснение полей базы данных WordPress и списка метатегов Получать сообщения, упорядоченные метаданными

Показать окно только для редактирования

Я создал видео-пользовательский тип сообщения, а на странице редактирования я разместил мета-поле, где я показываю короткий код, связанный с этим сообщением, чтобы сделать его проще для пользователя.

Тем не менее, я хочу, чтобы шорт-код и / или ящик отображались только на странице редактирования сообщений, а не на новой странице сообщений, где это еще не актуально – что я здесь ищу? У меня есть это придирчивое чувство, что я сделал это / что-то подобное раньше, но просто не могу придумать, что искать.

ETA: Это то, что я сделал с помощью помощи, которую я получил ниже, может быть полезен и для кого-то еще:

add_action( 'add_meta_boxes', 'my_video_add_custom_box' ); function my_video_add_custom_box() { if (get_post_status( $post->ID ) != 'auto-draft') { add_meta_box( 'my_video_shortcode_custom_box', __( 'Shortcode', 'my_video' ), 'my_video_shortcode_custom_box', 'my_video', 'side', 'default' ); } } 

Работает как шарм, спасибо!

Solutions Collecting From Web of "Показать окно только для редактирования"

Проверьте состояние сообщения, используя get_post_status ($ ID), а затем отобразите html-код в соответствии со статусом. (т. е.) Вы можете просто использовать условие else в вашем файле шаблона php для отображения различного контента на основе состояния сообщения. Я думаю, что новые сообщения имеют статус авто-черновика. get_post_status codex должен быть полезен.

Ваше решение, неправильно отправленное как редактирование вопроса, дайте мне «неопределенную переменную» Notice для $post . Он работает, потому что цепочка вызовов функций, вызванных get_post_status конечном счете, если все остальное не работает, принимает global переменную $post .

Лучшим решением было бы перевести условное из регистрационной функции и в обратный вызов, которому передается переменная $post в ядре WordPress.

 add_action( 'add_meta_boxes', 'my_video_add_custom_box' ); function my_video_add_custom_box() { add_meta_box( 'my_video_shortcode_custom_box', __( 'Shortcode', 'my_video'), 'my_video_shortcode_custom_box', 'my_video', 'side', 'default' ); } function my_video_shortcode_custom_box($post) { if (get_post_status( $post->ID ) != 'auto-draft') { // your box code } }