我创建了一个为项目部分使用自定义帖子类型的网站。
我需要将帖子类型从“项目”更改为“画廊”,但由于我已经上传了一堆项目,我想知道如何以尽可能少的麻烦来做这件事(我不想重新做 - 上传所有图像和文字等)
我找到一些文章告诉我做一个SQL查询来重命名帖子
UPDATE `wp_posts`
SET `post_type` = '<new post type name>'
WHERE `post_type` = '<old post type name>';
这是分类法
UPDATE `wp_term_taxonomy`
SET `taxonomy` = '<new taxonomy name>'
WHERE `taxonomy` = '<old taxonomy name>';
我只是不知道我应该用这个代码做什么。如果它是SQL,我是在php文件中运行它还是有某种“终端”可以在我的网站的WP仪表板或cPanel中找到?
以下是我创建帖子类型的方式(不确定这是否有帮助)
function create_my_post_types() {
//projects
register_post_type(
'Projects', array('label' => 'Projects','description' => '','public' => true,'show_ui' => true,'show_in_menu' => true, 'menu_position' => 8,'capability_type' => 'post','hierarchical' => false,'rewrite' => array('slug' => '','with_front' => '0'),'query_var' => true,'exclude_from_search' => false,'supports' => array('title','editor','thumbnail'),'taxonomies' => array('category',),'labels' => array (
'name' => 'Projects',
'singular_name' => 'Project',
'menu_name' => 'Projects',
'add_new' => 'Add New Project',
'add_new_item' => 'Add New Project',
'edit' => 'Edit',
'edit_item' => 'Edit Project',
'new_item' => 'New Project',
'view' => 'View Project',
'view_item' => 'View Project',
'search_items' => 'Search Projects',
'not_found' => 'No Projects Found',
'not_found_in_trash' => 'No Projects Found in Trash',
'parent' => 'Parent Projects',
),) );
} // end create_my_post_types
答案 0 :(得分:2)
最好直接使用插件:
Convert Post Types
这是一个实用程序,用于将大量帖子或页面转换为自定义帖子类型(反之亦然)。您可以将转化限制为单个类别中的帖子或特定页面的子项。您还可以指定新的分类术语,这些术语将添加到帖子的现有术语中。
所有转换过程都在函数bulk_convert_posts()
中进行,使用核心函数wp_update_post
和wp_set_post_terms
。 IMO,您应该使用WordPress函数进行转换,在 MySQL命令之前terms
函数中发生了相当多的步骤。
执行数据库备份,然后再继续执行此类操作。 的
答案 1 :(得分:1)
如果您有CPanel访问权限,则可以查找PHPMyAdmin并在那里运行SQL代码。
转到PHPMyAdmin。
从左侧选择您的wordpress数据库。
推荐:首先备份数据库,方法是转到顶部的导出标签并快速导出。
从顶部标签中选择“SQL”。
在巨大的textarea中复制SQL查询,然后单击Go。
希望它有效!