出于某些原因,需要将 WordPress 站点的某篇文章或者某个页面临时重定向到另一个地址。有现成插件可以使用,太重;当然也可以给需要转向的页面加 JS 代码实现,这种方法又不够方便也不够优雅。于是用简码(shortcode)来实现。用一小段代码给站点增加一个新的用于转向的简码,那么每次在需要转向的页面或文章中,只要加入这么一句话,即可轻松转向。将以下代码添加到主题 functions.php 中:
// 1. 重定向简码实现
function my_redirect_shortcode($params) {
// 提取参数
extract(shortcode_atts(array(
'url' => '/',
), $params));
// 功能实现
header('Location: '.$url);
}
// 2. 简码注册函数
function my_add_shortcodes() {
add_shortcode( 'my-redirect', 'my_redirect_shortcode' );
}
// 3. 在初始化时注册简码
add_action( 'init', 'my_add_shortcodes' );
将以上代码加入主题的 functions.php 即可。当然,我的做法是使用子主题,然后在子主题的 functions.php 中加入自定义代码以避免主题升级时丢失修改。在需要转向的页面或文章中,添加以下简码(my-redirect 替换为 my_redirect)即可轻松重定向:
[my-redirect url="https://www.22vd.com"]
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!