创建一个metabox以上传多个图像

时间:2011-01-12 作者:agileapricot

是否可以制作一个将多个图像附加到帖子的元框?

4 个回复
最合适的回答,由SO网友:EAMann 整理而成

这完全取决于你所说的“附加”是什么意思

每个WordPress帖子都可以有多个媒体附件-照片、文档等。您可以使用内置上传器上传这些内容,它们都会标记为“已附加”到特定的帖子ID。

您可以稍后在其他地方以编程方式参考这些内容。例如,以下代码将列出特定帖子的所有附件(代码来自Snipplr):

$args = array(
    \'post_type\' => \'attachment\',
    \'numberposts\' => null,
    \'post_status\' => null,
    \'post_parent\' => $post->ID
);
$attachments = get_posts($args);
if ($attachments) {
    foreach ($attachments as $attachment) {
        echo apply_filters(\'the_title\', $attachment->post_title);
        the_attachment_link($attachment->ID, false);
    }
}
所有这些功能都可以通过new post屏幕上“Upload/Insert”(上传/插入)最右侧的默认“Add Media”(添加媒体)按钮访问。添加一个图像后,可以再次单击“选择文件”,然后上载第二个图像。然后是第三个。然后是第四个。你想要多少就有多少。

这些图片中的每一张都将“附加”到帖子。。。即使它们没有插入到内容中。

SO网友:Philip

这是一个完整的教程,源文件完全可以满足您的需要,
您可以通过克隆输入字段上载多个图像,还可以预览、使用ajax删除图像、向多个/不同的帖子类型添加多个元框等等。

http://www.deluxeblogtips.com/2010/05/howto-meta-box-wordpress.html

SO网友:internetross

我还建议退房http://www.wpalchemy.com . WPAlchemy是一个很好的“类”(接近插件),可以轻松地向站点添加自定义元框。我广泛使用它,开发人员和新兴社区的易用性和承诺给我留下了深刻印象。

SO网友:Zack

是的,这很有可能。参见aresponse 我了解代谢箱。基本上,您只需要为save_post 并验证nonce字段。

function my_save_post_callback( $post_id, $post )
{
    if ( empty($_POST) || !isset($_POST[\'my_custom_metabox\']) || !wp_verify_nonce( $_POST[\'my_custom_metabox\'], plugin_basename( __FILE__ ) ) )
    {
        return $post->ID;
    }

    // Handle the upload here

}
add_action( \'save_post\', \'my_save_post_callback\', 1, 2);

结束

相关推荐

带有分类下拉列表的自定义Metabox-节约问题

我的目标很简单——创建一个带有自定义元框的自定义帖子类型,其中包含一个简单的分类术语下拉列表,而不是使用标签或复选框。原因是为了确保编辑器只能从分类列表中选择一个术语。经过反复试验,我终于找到了一种利用WP Alchemy提供的优秀metabox创建工具的方法(http://farinspace.com/wpalchemy-metabox/)创建我的metabox并让它在下拉列表中显示适用的术语。我遇到的问题是,我似乎无法从下拉菜单中获得新的选择来保存所选的值。要明确的是。。。重要的是,在此自定义帖子类型