WordPress媒体库的完整指南和提示

温馨提示:注册会员付费购买资源可永久免费下载更新版本

图片和其他媒体文件是任何WordPress网站的重要组成部分。为了有效地使用它们,牢牢掌握WordPress媒体库的工作原理是有帮助的。

这个方便的WordPress功能使你能够存储和管理你的图片和其他媒体。通过一些内幕知识和一些简单的技巧,你可以通过媒体库做很多事情来改进你的网站。

在这本全面的指南中,我们将带你浏览关于WordPress媒体库的所有信息,包括如何导入和下载内容。我们还将介绍图像编辑、长期文件管理和合并高级功能的四个技巧。

WordPress媒体库简介

如何将文件添加到WordPress媒体库

如何在WordPress媒体库中编辑图像

理解WordPress媒体库错误

长期媒体库管理

WordPress媒体库的4个技巧

WordPress媒体库简介

就其核心而言,你的WordPress媒体库就像它的名字所暗示的那样:你上传到你的网站的所有媒体文件的目录:

WordPress媒体库

WordPress能够托管多种类型的媒体,包括:

图像(。jpg,。jpeg,。png,。gif,。Webp和。ico)。

音频文件(. mp3、. m4a、.奥格和。wav)。

视频(. mp4,. m4v,.mov,。wmv,。avi,。mpg,。ogv,. 3gp和. 3g2)。

PDF文件。

Word文档。

Excel电子表格。

PowerPoint演示文稿。

Adobe Photoshop文档。

它还具有一些有限的照片编辑功能,因此您可以直接从仪表板中根据需要进行调整。

要访问您的媒体库,只需随时点按“管理”边栏中的“媒体”:

访问WordPress媒体库

以下是一些可用的基本选项。

首先,您可以通过单击相关图标来确定是要在列表视图还是网格视图中查看文件:

WordPress媒体库视图选项

您也可以使用下拉菜单来过滤文件:

过滤WordPress媒体库文件

第一个菜单允许您按类型查看媒体,而第二个菜单将按上传日期过滤您的库内容。

您也可以使用搜索栏按名称查找特定文件:

WordPress媒体库搜索栏

最后还有一个批量选择按钮。这个功能允许你一次从你的WordPress安装中删除多个文件:

WordPress媒体库中的批量选择选项

这涵盖了WordPress媒体库屏幕上所有可用的本地特性。

正如您将在后面看到的,您可以进行许多修改来增强它。但是,首先,我们需要讨论如何向WordPress添加文件。

如何将文件添加到WordPress媒体库

你可以用几种不同的方式将文件(比如你网站上最喜欢的图标)添加到你的WordPress媒体库。首先,导航到媒体>添加新文件:

访问WordPress媒体上传程序

在这里,您可以上传保存在电脑或其他设备上的文件:

WordPress媒体上传器

你也可以直接从WordPress编辑器添加媒体。在块编辑器中,首先为要合并的媒体类型添加相应的块:

WordPress媒体块

在生成的占位符中,选择上传并从您的计算机中选择一个文件:

从块编辑器上传媒体

或者,您可以简单地将文件从桌面拖放到相关的块中。

在经典编辑器中,您需要点按“添加媒体”按钮:

经典编辑器添加媒体按钮

然后导航到“上传”选项卡,从您的计算机中选择一个文件:

从经典编辑器上传媒体

您还可以随时将文件直接从桌面拖放到编辑器中。

在某些情况下,你可能会发现有必要通过FTP手动上传媒体文件到WordPress网站。您可以使用FileZilla这样的客户端来完成这项工作。

连接到服务器后,导航到wp-content >上传:

通过FileZilla上传文件到WordPress库目录。

将文件上载到此目录以将其添加到您的媒体库。

从WordPress媒体库下载内容

在某些情况下,您可能需要将媒体库中的文件下载到您的计算机上。WordPress允许你通过导航到工具>导出在本地完成这项工作:

WordPress导出工具

然后选择媒体选项。如果您只需要在特定时间段内上传文件,您可以使用下拉菜单来指定您的请求:

导出WordPress媒体

最后,单击“下载导出文件”按钮。这将把相关的媒体文件下载到您的计算机上。

如何在WordPress媒体库中编辑图像

我们之前提到过,WordPress有一些原生的图片编辑功能。要访问它们,导航到你的WordPress媒体库并选择你想要编辑的文件。然后,单击“编辑图像”按钮:

WordPress中的编辑图像按钮

这将打开图像编辑器:

WordPress图像编辑器

您可以进行五种基本编辑:

裁剪使您能够剪切图像的某些部分:

WordPress中的图像裁剪

旋转图像会将其逆时针或顺时针旋转90度:

在WordPress中将图像向左旋转

翻转图像将垂直或水平反映图像:

WordPress中的图像是水平翻转的

其他三个设置在侧边栏中。第一个使您能够通过拉伸来改变图像的大小。只需输入所需的高度或宽度,另一个字段将自动填充。然后单击拉伸按钮:

在WordPress中拉伸图像

需要注意的是,在WordPress中调整图片大小有时会对图片质量产生负面影响。

另外只能拍大图,缩小。不能把图像放大到更大的尺寸!

要将图像裁剪为特定的宽高比或大小,您可以使用“图像裁剪”下的宽高比和选择栏:

在WordPress中设置图像裁剪选择尺寸

最后,如果您想保留现有的图像缩略图,您可以使用缩略图设置。只需选择要应用更改的图像版本的单选按钮:

WordPress图片编辑器中的缩略图设置

WordPress的默认图片编辑是有用的,但也是有局限性的。它不会取代你可能用来进行更广泛修改的任何软件,尤其是当你运行一个摄影网站或dailybooth时。

理解WordPress媒体库错误

很遗憾,出现了一个WordPress错误。WordPress媒体库也不例外。

一个常见的问题是未指定的“HTTP错误”,当您从编辑器上传新文件时,可能会出现该错误:

媒体上传中的HTTP错误

通常,您只需等待此错误消失,并在几分钟后再次尝试上传。如果HTTP错误再次出现,可能是你的WordPress会话已经过期。您需要再次登录,然后再次尝试上传。

一些用户面临的另一个问题是媒体库无法加载。这通常是因为与你的插件和/或主题冲突。要解决这个错误,试着停用所有插件并切换到WordPress默认主题。

如果您的媒体库再次正确加载,您需要进一步解决插件冲突问题,以永久解决该问题。

有时,当您开始通过媒体库上传文件时,您可能会遇到“上传:无法将文件写入磁盘”错误。通常,当您的上传目录设置为未写入时,会出现此问题。你可以通过WordPress的站点健康工具检查你的文件系统权限。

长期媒体库管理

到目前为止,当谈到媒体库时,我们只关注WordPress的原生功能。但是,随着时间的推移,你可能会遇到一些需要借助外部解决方案的问题。

例如,你添加的文件越多,你的WordPress媒体库就越混乱。除了本文开头讨论的搜索和过滤选项,WordPress没有为处理不规则媒体提供太多帮助。

但是,有一些插件允许您将媒体文件整理到文件夹中。

WordPress媒体库文件夹插件是最受欢迎的选项:

WordPress插件-WordPress媒体库文件夹

除了允许您创建媒体文件夹,该插件还与MaxGalleria集成,允许您直接从媒体库创建图片库:

WordPress插件-WordPress图库最大图库

升级到WordPress Media Library Folders Pro提供了与NextGEN Gallery插件和高级自定义字段的额外集成。它还使您能够创建类别和标签来进一步组织您的文件。

WordPress缺乏的另一个功能是用新版本替换媒体文件的能力。由于这些类型的文件可能非常大,当您需要更新内容时,您不希望只是不断添加新文件。

这意味着上传新文件后,需要找到旧版本并删除。您可以使用“启用媒体替换”来直接替换ShortPixel的旧图像,从而节省一些时间:

WordPress插件-启用媒体替换

有了这个插件,你也可以替换所有旧文件的链接。这有助于避免整个站点的介质损坏。

真正的媒体库是另一个值得一试的文件夹和文件管理器,它让你的文件管理变得轻而易举。

WordPress插件-真实媒体库

多亏了它,你可以直接在WordPress中处理大量文件,比如图片、视频和文档。须知:Real Media Library有12种语言版本。如果免费版本不足以满足您的需求,他们还提供了具有更多功能的购买专业版。

WordPress媒体库的4个技巧

WordPress媒体库可以处理网站管理员最常见的需求。然而,WordPress提供了许多功能和挂钩,使用户能够在不使用第三方插件的情况下增强媒体库的特定功能。让我们通过四个实际例子来深入了解一下这些函数和钩子。

1.向附件文章类型添加自定义元数据。

每当你上传一个媒体文件,WordPress会生成一个附件文章类型。

就像任何其他文章类型一样,附件注册在wp_posts表中,它们各自的元数据可以在数据库的wp _ posts表中找到:

默认附件详细信息面板

wp_posts表存储数据POST_CONTENT(附件描述)、POST _ extract(附件描述)、post_author、POST_TITLE、post_status和post_mime_type。

wp_postmeta表存储任何类型的元数据,例如附加文件URL、图像大小和MIME类型,以及可交换图像文件格式(EXIF)和国际新闻电信委员会(IPTC)的元数据。

有时,您可能需要将自定元数据添加到附件中,例如文档作者的姓名、关联的URL或照片拍摄的位置。向附件添加元字段与向帖子添加元字段有点不同,需要特定的钩子和函数。

首先,您需要将所有必需的自定义字段添加到编辑媒体屏幕。您可以通过wp-admin/includes/media.php中的attachment_fields_to_edit过滤器过滤可用的附件字段来完成这项任务。

function media_hacks_attachment_field_to_edit( $form_fields, $post ){// https://codex.wordpress.org/Function_Reference/wp_get_attachment_metadata$media_author = get_post_meta( $post->ID, ‘media_author’, true );$form_fields[‘media_author’] = array(‘value’ => $media_author ? $media_author : ”,’label’ => __( ‘Author’ )); return $form_fields;}add_filter( ‘attachment_fields_to_edit’, ‘media_hacks_attachment_field_to_edit’, 10, 2 );

这个函数有两个参数:$form_fields表单域数组和$post对象。首先,get_post_meta检索现有的“media_author”值,然后将“media_author”元素添加到$form_fields数组中。

最后,回调返回$form_fields(参见Gist上的代码)。

这将在“编辑媒体”页面上显示一个新字段,您可以通过从媒体库中选择相关图像并单击“编辑更多详细信息”链接来访问该字段:

访问WordPress编辑媒体页面

在结果屏幕上,您将在底部看到新的自定义元数据字段:

的新“作者”元数据栏

下一步是保存用户输入。您可以通过将新函数与edit_attachment操作挂钩来实现这一点:

function media_hacks_edit_attachment( $attachment_id ){if ( isset( $_REQUEST[‘attachments’][$attachment_id][‘media_author’] ) ) {$media_author = $_REQUEST[‘attachments’][$attachment_id][‘media_author’];update_post_meta( $attachment_id, ‘media_author’, $media_author );}}add_action( ‘edit_attachment’, ‘media_hacks_edit_attachment’ );

这个函数只保存一个参数:当前媒体文件的$attachment_id。首先,该函数检查自定义元字段的有效值是否已经发送。然后,它通过update_post_meta函数注册该值(参见gist上的代码)。

现在,您可以通过get_post_meta函数检索“media_author”值:

$media_author = get_post_meta( $post->ID, ‘media_author’, true );

之后,您可以在前端的任何地方显示它。

2.在编辑媒体屏幕中显示EXIF和IPTC元数据

WordPress自动存储JPEG和TIFF mime类型的扩展元数据。现在您已经知道如何通过Media将字段添加到编辑媒体屏幕,您可以显示这些数据了。

要完成此任务,您必须按如下方式更改第一个回调函数:

function media_hacks_attachment_fields_to_edit( $form_fields, $post ){// get post mime type$type = get_post_mime_type( $post->ID );// get the attachment path$attachment_path = get_attached_file( $post->ID );// get image metadata$metadata = wp_read_image_metadata( $attachment_path );if( ‘image/jpeg’ == $type ){if( $metadata ) {$exif_data = array(‘aperture’ => ‘Aperture’, ‘camera’ => ‘Camera’, ‘created_timestamp’ => ‘Timestamp’,’focal_length’ => ‘Focal Length’, ‘iso’ => ‘ISO’, ‘shutter_speed’ => ‘Exposure Time’, ‘orientation’ => ‘Orientation’ );foreach ( $exif_data as $key => $value ) {$exif = $metadata[$key];$form_fields[$key] = array(‘value’ => $exif ? $exif : ”,’label’ => __( $value ),’input’ => ‘html’,’html’ => “ID][$exif]’ value='” . $exif . “‘ />);}}}return $form_fields;}add_filter( ‘attachment_fields_to_edit’, ‘media_hacks_attachment_fields_to_edit’, 10, 2 );

这段代码片段使用了以下WordPress特性:

Get_post_MIME_type根据ID检索附件的MIME类型。

Get_attached_file根据ID检索附件路径。

获取EXIF或IPTC的元数据(如果有的话)。

如果图像mime类型是“image/jpeg ”,并且元数据存在,则声明所需元数据的数组,并为数组中的每个元素创建一个表单字段:

WordPress附件详细信息中的EXIF和IPTC元数据字段

这个例子中的表单域有点复杂,因为我们要为“html”表单元素设置一个值(参见Gist上的代码)。你不需要保存EXIF和IPCT的元数据,因为WordPress在上传图片时会自动将它们存储在wp_postmeta表中。

3.在前端显示扩展的元数据。

在后端为自己提供所有这些信息是很有用的。但是,如果您仍然希望在前端显示媒体文件的扩展元数据,则需要进行更多的修改。

为此,您可以使用wp-admin/includes/post.php中的_content过滤器将此信息附加到附件描述中,如下所示:

function media_hacks_the_content( $content ){global $post;if( is_attachment() && ‘image/jpeg’ == get_post_mime_type( $post->ID ) ) {$fields = wp_get_attachment_metadata( $post->ID );$meta = $fields[‘image_meta’];if( ! empty( $meta[‘camera’] ) ){$custom_content = “Camera: {$meta[‘camera’]}Created timestamp: {$meta[‘created_timestamp’]}Aperture: {$meta[‘aperture’]}Focal length: {$meta[‘focal_length’]}ISO: {$meta[‘iso’]}Shutter speed: {$meta[‘shutter_speed’]}Orientation: {$meta[‘orientation’]}”;$content .= $custom_content; }}return $content;}add_filter( ‘the_content’, ‘media_hacks_the_content’ );

这里调用wp_get_attachment_metadata函数。如果当前文章类型是“附件”,当前mime类型是“图像/jpeg ”,则检索可用的图像元数据并用于构建一个无序的字段列表,该列表被附加到文章内容中。

回调函数返回$content(参见Gist上的代码):

附件页面上显示的EXIF和IPTC元数据

在顶部,您可以看到新附加的文章,元数据附加到描述中。

4.发布照片档案

开箱即用,WordPress不显示附件文件。这是因为attachment post类型的has_archive选项被设置为false。

另外,虽然$query对象的默认post_status参数设置为“publish”,但是默认附件post_status设置为“inherit”。这意味着,除非我们显式地将查询post_status设置为“inherit”或“any”,否则归档中不会显示任何附件(更多信息请参见WP_Query类型参数)。

话虽如此,为了显示图像文件,您必须定义两个函数。第一个函数过滤指定文章类型的参数,并将附件has_archive属性设置为true:

function media_hacks_register_post_type_args( $args, $post_type ){if( $post_type == ‘attachment’ ){$args[‘has_archive’] = true;}return $args;}add_filter( ‘register_post_type_args’, ‘media_hacks_register_post_type_args’, 10, 2 );

第二个函数为post_mime_type和post_status查询变量设置自定义值:

function media_hacks_pre_get_posts( $query ){if ( !is_admin() && $query->is_main_query() ) {if( is_post_type_archive(‘attachment’) ){$query->set(‘post_mime_type’, ‘image/jpeg’);$query->set( ‘post_status’, ‘inherit’ );}}}add_action( ‘pre_get_posts’, ‘media_hacks_pre_get_posts’ );

该函数链接到pre_get_posts操作钩子,该钩子在查询创建之后、执行之前触发。在$query中,对象是通过引用传递的,而不是通过值传递的,这意味着当前实例中$query的任何更改都会影响原来的$query对象。

因此,验证您想要更改哪个查询非常重要(参见Gist上的代码)。然后,如果您在浏览器Post_type=attachment中键入https://yourdomain.com/?,您应该会看到一个JPEG图像存档:

WordPress媒体文件

所有这些hack的完整代码都可以在public Gist中以插件的形式获得,我们已经通过这个部分链接到了它。你可以下载一个. zip文件并上传到你的WordPress网站来实现所有四种技术,而不需要手动编辑你的文件。

声明:

1,本站分享的资源来源于用户上传或网络分享,如有侵权请联系站长。

2,本站软件分享目的仅供大家学习和交流,请不要用于商业用途,下载后请于24小时后删除。

3,如果你也有好的建站资源,可以投稿到本站。

4,本站提供的所有资源不包含技术服务请大家谅解!

5,如有链接无法下载,请联系站长!

6,特别声明:仅供参考学习,不提供技术支持,建议购买正版!如果发布资源侵犯了您的利益请留言告知!


创网站长资源网 » WordPress媒体库的完整指南和提示

发表回复