我正在尝试获取“new post slug”的值(您可以编辑该位以自定义帖子的slug,但奇怪的是,它没有表单字段应有的“name”属性……更新必须在后台用ajax完成)
我被困在两件事上:
为什么帖子在保存草稿时不更新其post\\u名称(slug)?(不是自动保存,我的意思是点击“保存草稿”按钮)
如果我尝试手动执行此操作(使用save_post hook),如何获取“new post slug”的值(因为此字段在$\\u post var中不可用)。我想我可以试着做一个表单前提交jQuery附加到表单类型的事情,它会得到这个字段。
使用时wp_handle_upload_prefilter
要在上传文件名之前捕获文件名,不设置post\\u名称(slug):
add_filter(\'wp_generate_attachment_metadata\', \'check_images_file_to_slug\', 10, 2);
public function check_images_file_to_slug($image_info)
{
// Get the parent post ID, if there is one
if( isset($_GET[\'post_id\']) ) {
$post_id = $_GET[\'post_id\'];
} elseif( isset($_POST[\'post_id\']) ) {
$post_id = $_POST[\'post_id\'];
}
// Only do this if we got the post ID--otherwise they\'re probably in
// the media section rather than uploading an image from a post.
if(is_numeric($post_id)) {
/* @var @post WP_Post */
$post = get_post($post_id);
// Here $post->post_name (the slug), is empty for post-new.php (Adding new post)
}
}