wordpress自定义联系表单问题

时间:2014-02-24 02:57:43

标签: php jquery html css wordpress

我已经为我的wordpress网站创建了一个自定义联系我们表单,该表单应该适用于我网站的每个静态页面。

所以我将html放在body标签下面的header.php中,附加了激活主题的style.css文件,并为下面的表单添加了css代码,并在footer.php中添加了jquery代码,因此正如我想要的那样,表格很好地展示了所有效果。

但主要问题是我在表单中使用captchacaptcha.php标记使用img,如src="captcha.php"

同样对于邮件部分,我使用了mail.php文件来验证验证码和邮件(我使用的是php邮件功能)并将它们放在根目录中。因此,表单仅对索引页面正常工作。

但是每当我去任何其他页面时,表格都会正确显示而没有验证码,因为它仅为path/captcha.php找不到图像文件的404,因此验证码图像未加载。请帮我解决这个问题。

我还想在邮件之后重定向到几个特定的​​感谢页面,所以很明显我想动态。

就像说我在关于我们的页面中,我是myurl / about-us,当我提交表单时... mail.php会将我重定向到about-us页面样式的静态谢谢页面,我将创造mannualy。

请不要建议我使用CF7,因为我现在不想使用和修改它。

任何帮助都将受到高度赞赏。

亲切的问候。

2 个答案:

答案 0 :(得分:0)

如果您的验证码文件的路径是src="captcha.php",那么您可能会获得404,因为它需要以前面的斜杠(src="/captcha.php")开头。如果您正在使用wordpress seo,那么它将在每个目录中查找captcha文件。

答案 1 :(得分:0)

听起来您的主要问题是没有考虑目录结构。

尝试使用<img src="<? bloginfo('url'); ?>/captcha.php" alt="Captcha" />参考验证码。

要在所有网页上加入mail.php,请将其移至主题文件夹,并在get_template_directory_uri()前加上包含。它可能看起来像这样:

include( get_template_directory_uri() . '/mail.php');

这些函数的作用是确保包含文件,无论它们与调用它们的文件的相对位置如何。 A little more reading on paths is available here,如果您有兴趣的话。

最后,这里是我的答案中包含的函数的两个wp codex条目:

get_template_directory_uri()
bloginfo()