在wordpress页面中添加隐藏字段

时间:2014-06-15 07:15:30

标签: php wordpress

在页面中有一个自定义的html表单:

    <form action="localhost/mail.php" id="contactForm" method="post">
    <ul>
        <li>
    <input type="hidden" name="submitted" value="USERNAME_HERE" /></li>
        <li>
            <button type="submit">Send request</button>
        </li>
    </ul>

</form>

我可以以某种方式将当前记录的用户名添加到value = ...中吗? 因此,当用户点击&#34;发送请求&#34;按钮,我会在电子邮件中收到他的用户名吗?

尝试使用[userinfo field =&#34; user_login&#34;]并且:

    <?php global $current_user;
      get_currentuserinfo();

      echo 'Username: ' . $current_user->user_login . "\n";

?>

但是所有的PHP代码都被删除了,所以它没用:(

请告知我的错误。

谢谢!

3 个答案:

答案 0 :(得分:1)

通常我使用页面模板在页面中使用PHP。设置模板后,您可以执行以下操作:

<?php
/*
 * Template Name: Custom Form
 * Description: Form with pre-filled username. 
 */

    global $current_user;
    get_currentuserinfo();
?>

 <form action="localhost/mail.php" id="contactForm" method="post">
 <ul>
    <li>
      <input type="hidden" name="submitted" value="<?php echo $current_user->user_login; ?>" />
    </li>
    <li>
        <button type="submit">Send request</button>
    </li>
</ul>

</form>

您可能希望将主题中的page.php复制到名为page-form.php的文件中,然后修改page-form.php。寻找the_content();并在那里添加自定义PHP。

您可以在此处详细了解模板: http://codex.wordpress.org/Page_Templates

答案 1 :(得分:0)

也许这会有所帮助:

<?php

$user_nameField = $_POST['user_name'];



?>





    <form action="localhost/mail.php" id="contactForm" method="post">
        <ul>
            <li>
        <input  name="user_name" type="hidden"  id="user_name"  value="<?php echo $ulog; ?>"></li>
            <li>
                <button type="submit">Send request</button>
            </li>
        </ul>  
</form>

答案 2 :(得分:0)

使用此插件:http://wordpress.org/plugins/shortcode-exec-php/

您需要在此插件中创建一个php代码块,然后将其作为短代码放入您的页面。

所以你的PHP代码看起来像这样:

<?php 
      global $current_user;
      get_currentuserinfo();

      $username = $current_user->user_login;

?>
<form action="localhost/mail.php" id="contactForm" method="post">
    <ul>
        <li>
    <input type="hidden" name="submitted" value="<?php echo $username; ?>" /></li>
        <li>
            <button type="submit">Send request</button>
        </li>
    </ul>

</form>