允许在文本框中提交联系人表单默认文本

时间:2018-06-30 作者:Joe

构建联系人表单。我需要输入您的姓名、电子邮件和电话。人员必须在这些字段中输入信息,否则将收到错误消息。我的第四个字段是消息文本框。在该字段中,使用placeholder=我有一条我感兴趣的默认消息:“获取(帖子的)标题”。像我希望的那样工作。我的问题是,我不想强制填写表单的人必须在此字段中输入文本,如果他们不在消息文本框中添加任何其他文本,则会使用我默认生成的“占位符”文本发送联系人表单电子邮件,其中包含我在其中输入的默认文本,如上所述。现在,我的代码正在强制在消息框中输入文本以发送。

enter image description here

以下是我使用的代码:

echo \'<form action="\' . esc_url( $_SERVER[\'REQUEST_URI\'] ) . \'" method="post">\';
                                echo \'<h5>\';
                                echo \'Ask a question <br/>\';
                                echo \'</h5>\';
                                echo \'<p>\';
                                echo \'<input style="margin-left: 15px;" type="text" placeholder="Your Name (required)" name="cf-name" pattern="[a-zA-Z0-9 ]+" value="\' . ( isset( $_POST["cf-name"] ) ? esc_attr( $_POST["cf-name"] ) : \'\' ) . \'" size="29" />\';
                                echo \'</p>\';
                                echo \'<p>\';
                                echo \'<input style="margin-left: 15px;" type="email" placeholder="E-mail (required)" name="cf-email" value="\' . ( isset( $_POST["cf-email"] ) ? esc_attr( $_POST["cf-email"] ) : \'\' ) . \'" size="29" />\';
                                echo \'</p>\';
                                echo \'<p>\';
                                echo \'<input style="margin-left: 15px;" type="text" placeholder="Phone (required)" name="cf-subject" pattern="[0-9-() ]+" value="\' . ( isset( $_POST["cf-subject"] ) ? esc_attr( $_POST["cf-subject"] ) : \'\' ) . \'" size="29" />\';
                                echo \'</p>\';
                                echo \'<p>\';
                                echo \'<textarea style="margin-left: 15px; width: 246px;" rows="3" cols="28" placeholder="I am interested in: \'.get_the_title().\' " name="cf-message">\' . ( isset( $_POST["cf-message"] ) ? esc_attr( $_POST["cf-message"] ) : \'\' ) . \'</textarea>\';
                                echo \'</p>\';
                                echo \'<p><input type="submit" name="cf-submitted" value="Contact Agent" style="border-radius: 5px; color: #fff; margin-left: 15px; width: 247px; height: 38px; background-color: #27ae60;"></p>\';
                                echo \'</form>\';
                                echo \'<p style="font-size: x-small; font-weight: bold; margin-left: 22px;">\';
                                echo \'By sending a request you agree to our Privacy Policy\';
                                echo \'</p>\';


                                // if the submit button is clicked, send the email
                                if ( isset( $_POST[\'cf-submitted\'] ) ) {

                                    // sanitize form values
                                    $name    = sanitize_text_field( $_POST["cf-name"] );
                                    $email   = sanitize_email( $_POST["cf-email"] );
                                    $subject = sanitize_text_field( $_POST["cf-subject"] );
                                    $message = esc_textarea( $_POST["cf-message"] );

                                    // get the blog administrator\'s email address
                                    $to = get_option( \'admin_email\' );

                                    $headers = "From: $name <$email>" . "\\r\\n";

                                    // If email has been process for sending, display a success message
                                    if ( wp_mail( $to, $subject, $message, $headers ) ) {
                                    echo \'<div>\';
                                    echo \'<h5>Thanks for contacting us, expect a response soon.</h5>\';
                                    echo \'</div>\';
                                    } 
                                    else {
                                    echo \'<h5>An unexpected error occurred.</h5>\';
                                    }
                                }

1 个回复
SO网友:Joe

这就是我所改变的,并且工作得很完美。

    echo \'<textarea style="margin-left: 15px; width: 246px;" rows="3" cols="28" name="cf-message">\' . 
( isset( $_POST["cf-message"] ) ? esc_attr( $_POST["cf-message"] ) : \'I am interested in: \'.get_the_title() ) . 
\'</textarea>\';

结束

相关推荐

Wp-blog-header.php hack的替代插件?

我有2个额外的代码在wp博客标题。php。第一个处理410和404个标题,位于顶部,行之前if ( !isset($wp_did_header) ) {第二个处理一些复杂的重定向,并在wp(); 线我知道破解核心WP脚本是个坏主意(尤其是当我的破解在大多数WP更新中被覆盖时)。我想把两者都作为插件来做,但我不知道该使用哪个钩子,也不知道如何使用。我看过一些现有的插件,但没有一个能满足我的需要。如有任何建议,将不胜感激。