添加到导航自定义类型帖子WordPress

时间:2018-09-21 14:13:23

标签: php wordpress

我正在尝试创建一个由帖子自定义类型组成的菜单,但是它们不显示在选择菜单中。 我可以忘记自定义类型的哪些属性吗?

我的代码:

//Создание страницы новостроек

add_action( 'init', 'register_house_page' ); // Использовать функцию только внутри хука init

function register_house_page() {
    $labels = array(
        'name' => 'Новостройки КРЕО',
        'singular_name' => 'Новостройки', // админ панель Добавить->Функцию
        'add_new' => 'Добавить новостройку',
        'add_new_item' => 'Добавить новую новостройку', // заголовок тега <title>
        'edit_item' => 'Редактировать новостройку',
        'new_item' => 'Новая новостройка',
        'all_items' => 'Все новостройки',
        'view_item' => 'Просмотр новостройки на сайте',
        'search_items' => 'Искать новостройку',
        'not_found' =>  'Новостроек не найдено.',
        'not_found_in_trash' => 'В корзине нет новостроек.',
        'menu_name' => 'Новостройки КРЕО' // ссылка в меню в админке
    );
    $args = array(
        'labels' => $labels,
        'public' => true,
        'show_ui' => true, // показывать интерфейс в админке
        'has_archive' => true, 
        'menu_icon' => 'dashicons-admin-multisite', // иконка в меню
        'menu_position' => 21, // порядок в меню
        'supports' => array( 'title', 'editor'),
        'taxonomies'          => array(),
        'has_archive'         => false,
        'rewrite'             => true,
        'query_var'           => true,
        'show_in_nav_menus'   => true, // зависит от public
    );
    register_post_type('kreo_house', $args);
}

我有4个帖子 image1

但在菜单中看不到

image2

1 个答案:

答案 0 :(得分:-1)

我不确定当您说要创建与自定义帖子类型相关的菜单时,是在仪表板中还是直接在页面中,而是基于您的代码,我假设您正在尝试在仪表板上显示您的自定义帖子类型,您可以使用与此类似的内容

add_action( 'init', 'create_post_type_new_post' );
function create_post_type_new_post() {
    register_post_type( 'new-post',
        array(
            'labels' => array(
                'name' => __( 'Новостройки КРЕО' ),
                'singular_name' => __( 'Новостройки КРЕО' )
                //more options here
            ),
            'public' => true,
            'has_archive' => true,
            'rewrite' => array('slug' => 'new-post'),
            'supports' => array('title', 'editor'),
            'menu_icon'   => 'dashicons-admin-multisite',
            //more options here
        )
    );
}

我通常将上述代码添加到一个单独的文件中,并将其导入到functions.php文件中

   $file = TEMPLATEPATH."/inc/your-name-file.php";
   if(file_exists($file)){
     require_once($file);
   }

我希望这可以对您有所帮助!

更新: 如果要在菜单或网站中显示自定义帖子类型,则需要在菜单部分中创建一个自定义链接,链接到存档

如果为自定义帖子类型启用了存档,则可以在网站上显示它们。自定义帖子类型存档页面的URL应该如下所示:

http://yoursite.com/post-type-slug/

您可以将每种自定义帖子类型的存档链接放入导航菜单。

您需要访问外观>菜单页面。 您需要单击自定义帖子的名称 您将看到帖子类型档案的一个选项。

如果在此之后您仍然没有看到菜单选项,请尝试以下操作:

启用添加到您的wp-config.php中的调试选项,并验证是否出现一些错误

define('WP_DEBUG', true);

有时自定义帖子类型名称的长度会导致错误