将媒体列添加到编辑POST屏幕

时间:2011-02-16 作者:Ann

我正在尝试在“编辑帖子”屏幕中添加一列,显示任何连接的媒体。我发现这段代码可以用标签来完成,但不知道如何将其改为制作媒体附件。

//add media column to edit post screen
add_action(\'media_buttons_context\',\'zg_post_buttons\');
function add_tag_column($posts_columns) {

 // Add a new column
$posts_columns[\'att_tag\'] = _x(\'Tags\', \'column name\');
return $posts_columns;
}

function manage_attachment_tag_column($column_name, $id) {
switch($column_name) {
case \'att_tag\':
$tagparent = "upload.php?";
$tags = get_the_tags();
if ( !empty( $tags ) ) {
$out = array();
foreach ( $tags as $c )
$out[] = "<a href=\'".$tagparent."tag=$c->slug\'> " .   
esc_html(sanitize_term_field(\'name\', $c->name, $c->term_id, \'post_tag\', \'display\')) .  
"</a>";
echo join( \', \', $out );
} else {
_e(\'No Tags\');
}
break;
default:
break;
}

1 个回复
SO网友:Bainternet

您可以创建一列post\\u缩略图,如下所示:

// ADDING THUMBNAIL TO EDIT SCREEN
if ( !function_exists(\'fb_AddThumbColumn\') && function_exists(\'add_theme_support\') ) {

    // for post and page
    add_theme_support(\'post-thumbnails\', array( \'post\', \'page\' ) );

    function fb_AddThumbColumn($cols) {

        $cols[\'thumbnail\'] = __(\'Thumbnail\');

        return $cols;
    }

    function fb_AddThumbValue($column_name, $post_id) {

        $width  = (int) 100;
        $height = (int) 100;

        if ( \'thumbnail\' == $column_name ) {
           // thumbnail of WP 2.9
            $thumbnail_id = get_post_meta( $post_id, \'_thumbnail_id\', true );
            // image from gallery
            $attachments = get_children( array(\'post_parent\' => $post_id, \'post_type\' => \'attachment\', \'post_mime_type\' => \'image\') );
            if ($thumbnail_id)
                $thumb = wp_get_attachment_image( $thumbnail_id, array($width, $height), true );
            elseif ($attachments) {
                foreach ( $attachments as $attachment_id => $attachment ) {
                    $thumb = wp_get_attachment_image( $attachment_id, array($width, $height), true );
                }
            }
            if ( isset($thumb) && $thumb ) {
                echo $thumb;
            } else {
                echo __(\'None\');
            }
        }
    }

    // for posts
    add_filter( \'manage_posts_columns\', \'fb_AddThumbColumn\' );
    add_action( \'manage_posts_custom_column\', \'fb_AddThumbValue\', 10, 2 );

    // for pages
    add_filter( \'manage_pages_columns\', \'fb_AddThumbColumn\' );
    add_action( \'manage_pages_custom_column\', \'fb_AddThumbValue\', 10, 2 );
}
要将此列添加到自定义帖子类型,只需将您的帖子类型添加到

add_theme_support(\'post-thumbnails\', array( \'post\', \'page\',\'mycustom\' ) );
和操作和过滤器挂钩

add_filter( \'manage_mycustom_posts_columns\', \'fb_AddThumbColumn\' );
add_action( \'manage_mycustom_posts_custom_column\', \'fb_AddThumbValue\', 10, 2 );
希望这有帮助

结束

相关推荐

User-based media gallery

我正在建立一个同时使用WordPress和BuddyPress的网站,我希望建立一个自定义部分,用户可以上传作品,人们可以对其进行评论/评分。我浏览了各种不同的选项,但似乎使用自定义的帖子类型,然后允许成员提交内容是最好的选择。这是更好的方法吗?还是你认为帖子类型是最好的选择。要了解其所需的功能类型,请执行以下操作:http://dribbble.com/其想法是将图像作为类似域的URL。com/designs/my-awesome-work-2201/当查看成员档案时,您将能够查看他们的最新作品等,因此