更改 slug 时存档-post_type.php 中断

Posted

技术标签:

【中文标题】更改 slug 时存档-post_type.php 中断【英文标题】:archive-post_type.php breaking when slug is changed更改 slug 时存档-post_type.php 中断 【发布时间】:2015-07-20 08:03:53 【问题描述】:

所以我有一个名为“事件”的自定义帖子类型,只要 slug 与自定义帖子类型名称相同,它就可以正常工作。即http://website.com/events。 Wordpress 很好地利用了 archive-events.php

但是,问题是如果我将页面层次结构更改为 http://website.com/news/events 。现在 Wordpress 不再使用 archive-events.php

问题可能出在重写规则中吗?我尝试了一些更改,但似乎没有任何解决办法。代码如下:

//* Add Events post type...
$event_labels = array( 
    'name'                  => _x( 'Events', 'Post Type General Name', 'events' ),
    'singular_name'         => _x( 'Event', 'Post Type Singular Name', 'events' ),
    'all_items'             => __( 'All Events', 'events' ),
    'add_new'               => __( 'Add New', 'events' ),
    'add_new_item'          => __( 'Add New Event', 'events' ),
    'edit_item'             => __( 'Edit Event', 'events' ),
    'new_item'              => __( 'New Event', 'events' ),
    'view_item'             => __( 'View Event', 'events' ),
    'search_items'          => __( 'Search Events', 'events' ),
    'not_found'             => __( 'No Event found', 'events' ),
    'not_found_in_trash'    => __( 'No Events found in Trash', 'events' ),
    'parent_item_colon'     => __( 'Parent Event:', 'events' ),
    'menu_name'             => __( 'Events', 'events' ),
);

$event_args = array( 
    'labels'                => $event_labels,
    'hierarchical'          => false,
    'description'           => 'Events.',
    'supports'              => array( 'title', 'editor', 'thumbnail' ),
    'public'                => true,
    'show_ui'               => true,
    'show_in_menu'          => true,
    'menu_icon'             => 'dashicons-calendar',
    'menu_position'         => 5,
    'show_in_nav_menus'     => true,
    'publicly_queryable'    => true,
    'exclude_from_search'   => false,
    'has_archive'           => true,
    'query_var'             => 'events',
    'can_export'            => true,
    'rewrite'               => array( 
        'slug'              => 'news/events', 
        'with_front'        => true,
        'feeds'             => true,
        'pages'             => true
    ),
    'capability_type' => 'post'
);

register_post_type( 'events', $event_args );

任何建议将不胜感激!

【问题讨论】:

他们的页面模板依赖于蛞蝓... 【参考方案1】:

嗯。更改 slug 后,我需要刷新永久链接以使其发生。问题现已解决,谢谢!

【讨论】:

以上是关于更改 slug 时存档-post_type.php 中断的主要内容,如果未能解决你的问题,请参考以下文章

markdown 获取帖子或存档页面的类别名称/ slug / id。

使用自定义帖子名称自动创建一个链接,该链接返回到自定义帖子存档页面(包括主题 slug)

使用 CPT slug 修改自定义分类 slug

在商店和存档页面中选择变量时如何更改产品图片?

TYPO3 Slug:更改 fallbackCharacter

在函数文件中更改自定义帖子类型 slug