我想知道是否可能需要WordPress帖子中的内容。我不希望用户能够在没有内容的情况下保存帖子。你知道我该怎么办?
谢谢!
答案 0 :(得分:0)
首先将自定义脚本添加到管理操作
add_action( 'admin_enqueue_scripts', array($this, 'my_admin_scripts') );
function my_admin_scripts($page) {
global $post;
if ($page == "post-new.php" OR $page == "post.php") {
wp_register_script( 'my-custom-admin-scripts', plugins_url('/js/my-admin-post.js',dirname(__FILE__)), array('jquery', 'jquery-ui-sortable' ) , null, true );
wp_enqueue_script( 'my-custom-admin-scripts' );
}
}
将JQuery所需的属性放在下一个js代码中(/js/my-admin-post.js):
// JavaScript Document
jQuery(document).ready(function($) {
$('#title').attr('required', true);
$('#content').attr('required', true);
$('#_my_custom_field').attr('required', true);
});
答案 1 :(得分:0)
您无法阻止使用PHP保存帖子,但是如果没有内容,您可以强制帖子进入草稿状态:
function bb_47052258_check_post_status( $post_id ){
// Return if this is a revision post
if ( wp_is_post_revision( $post_id ) ){
return;
}
// Get the post
$post = get_post( $post_id );
// (Optional) Return if the post is not a "post" post-type
if( $post->post_type != 'post'){
return;
}
// Return if the post content is not an empty string
if( $post->post_content !== '' ){
return;
}
// Remove this action to prevent an infinite loop
remove_action('save_post', 'bb_47052258_check_post_status');
// Update the post status
wp_update_post( array(
'ID' => $post->ID,
'post_status' => 'draft'
) );
// Add this action back again
add_action('save_post', 'bb_47052258_check_post_status');
}
// Initially add the action
add_action('save_post', 'bb_47052258_check_post_status');