如何将描述栏添加到媒体库浏览器屏幕?

时间:2013-11-07 作者:Sean Henderson

我正在尝试显示上每个文件的描述media library browser screen. 我发现了一些添加文件名列的代码,但我正在尝试修改它,以便它显示描述字段而不是文件名。我不太清楚怎么做。将显示“说明”列,但实际上不显示每个文件的说明数据。我想我挂断了这条线:

echo substr(strrchr($meta[\'attachment_content\'], \'/\' ), 1);
但可能还有其他问题。

以下是完整代码:

function description_column($cols) {
    $cols["description"] = "Description";
    return $cols;
}

function description_value($column_name, $id) {
    $meta = wp_get_attachment_metadata($id);
    echo substr(strrchr($meta[\'attachment_content\'], \'/\' ), 1);
}

function description_column_sortable($cols) {
    $cols["description"] = "name";
    return $cols;
} 

function hook_new_media_columns() {
    add_filter(\'manage_media_columns\', \'description_column\');
    add_action(\'manage_media_custom_column\', \'description_value\', 10, 2);
    add_filter(\'manage_upload_sortable_columns\', \'description_column_sortable\');
}

add_action(\'admin_init\', \'hook_new_media_columns\');
谢谢你的帮助!

1 个回复
最合适的回答,由SO网友:Dave Romsey 整理而成

我想我挂断了这条线:

echo substr(strrchr($meta[\'attachment_content\'], \'/\' ), 1);

是的!请尝试此版本的description_value 功能:

function description_value($column_name, $id) {
    echo  get_the_content($id);
}
媒体项是附件类型的帖子。描述存储在post对象的post\\U内容属性中。通过执行print_r( get_post( $id ) ); 以防你想做其他专栏。顺便说一句wp_get_attachment_metadata 将允许您访问图像的EXIF数据,我认为您不希望在此处访问。

结束

相关推荐

添加wp_enQueue_media();导致问题

我想在主题选项页面中添加媒体上载程序。如果我在选项页面中添加以下代码,媒体上传器在那里工作正常,但它会在标准帖子的特色图片中产生问题。它不允许我从那里选择任何图像。是不是因为我用错误的方式添加了它?if ( ! did_action( \'wp_enqueue_media\' ) ){ wp_enqueue_media(); } 下面是我正在使用的上传功能:$(\'#upload_img\').click(function(){ wp.media.edit