MW WP Formで送信完了画面に遷移しない時の確認

MW WP Formで送信完了画面に遷移しない時の確認

MW WP Formでフォームを作った時に、完了画面を設定ましたのに、
入力→確認画面までいくのですが送信ボタンを押しても完了画面に行かず、入力画面に戻るという不具合です。

MW WP Formフォームがメール送信ボタン後に、完了画面に遷移しない時にURLの後ろに「url?doing_wp_cron=1634094294.8886940479278564453125」が付いてました。

調べて「ALTERNATE_WP_CRON」は原因になりました、WordPressの予約投稿が失敗するからALTERNATE_WP_CRONをtureにしたことです。

define('ALTERNATE_WP_CRON', true);

以下の方法で解決できました。

ALTERNATE_WP_CRONとは

cronは、指定したタイミングでプログラムが実行される仕組みのことで、予約投稿した記事の公開をしたりするのに使います。

しかしcronはサーバーで設定する必要があり、WordPressの予約投稿はcronのように動いているだけの擬似的なものです。

解決方法

wp-config.phpのcronを停止させます。


// define('ALTERNATE_WP_CRON', true);
define('DISABLE_WP_CRON', 'true');

define(‘ALTERNATE_WP_CRON’, true);をそのまましたい時は htaccessに追加

RewriteEngine On
RewriteCond %{QUERY_STRING} (^|&)doing_wp_cron= [NC]
RewriteRule (.*) /$1? [R=301,L]

参考サイト:
https://obrienmedia.co.uk/help/why-is-doing_wp_cron-being-added-to-my-urls

次回は擬似cronを停止、wp-cron.phpをcronで動かす方法を紹介します。

SNSシェア

WP TECH WordPress技術専門 Tips

コーポレートサイトへ

WP TECH WordPress技術専門 Tips

採用サイトへ