我创建了一个名为listing
的帖子类型和一个随附的存档页面archive-listing.php
。当我导航到/listings
时,存档页面会正确加载。但是,我希望归档网址为/marketplace
。我正在定义下面的rewrite
属性,但它似乎不起作用。我错过了什么?
register_post_type("listing",
array(
"menu_icon" => "dashicons-tag",
"labels" => array(
"name" => __( "Listings" ),
"singular_name" => __("Listing")
),
"public" => true,
"has_archive" => true,
"rewrite" => array("slug" => "marketplace"),
"supports" => array("title", "editor"),
"taxonomies" => array("listing_status")
)
);
答案 0 :(得分:2)
当您注册新的自定义帖子类型时,您需要刷新永久链接。
为此,请转到设置 - > admin中的永久链接和点击保存(不需要更改)。
如果您要创建即将发布的内容,则可能需要以编程方式执行此操作。您需要通过挂钩插件激活或flush_rewrite_rules()
操作来运行after_switch_theme
。可以在此处找到文档:https://codex.wordpress.org/Function_Reference/flush_rewrite_rules
答案 1 :(得分:2)
您还可以使用:
'has_archive' => 'marketplace'
这样,存档页面的标签将是/ marketplace,而单个页面将是/ listing
答案 2 :(得分:1)
尝试更新设置 - >永久链接结构为默认值,然后更新为%% postname %%