首页 > 解决方案 > 使用 get_query_var (WordPress) 读取 URL 参数

问题描述

我正在运营一个网站,人们在外部商店购买产品后会被重定向。重定向链接如下所示:www.mypage.com/thank-you/?order_id=ABCDE

我想从 URL 中读出参数“order_id”,并发现 WordPress 中最好/最安全的方法是使用本机 get_query_var 函数。

为了注册变量“order_id”,我已经在我的functions.php中添加了以下代码:

function add_query_vars_filter( $vars ){
$vars[] = "order_id";
return $vars;
}
add_filter( 'query_vars', 'add_query_vars_filter' );

现在我希望能够在 HTML 中打印 order_id,但不知道该怎么做。某某 喜欢

Order ID = <?php ... get_query_var( 'order_id' ) ... ?>

这应该导致

Order ID = ABCDE

有什么建议怎么做吗?我对 php 还很陌生,但这不是我的 functions.php 的第一个补充,它到目前为止一直有效。

谢谢,帕特里克

标签: wordpress

解决方案


您应该为感谢页面创建一个自定义模板,然后从 URL 中获取该 order_id 参数,并在 PHP 代码中显示在该模板中,如下所示:

<?php
/*
* Template Name: Thankyou page
*/
get_header();

if($_GET['order_id']){
	$orderId = $_GET['order_id'];
}
?>
<div class="container">
	<h1>Thank you. Your order has been received.</h1>
	<h2>Order details:</h2>
	<span>Order Number: <?php echo $orderId; ?> </span>
</div>
<?php get_footer(); ?>


推荐阅读