WordPress 联系表 7:发送按钮不提交,重定向到同一页面(jquery/锚点导航)
-
06-07-2019 - |
题
我正在开发一个使用 jquery.slideto.js 导航系统和 html 锚点的 WordPress 页面。我正在使用 Contact Form 7 插件
当按下“发送”按钮时,表单不会提交,并且包含的 jQuery 验证脚本不会触发。相反,它只是重新加载当前页面而不提交。
我已将表单包含在另一个页面上,没有所有额外的代码,并且表单确实发送,但是 jQuery 验证都不起作用,并且它通过将“#wpcf7-f1-p93-o1”附加到当前 URL 来导航到新页面
我在模板文件中使用以下代码
<?php
global $wpcf7_contact_form;
if ( ! ( $wpcf7_contact_form = wpcf7_contact_form( 1 ) ) )
return 'Contact form not found!';
$form = $wpcf7_contact_form->form_html();
echo $form;
?>
问题页面的url是:www.beattrainsoundsystem.com/home#contact(或单击导航中的“联系”链接)
工作但有问题的页面的网址是:www.beattrainsoundsystem.com/test
我已经禁用了除联系表单 7 之外的所有 WordPress 插件以及除 jQuery 之外的所有脚本,以缩小问题根源。我确实需要在周一继续开发,因此在接下来的 24 小时内(从美国东部时间周日凌晨 1:48 开始)它将处于调试模式。非常感谢你的帮助!
如果您需要我对页面进行任何更改以帮助您调试,请告诉我。
解决方案
这里有很多问题,但这里是解决方案问题的主要问题:
我在上述问题中引用的 PHP 是有缺陷的。我认为重要的是(至少在我的情况下有这么多其他脚本/插件/变量等...)联系表单 7 坚持使用他们在编辑器中给您的标签(“[contact-form 1”联系表单 1 “]”)。所以我的解决方案是在名为“contactForm”的类别中创建一个名为“contactForm”的帖子,并从主页检索该帖子:
<?php $contact_drop = new WP_Query('p=109'); while ($contact_drop->have_posts()) : $contact_drop->the_post(); $do_not_duplicate = $post->ID; ?>
<div id="contact-slide">
<?php the_content(); ?>
</div>
<?php endwhile; ?>
我会向有类似问题的任何人推荐该解决方案。