我是Wordpress插件开发的新手,我有一个需要回答的问题。
如果可以的话,是否可以通过插件生成类似Robot.txt的文件?
我已经尝试了多种解决方案,例如file_put_contents
,但似乎无法正常工作,因为我认为可能存在权限问题。
任何建议将不胜感激。预先谢谢你。
if (! defined('ABSPATH')){
die;
}
$rfile='../../../robot.txt';
$rtext="User-Agent: *
Allow: /wp-content/uploads/
Disallow: /wp-content/plugins/
Disallow: /wp-admin/";
file_put_contents($rfile, $rtext);
这是我到目前为止使用的代码。
答案 0 :(得分:0)
您应该能够使用WordPress中的robots_txt
钩子添加到robots.txt
文件中。
例如:
function AddToRobotsTxt($robotstext, $public) {
$robotsrules = "User-agent: SomeBot
Allow: /";
return $robotstext . $robotsrules;
}
add_filter('robots_txt', 'AddToRobotsTxt', 10, 2);
您还可以使用此钩子动态地将robots.txt
文件完全替换为您自己的文件。您将在functions.php
文件中执行以下操作:
function ReplaceRobotsTxt($robotstext, $public) {
$robotstext = "User-agent: SomeBot
Allow: /";
return $robotstext;
}
add_filter('robots_txt', 'ReplaceRobotsTxt', 10, 2);
关于add_filter
函数中的最后两个参数,10是$priority
参数,它定义了您的函数相对于其他函数何时运行。 2是$accepted_args
参数,它告诉WP您要添加的功能将使用多少个参数。
有关robots_txt
钩子check out this link的更多信息。