WordPress短代码实现任意文章或页面重定向

  • 酉灿
  • WordPress
  • Jul 27, 2021

有时候我们在优化WordPress网站的时候,需要将 WordPress 站点的某篇文章或者某个页面临时重定向到另一个地址,那么这个需求该怎么实现呢。

其实实现的方法有很多,比如有现成插件可以使用,但强迫症不喜欢;当然也可以给需要转向的页面加 JS 代码实现,这种方法又不够方便也不够优雅。

于是使用短代码(shortcode)来实现。用一小段代码给站点增加一个新的用于转向的短代码,那么每次在需要转向的页面或文章中,只要添加短代码,即可轻松转向:

将以下代码添加到主题 functions.php 中:

// 重定向短代码实现
function my_redirect_shortcode( $params ) {
	// 提取参数
	extract( shortcode_atts( array(
		'url' => '/',
	), $params ) );
 
	// 功能实现
	header( 'Location: ' . $url );
}
 
// 短代码注册函数
function my_add_shortcodes() {
	add_shortcode( 'my_redirect', 'my_redirect_shortcode' );
}
 
// 在初始化时注册短代码
add_action( 'init', 'my_add_shortcodes' );

在需要转向的页面或文章中,添加以下简码(my-redirect 替换为 my_redirect)即可轻松重定向:

[my-redirect url="http://www.superso.top"]
打赏