【问题标题】:Contact form 7 - Add delay to re-direction after form submit联系表格 7 - 提交表格后添加延迟重定向
【发布时间】:2018-09-19 12:00:53
【问题描述】:

我希望能够为成功提交表单后设置的重定向添加延迟。

我正在使用此代码

<script>
document.addEventListener( 'wpcf7mailsent', setTimeout(function( event ) {
    location = 'https://london.tombyrom.co.uk/wp-content/uploads/2018/09/diploma.pdf';
}, false ), 3000);
</script>

但是这样做时,当您点击放置表单的主页时,它会立即将您重定向到 PDF。我不明白为什么它在页面加载时重定向?而不仅仅是当 wpcf7mailsent 事件发生时?

网址:https://london.tombyrom.co.uk

来源:https://contactform7.com/redirecting-to-another-url-after-submissions/

谢谢 汤姆

【问题讨论】:

    标签: javascript wordpress contact-form-7 dom-events


    【解决方案1】:

    您可以尝试以下方法,看看是否适合您?

    // Onsend contact form 7
    document.addEventListener( 'wpcf7mailsent', function( event ) { 
        setTimeout(function(){
            location = 'https://www.example.com/thank-you/';
        }, 2500);
    
    }, false );
    

    【讨论】:

      【解决方案2】:

      尝试使用此代码,

      您可以将代码放在functions.php文件中。

      add_action( 'wp_footer', 'redirect_cf7' );
       
      function redirect_cf7() {
      ?>
      <script type="text/javascript">
      document.addEventListener( 'wpcf7mailsent', function( event ) {
             location = 'https://www.example.com/thank-you/';
      }, false );
      </script>
      <?php
      }

      希望,成功了!

      【讨论】:

      • wordpress 中有特定的函数可以将 javascript 文件和 css 文件排入队列。在functions.php中包含javascript,如果它恰好可以工作,那不是正确的做法。
      猜你喜欢
      • 2017-09-28
      • 2021-02-08
      • 2014-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-11
      相关资源
      最近更新 更多