有没有办法测试URL是否是当前博客的一部分?

时间:2019-09-15 作者:Matthew Brown aka Lord Matt

在一个场景中,比如说,你的插件或主题已经被赋予了一个URL。你想知道,这个URL就是这个博客的URL吗?如果是,您将如何测试?

1 个回复
最合适的回答,由SO网友:Antti Koskinen 整理而成

一种选择是url_to_postid( $url ), 返回位于给定URL的帖子或页面的ID,如果失败,返回0,https://codex.wordpress.org/Function_Reference/url_to_postid

但我认为这不适用于档案。要确定url是否用于存档,您可能需要explode() 然后做一些get_term_by() 用零件。

也许不那么严格的方法是将url的主机与您的域进行比较,

if ( false !== strpos( get_home_url(), parse_url( $some_url, PHP_URL_HOST ) ) ) {
  // do something
}

if ( parse_url( $some_url, PHP_URL_HOST ) === parse_url( get_home_url(), PHP_URL_HOST ) ) {
  // do something
}
但是这样做,你不知道路径是否正确。

相关推荐

Altered Media Library URLs

我有一个客户的网站,是在他们离开另一家代理机构后我找到的。该机构使用了一个专有主题和自己的自托管页面生成器,以防止其在除他们之外的任何其他托管环境中更新或编辑。它的另一个方面是重新映射主题的URL并上载目录。因此,例如,代替WP在中查找主题文件http://domain.com/wp-content/themes/…. 它在里面找他们http://domain.com/t/….同样,对于图像上载,也可以在http://domain.com/wp-content/uploads/…, 它在里面找他们http