仅将博客帖子重定向到新的

时间:2017-09-06 作者:Mohammad Bayezid

我已将所有博客帖子复制到一个新域。我想为所有博客帖子创建重定向到新URL,但保持页面不变。是否有通配符解决方案?

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

你要做的是,检查它是否是通过is_single(), 获取当前URL(或至少是域后的那部分),并重定向到新域。

我在这里使用parse_url() 轻松区分主机、路径等。

add_action(\'template_redirect\', \'wpse_redirect_posts_to_new_page\');
function wpse_redirect_posts_to_new_page() {
  // if this is not a single post or not of type post, do nothing
  if ( ! is_single() || get_post_type() != \'post\')
    return;

  $url = parse_url(get_the_permalink());
  $newdomain = \'https://www.example.com\'; // no trailing slash!
  wp_redirect($newdomain . $url[\'path\']);
  exit;
}

结束

相关推荐

强制下载TEMPLATE_REDIRECT挂钩中的文件

在我的功能中。php文件我为template\\u重定向挂钩添加了一个自定义操作,该挂钩必须强制下载存储在服务器上的文件。当下载的代码位于Wordpress之外的一个简单PHP文件中时,它可以正常工作。但是,只要我在模板重定向挂钩中添加此代码,该功能就会被破坏。Chrome表示“无法访问该网站…ERR\\u INVALID\\u RESPONSE”。没有错误500或其他错误。。。以下是下载代码:<?php $filename = $_SERVER[\'DOCUMENT_ROOT\'] . \