默认情况下,WordPress 会为媒体库中的每一个媒体创建单独的网页,包括图片、视频和 PDF 文档等。我相信很多同学甚至都不知道这种页面的存在,你可以在媒体库中随便找一个媒体,鼠标悬浮上去,点击「查看」链接就能进入媒体页了。
这个功能对于大多数人来说的是无用的,除非你是摄影作品展示之类的网站,否则访客只看插入到文章中的图片或视频就行。而且,大部分主题都没有针对媒体页做出优化,看起来也是巨丑无比,非常不协调,这种无用的垃圾页面我们还是直接想办法干掉好了。

方法一、使用插件

最简单也是我推荐的方法就是直接安装一个插件,它叫做 Attachment Pages Redirect,安装并启用之后,如果再访问媒体页,会被强制跳转到媒体所属的文章页,如果媒体没有归于任何文章,就会跳到首页。

这种方法弄起来非常快,只需要你在网站后台搜索插件,一键安装,再轻轻按下启用按钮就好,而且插件本身只有一个小函数,对于服务器的性能消耗几乎可以忽略不计。

方法二、利用现有插件

如果你安装了热门的 Yoast SEO 插件,可以直接使用插件提供的功能来禁用媒体页面。在后台管理菜单进入「SEO」目录下的「Advanced」页面,点击「Permalinks」选项卡,找到「Redirect attachment URLs to parent post URL.」选项,设置为开启的「Redirect」状态即可。

方法三、修改主题文件

找到主题根目录下的 attachment.php 文件(如果没有就创建一个),在最开头加入下列代码:

  1. $redirect = get_permalink( $post_parent );
  2. else
  3. $redirect = home_url();
  4. wp_redirect( $redirect );
  5. die;
  6. }
  7. Bing_disable_attachment_pages();
  8. ?>

如果你担心主题升级导致文件被覆盖的话,可以直接使用方法一里介绍的,效果一模一样的插件,或者在子主题里添加 attachment.php 文件,只放入这段代码即可。

方法四、禁止收录

如果你不想禁止媒体页的访问,但是想阻止搜索引擎收录它的话,可以把下边的代码加入到主题的 functions.php 里:

  1. /**
  2.  * 禁止搜索引擎收录媒体页
  3.  *
  4.  */
  5. function Bing_disable_robots_index_attachment_pages() {
  6.     if ( is_attachment() )
  7.         wp_no_robots();
  8. }
  9. add_action( ‘wp_head’, ‘Bing_disable_robots_index_attachment_pages’ );

后记
我的网站已经使用了方法一来彻底禁用媒体页,我认为媒体页对我来说没有任何用处,媒体库中的图片不需要也不能单独观看,而是需要用户联系文章中的上下文来查看,单独的一个媒体页面没有意义。

其次,我使用了页面缓存插件来加速网站并且减缓服务器压力,媒体页会导致插件生成大量的缓存,比其它所有页面加起来还要大,并且这些页面还 800 年没有一个人访问,非常的浪费。

最后一个理由,无论你的固定链接设置成什么,只要不是默认,媒体页的网址都会是文章名的形式,这个文章名默认就是上传图片时的文件名,由于我的截图都是软件根据日期自动生成的名字,放在链接中间难看的要命,简直受不了!

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源