1

好的,我已经制作了自定义帖子类型,它们工作正常(代码如下所示)。但我似乎无法为其创建默认页面,例如 example.com/php < 如何获取该页面。我可以制作像 example.com/php/some page/ 这样的页面,它们工作正常。

$labels = array(
'name' => _x('PHP', 'post type general name'),
'singular_name' => _x('PHP', 'post type singular name'),
'add_new' => _x('Add New', 'PHP Page'),
);
$args = array(
'labels' => $labels,
'taxonomies' => array('post_tag'),
'public' => true,
'publicly_queryable' => true,
'show_ui' => true, 
'show_in_menu' => true, 
'query_var' => true,
'rewrite' => true,
'capability_type' => 'post',
'has_archive' => true, 
'hierarchical' => true,
'menu_position' => null,
'supports' => array( 'title', 'editor', 'page-attributes')
 ); 
register_post_type('php',$args);

谢谢!

4

1 回答 1

0

我不确定在 WordPress 中是否有一种直观的方法可以做到这一点(您可能想在https://wordpress.stackexchange.com/上查看)。但是,我将解释我以前是如何做到这一点的。

php.php使用您希望“默认”页面执行的任何操作创建一个新的页面模板,例如。通常,我包含一个仅从我的自定义帖子类型中提取的循环。

<?php
/*
Template Name: PHP Default Page
*/
// ...
query_posts("post_type=php");
// ...
?>

然后,在 WordPress 仪表板中创建一个标题为“PHP”的页面(因此它将具有永久链接,http://example.com/php

于 2012-09-02T21:32:49.747 回答