从一个页面发送变量到另一个WordPress模板(Send variable from one pa

2019-08-17 15:20发布

我试图通过日期从一个WordPress模板形式到另一个。 为简单起见,我已经创建了两个模板(与WP页面作为一个标准的页面相关联了),如下所示:

<?php
/*
Template Name: Form test
*/
get_header(); 
?>

<form action="/form-result/" method="post">
<input type="text" name="name" size="20" />
<input type="submit" value="Go" />
</form>

<a href="/form-result/">Result page</a>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

<?php
/*
Template Name: Form result
*/
get_header(); 
$name = $_REQUEST['name'];
?>

And the name is <?=$name?>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

当我点击文字链接结果页面我到了上/form-result/页,但是,如果我提交表单,我得到一个找不到网页类型的错误。 验证之后,我发现这个问题是试图从一个页面变量传递给另一个未来。

进一步的Pusing,我发现<a href="/form-result/?name=Elodie">Result page</a>得到一个错误页面,而<a href="/form-result/">Result page</a>带我正确地到下一个页面。

也许我缺少的东西不多。

任何帮助这里?

Answer 1:

这个问题就解决了。 这是,变量“名字”,我用这个测试是一个WP关键字和代表模板名称。 在没有模板名称,它看起来对其中URL蛞蝓开头的变量名称相匹配的其他页面。

我改变了变量名和它的工作,因为它应该。



Answer 2:

<?php
/*
Template Name: Form
*/
?>

<?php get_header(); ?>    

<form action="/form-result/" method="post">
  <input type="text" name="name" size="20" />
  <input type="submit" value="Go" />
</form>

<a href="/form-result/">Result page</a>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

修改您的结果页面。

<?php
/*
Template Name: Form Result
*/
?>

<?php get_header(); ?>    

<?php if(isset($_POST['name'])) {
  echo $_POST['name'];
} ?>

<?php get_sidebar(); ?>
<?php get_footer(); ?>


Answer 3:

尝试添加像这样的形式里面的链接结果页面:

<button type="submit" name="submitted" id="submitted" class="submit">Submit</button>

而在结果页上:

if(isset($_POST['submitted'])) {
$name = $_POST['name'];

}

要通过表单数据,你需要通过后提交表单。 您可以使用jQuery这样做之外:

$el.click($('#form_name').submit());

-d



文章来源: Send variable from one page to another in wordpress template