如何在Wordpress页面中使用$ _GET变量

时间:2015-01-09 15:15:53

标签: php wordpress

我有一个表单,用于询问有关课程的信息,每个课程都有页面,但信息页面是一个。 表格应该是这样的:

<form action="#" method="POST">
<label for="name">Name</label>
<input name="name" type="text">

<label for="email">Email</label>
<input name="email" type="email">

<input type="hidden" id="code"  value="<?php echo $course_code; ?>">
<input id="submit" type="submit" value="Invia" />
</form>

我希望根据引荐来源页面更改var $课程代码。 (使用$ _GET var)

我试过&#34; Shortcode Exec PHP&#34;插件在wp页面中执行php,但不起作用。

3 个答案:

答案 0 :(得分:0)

当您发布表单时,该变量不会在$ _GET中设置,而是在$ _POST中设置。它是一个或另一个,所以如果你想读取$ _GET var,你还必须在表单上使用GET,如下所示:

<form action="#" method="GET">
<label for="name">Name</label>
...

(这是弗雷德评论过的内容,但由于我的低代表,我无法扩展该评论​​)

答案 1 :(得分:0)

我使用“Shortcode Exec PHP”插件是错误的。 我设置了一个短代码:

$course_name = $_GET['cn'];
$courses= array("courses1","courses2","couses3");
if (in_array($course_name, $courses)) {
   echo $course_name:
}

并且在wordpress页面中可以使用短代码的名称

[couse_name]

现在它的工作!

答案 2 :(得分:0)

您可以使用$ _REQUEST,因此从表单中获取POST或GET无关紧要。但我不会从表单中使用GET,除非它是一个搜索或用户可以将URL加入书签并查看结果的东西。所有其他实例大多使用POST。

HTML表单...

<form method="post">
    <label>Name<br>
        <input type="text" name="name">
    </label>
    ...
    <input type="submit" value="Invia">
</form>

处理表单的PHP页面......

<?php
    // $_REQUEST will contain POST, GET & COOKIE
    echo $_REQUEST['name']; 
?>