0

编辑帖子时,我正在向“精选图片”元框添加选项。从元框中,我需要访问帖子 ID。这在 post.php 首次加载时工作正常。但是,如果我“选择特色图片”或“删除特色图片”,则在元框重新加载时帖子 ID 会更改(变为静态主页 ID)。

下面是一些将在特色图片框中显示帖子 ID 的代码:

add_filter( 'admin_post_thumbnail_html', 'add_options_to_featured_image' );
function add_options_to_featured_image( $html ){
    global $post;

    $html .= '<label>Post '.$post->ID.'</label>';

    return $html;
}

这些是重现我所看到的步骤:

  1. 编辑帖子
  2. 注意post ID是正确的(例如7)
  3. 点击“选择特色图片”并选择一张图片
  4. 元框刷新以显示选择图像
  5. 注意帖子ID现在不正确(静态首页的ID)

我的问题:我怎样才能始终如一地从特色图像元框中获取正在编辑的页面的 ID?我想尽量避免使用 javascript。

4

1 回答 1

1

如何始终从特色图像元框中获取正在编辑的页面的 ID?

将 设置function为接受两个参数,如下所示:

add_filter( 'admin_post_thumbnail_html', 'add_options_to_featured_image', 10, 2 );
function add_options_to_featured_image( $html, $post_id ){
    $html .= '<label>Post '.$post_id.'</label>';

    return $html;
}

有关更多信息,请参阅https://developer.wordpress.org/reference/hooks/admin_post_thumbnail_html/

于 2018-03-02T04:27:10.253 回答