WordPress “添加媒体”只显示上传到本文章/页面的文件

前些天,@小原 朋友询问,如何在文章编辑的“添加媒体”中只显示上传到本文章的文件,因为默认会显示所有文件,如果文件很多,加载起来非常慢,还会出现假死现象。要解决这个问题,将下面的代码添加到当前主题的 functions.php 文件中:

/**
 * WordPress “添加媒体”只显示上传到本文章/页面的附件
 * https://www.wpdaxue.com/media-only-uploaded-to-this-post.html
 */
add_action( 'wp_footer', 'firmasite_mediapanel_lock_uploaded' );//让前台编辑器也生效
add_action( 'admin_footer-post-new.php', 'firmasite_mediapanel_lock_uploaded' );
add_action( 'admin_footer-post.php', 'firmasite_mediapanel_lock_uploaded' );
function firmasite_mediapanel_lock_uploaded() { ?>
<script type="text/javascript">
	jQuery(document).on("DOMNodeInserted", function(){
		jQuery('select.attachment-filters [value="uploaded"]').attr( 'selected', true ).parent().trigger('change');
	});
</script>
<?php }

这样一来,“添加媒体”窗口就只能显示上传到本文章的文件。页面也是一样的。该方法只支持 WP 3.5 及以上版本。如果你在网站前台也调用了编辑器,上面代码的第 5 行就可以让前台也一样生效。

media-only-uploaded-to-this-post-wpdaxue_com

参考资料:http://unsalkorkmaz.com/how-to-lock-uploads-to-show-only-uploaded-to-this-post-in-media-panel/

2014-8-1更新:有朋友反馈,使用上面的代码后,只能显示“上传到本文章的”媒体,没办法切换到“所有多媒体项目”,如果是这样的话,大家可以下载安装 Default Media Uploader View 即可(不要和上面的代码同用)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
欢迎关注我们的微信公众号:WPDAXUE

倡萌

一个文科IT宅男,喜欢折腾WordPress和被它折腾 ^_^

14 条评论

  1. 博主,我的wordpress搬家后,媒体库打不开,跟这个人描述的是一样的http://www.baidu.com/link?url=0RFOdJPGPWfJ29pk8ctN-v6TTOo7TNllGFkCsV4deI1VSkUw6SwaNkR7GoGntJWCmrutCZ_Iwv73cWBOsAStQK,但是没有人能解答,你有办法吗?谢谢

  2. 棒,这个比较方便,不过,要是只是更改成 默认是 只显示本文章的 就好了,而不是让 全部的那个直接无法使用。

  3. 我的问题是:点了 添加媒体 按钮以后,就不显示任何图片 也不显示 上传到本文章 的按钮 ,现在上传图片好费劲 都看不到上传的图片 左下角只显示 已选几个按钮. 编辑按钮也不管用 清空按钮 好像还管用的。 我的版本是3.7.1 。.以前还支持拖拽上传 现在什么都不行了 呵呵。. 我的是在网站搬家以后出现的 重装了没用的 我的是新站 因为这个问题 我都从零开始了,把数据什么都清空了.

    1. 那就有可能是空间的问题,你联系你的主机商看看,或者问下同空间的其他WP用户是否有一样的问题

    1. 该方法是经过测试有效才分享的,只要是 3.5 以上的版本都是可用的

        1. 我自己现在就用这个代码,就是 3.6.1 ,你不能用,估计是你主题或插件的js和上面的代码的js冲突了

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注