为什么后弹丸不会保存到草稿中?

时间:2015-04-04 作者:gvanto

我正在尝试获取“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)
    }
}

2 个回复
SO网友:Kevin

我遇到了类似的问题。我必须移除remove_meta_box(\'slugdiv\', [\'post\', \'page\'], \'normal\'); 从我的代码。删除slugdiv元框时,WP的slug编辑框会停止工作。

SO网友:user28206

创建新帖子时(无论状态如何)post_name 即slug保存到WP\\u Post对象。

你可以发射一个wp_ajax_$youraction() 在后端获取post对象并返回slug。

结束

相关推荐

WP_QUERY:如何在自定义分类中检索当前术语slug?

使用WP Types Plugin, 我设置了一个自定义post类型(slug:portfolio), 具有自定义分类法(slug:portfolio-category).自定义分类法有三项(slug:group1, group2, group3) 组织公文包帖子。在每个公文包页面上,我显示了来自同一分类术语的3篇相关帖子,按slug过滤:global $post; $term_list = wp_get_post_terms($post->ID, \'portfolio-cate