我有一个自定义帖子类型, 它不使用任何WP内置支持(例如”
标题”
, “
编辑”
, “
作者”
, “
缩略图”
, “
摘录”
, “
评论”
)。相反, 我使用自己的metabox发布CPT。现在, 在创建CPT并发布后, 当我单击View Post时, 它会导航到以auto-draft结尾的URL, 在第二个CPT上为auto-draft-2等, 依此类推
http:// localhost / movies / auto-draft /如你所见, 这仍在导航以发布默认标题, 而不是发布自定义元框。如何更新它以使用特定的元框, 例如$ name?
$we_movieMetas = get_post_custom( $post->
ID );
$name = isset( $we_movieMetas['name_box'] ) ? esc_attr( $we_movieMetas['name_box'][0] ) : '';
$boxOffice = isset( $we_movieMetas['boxOffice_box'] ) ? esc_attr( $we_movieMetas['boxOffice_box'][0] ) : '';
#1你必须通过save_post-hook阻止自动保存(@see https://developer.wordpress.org/reference/hooks/save_post/)。
首先, 你必须确保节省的是你的cpt。然后你可以通过wp_is_post_autosave检查它是否是自动保存。你也可以通过功能wp_is_post_revision检查它是否是正在还原的修订版(仅在cpt支持的情况下)。
你也可以通过如下代码段注销默认的保存元框:
function custom_metaboxes(){
/* Remove the publishing metabox */
remove_meta_box( 'submitdiv', 'your-cpt', 'side' );
...
}
add_action('add_meta_boxes', 'custom_metaboxes');
【如何在帖子URL中使用自定义元字段代替CPT标题()】对于原始的保存框, 请查看wp-admin / includes / meta-boxes.php并搜索post_submit_meta_box。
推荐阅读
- 如何在页面模板(WordPress)中使用获取请求
- 如何在WordPress 5.0中使用经典编辑器
- 如何使用子主题更新WordPress主题文件
- 如何使用更新查询更新WordPress中的表值()
- 将产品添加到购物车后如何更新微型购物车
- 神策数据(从技术视角看,如何更多更好更快地实施 A/B 试验)
- 云计算奇妙学习之旅第六期(各级别RAID详解)
- MDT2013报错--FAILURE(5616):15299:Verify BCDBootEx
- MPU(鸿蒙轻内核的任务栈的溢出检察官)