我已经为我的wordpress网站创建了一个自定义联系我们表单,该表单应该适用于我网站的每个静态页面。
所以我将html放在body标签下面的header.php中,附加了激活主题的style.css文件,并为下面的表单添加了css代码,并在footer.php
中添加了jquery代码,因此正如我想要的那样,表格很好地展示了所有效果。
但主要问题是我在表单中使用captcha,captcha.php
标记使用img
,如src="captcha.php"
。
同样对于邮件部分,我使用了mail.php
文件来验证验证码和邮件(我使用的是php邮件功能)并将它们放在根目录中。因此,表单仅对索引页面正常工作。
但是每当我去任何其他页面时,表格都会正确显示而没有验证码,因为它仅为path/captcha.php
找不到图像文件的404,因此验证码图像未加载。请帮我解决这个问题。
我还想在邮件之后重定向到几个特定的感谢页面,所以很明显我想动态。
就像说我在关于我们的页面中,我是myurl / about-us,当我提交表单时... mail.php
会将我重定向到about-us页面样式的静态谢谢页面,我将创造mannualy。
请不要建议我使用CF7,因为我现在不想使用和修改它。
任何帮助都将受到高度赞赏。
亲切的问候。
答案 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条目: