Intereting Posts
«Перенаправлено слишком много раз» Я хотел бы добавить значок fa перед ссылкой на боковой панели «недавнего сообщения» генерировать пользовательскую постоянную ссылку на основе настраиваемого поля Как подключить 2 веб-сайта WordPress? Использование current_user_can () Получить смежную запись по тегам Как использовать текстовый редактор wordpress на php-странице Как запрашивать комментарии только для текущего сообщения? Как вы создаете блог WordPress с несколькими авторами, чтобы позволить что-то вроде «вики-страницы» в StackExchange? Сообщения против страниц WP_Query-фильтр и порядок по мета-упорядочению по неверной объединенной таблице Лучший способ создать меню из 500 пунктов добавить пробелы и символы в paginate_links Помощь в сортировке и хранении данных на WordPress Пользовательский короткий код + запрос и заказ сообщений с использованием нескольких дополнительных пользовательских флажков

Изменен параметр register_post_type () для WordPress 4.0

Я знаю, что легко обвинить обновление системы, а не ошибку пользователя, но я подумал, что я бы дважды проверял, если кто-то еще сталкивался с той же проблемой!

Следующий register_post_type () работал с несколькими обновлениями, но совсем недавно при обновлении 4.0 пользовательский тип сообщения «исчез» из меню боковой панели wp-admin, а также не отображается на сайте.

Нужно ли мне обновлять следующее?

function create_post_type() { register_post_type( 'rsf_properties', array( 'labels' => array( 'name' => __( 'Properties' ), 'singular_name' => __( 'properties' ) ), 'public' => true, 'menu_position' => 2, 'rewrite' => false, 'supports' => array('title', 'editor', 'thumbnail') ) ); } add_action( 'init', 'create_post_type' ); 

Отвечая на ваш вопрос буквально – нет, серьезных изменений кода в register_post_type() между 3,9 и 4.0 не было.

Это разность для изменений (из git diff origin/3.9 -- src/wp-includes/post.php ):

  function register_post_type( $post_type, $args = array() ) { global $wp_post_types, $wp_rewrite, $wp; @@ -1235,8 +1333,10 @@ function register_post_type( $post_type, $args = array() ) { $post_type = sanitize_key( $post_type ); $args->name = $post_type; - if ( strlen( $post_type ) > 20 ) + if ( strlen( $post_type ) > 20 ) { + _doing_it_wrong( __FUNCTION__, __( 'Post types cannot exceed 20 characters in length' ), '4.0' ); return new WP_Error( 'post_type_too_long', __( 'Post types cannot exceed 20 characters in length' ) ); + } // If not set, default to the setting for public. if ( null === $args->publicly_queryable ) @@ -1262,7 +1362,7 @@ function register_post_type( $post_type, $args = array() ) { if ( null === $args->exclude_from_search ) $args->exclude_from_search = !$args->public; - // Back compat with quirky handling in version 3.0. #14122 + // Back compat with quirky handling in version 3.0. #14122. if ( empty( $args->capabilities ) && null === $args->map_meta_cap && in_array( $args->capability_type, array( 'post', 'page' ) ) ) $args->map_meta_cap = true; @@ -1337,6 +1437,7 @@ function register_post_type( $post_type, $args = array() ) { add_permastruct( $post_type, "{$args->rewrite['slug']}/%$post_type%", $permastruct_args ); } + // Register the post type meta box if a custom callback was specified. if ( $args->register_meta_box_cb ) add_action( 'add_meta_boxes_' . $post_type, $args->register_meta_box_cb, 10, 1 ); @@ -1357,7 +1458,7 @@ function register_post_type( $post_type, $args = array() ) { * @since 3.3.0 * * @param string $post_type Post type. - * @param array $args Arguments used to register the post type. + * @param object $args Arguments used to register the post type. */ do_action( 'registered_post_type', $post_type, $args ); @@ -1365,7 +1466,7 @@ function register_post_type( $post_type, $args = array() ) { }