在wordpress网站日志文件中发现蜘蛛爬行了很多次的/wp-json/目录,在robots文件中disallow掉了爬虫还是访问了那个目录,能不能直接在程序中直接改呢?通过查询相关文档发现WordPress 4.4版本以后增加了一个REST API功能, 通过REST API可以很轻松的获取网站的数据,但是这个功能并不是每个网站都需要的,或者说有需要但并不希望它在head里面输出,那么可以禁用REST API或者说移除head里面wp-json链接。
移除方法
打开主题的 functions.php 文件,加入以下代码即可。但这样做实质上并不会禁用 oembed,如需完全禁用请使用 WordPress 官方开发了一个插件:Disable Embeds。文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
// 屏蔽 REST API add_filter('rest_enabled', '__return_false'); add_filter('rest_jsonp_enabled', '__return_false'); // 移除头部 wp-json 标签和 HTTP header 中的 link remove_action('wp_head', 'rest_output_link_wp_head', 10 ); remove_action('template_redirect', 'rest_output_link_header', 11 );
注意:屏蔽 REST API 会直接导致 文章 Emebed 功能失效。文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
由于wordpress新版编辑器的后台会使用wp-json,因此只需要让未登陆的禁止使用即可。上边的方法是都直接禁止了,前后台都禁止了,无法使用新版编辑器。用下面的代码,在你的主题里面的functions.php里面增加:文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
add_filter('rest_authentication_errors', function () { if (!is_user_logged_in()) { return new \WP_Error(403, 'not allowed'); } });
文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
使用插件禁用wp-json
1、使用disable-json-api插件方式解决:
在网站后台插件安装搜索 disable-json-api ,安装启动即可;文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
手动下载复制到插件安装目录,启动即可,下载地址:https://wordpress.org/plugins/disable-json-api/文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
2、wordpress站长工具箱插件imwpf插件:http://www.imwpweb.com/400.html文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
什么是wp-json
WordPress 4.4 版本以后增加了一个 REST API 功能,这是个非常棒功能,通过 REST API 生成的 JSON 接口,可以很轻松的获取网站的数据,可应用于其他网站、手机 APP 或小程序等。但是这个功能并不是每个网站都需要的,如果你博客没有任何客户端,那么你可以移除 WordPress 的 REST API 功能。文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
WP REST API 是 WordPress 的一个功能,为其提供对外标准的 RESTFul 接口,随着 RESTFul 的畅行和各种前端框架的出现,WP REST API可以让 WordPress 不仅仅存在 Web 端,可以让 WordPress 不仅仅履行一个博客功能,而是可以让它作为后台终端(BackEnd),然后以各种应用的形式实现在各种各样的设备中。文章源自SEO视频网-https://www.seoshipin.cn/jianzhan/wordpress/4234.html
什么是oembed
有没有想过,只需要在日志中输入一个视频网站或者图片分享的 URL,这个 URL 里面含有的视频或者图片就自动显示出来?这样是不是很酷!这个就是 WordPress 的 Embeds 的功能,让你直接发布一个 URL(需要单独一行,纯文本,不带链接才行),就能把这个 URL 中的视频显示到博客上,并且会根据博客的布局调整视频的大小。
评论