【发布时间】:2015-12-22 06:57:49
【问题描述】:
这是一个猫窝。我有一个自定义帖子类型,称为“猫”。
然后我有一个可用性分类法,有“available”和“homed”。
一切正常……直到出现重复的猫名。例如,如果 Milo 一个月进来,那么一年后,另一个 Milo 进来。显然,WordPress 会创建 siteurl/cat/milo/,然后第二个,创建 siteurl /cat/milo-2/.
原来的 Milo 工作正常...只要输入号码,milo-2 就不起作用,并重定向到 404。
自定义帖子类型
function cat_post_type() {
$labels = array(
'name' => _x( 'Cats', 'Post Type General Name', 'text_domain' ),
'singular_name' => _x( 'Cat', 'Post Type Singular Name', 'text_domain' ),
'menu_name' => __( 'Cats', 'text_domain' ),
'name_admin_bar' => __( 'Cats', 'text_domain' ),
'parent_item_colon' => __( 'Parent Cat:', 'text_domain' ),
'all_items' => __( 'All Cats', 'text_domain' ),
'add_new_item' => __( 'Add Cat', 'text_domain' ),
'add_new' => __( 'New Cat', 'text_domain' ),
'new_item' => __( 'New Cat', 'text_domain' ),
'edit_item' => __( 'Edit Cat', 'text_domain' ),
'update_item' => __( 'Update Cat', 'text_domain' ),
'view_item' => __( 'View Cat', 'text_domain' ),
'search_items' => __( 'Search cats', 'text_domain' ),
'not_found' => __( 'No cats found', 'text_domain' ),
'not_found_in_trash' => __( 'No cats found in Trash', 'text_domain' ),
);
$args = array(
'label' => __( 'cats', 'text_domain' ),
'description' => __( 'All cats', 'text_domain' ),
'labels' => $labels,
'supports' => array( 'title', 'editor', 'thumbnail', 'comments'),
'taxonomies' => array( 'available', 'homed' ),
'hierarchical' => false,
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'menu_position' => 5,
'menu_icon' => 'dashicons-smiley',
'show_in_admin_bar' => true,
'show_in_nav_menus' => true,
'can_export' => true,
'has_archive' => true,
'exclude_from_search' => false,
'publicly_queryable' => true,
'capability_type' => 'post',
);
register_post_type( 'cat', $args );
}
分类法
// Hook into the 'init' action
add_action( 'init', 'cat_post_type', 0 );
function add_custom_taxonomies() {
// Add new "Locations" taxonomy to Posts
register_taxonomy('availability', 'cat', array(
// Hierarchical taxonomy (like categories)
'hierarchical' => true,
// This array of options controls the labels displayed in the WordPress Admin UI
'labels' => array(
'name' => _x( 'Cats Availability', 'taxonomy general name' ),
'singular_name' => _x( 'Cat Availability', 'taxonomy singular name' ),
'search_items' => __( 'Search Cat Availability' ),
'all_items' => __( 'All Availability' ),
'parent_item' => __( 'Parent Availability' ),
'parent_item_colon' => __( 'Parent Availability:' ),
'edit_item' => __( 'Edit Availability' ),
'update_item' => __( 'Update Availability' ),
'add_new_item' => __( 'Add New Availability' ),
'new_item_name' => __( 'New Availability' ),
'menu_name' => __( 'Availability' ),
),
// Control the slugs used for this taxonomy
'rewrite' => array(
'slug' => 'cats', // This controls the base slug that will display before each term
'with_front' => false, // Don't display the category base before "/locations/"
'hierarchical' => true // This will allow URL's like "/locations/boston/cambridge/"
),
));
}
add_action( 'init', 'add_custom_taxonomies', 0 );
我们认为这可能是数据库中的某些冲突...尝试重新保存永久链接、删除未使用的数据库条目、禁用所有插件...什么都没有。
手动将猫重命名为 milo_ 可以正常工作,但其中包含任何数字只会发回我的 404。
使用 Starkers 响应式主题,没有子主题。标准 htaccess。
我是否遗漏了一些明显的东西?
未完成的网站在这里 - 找到一只在其链接中带有数字的猫...http://catsnottingham.zellement.com/cats/homed/
【问题讨论】:
标签: php wordpress permalinks