質問: 1)デフォルトのコメントフィールド(name,email)の入力チェックは /wp-include/comment.php のwp_handle_comment_submission()で処理されている 2)テーマ内のfunction.phpで以下のようにした場合、1の処理のあとに実行される add_filter( 'preprocess_comment', 'verify_comment_meta_data' ); function verify_comment_meta_data( $commentdata ) { if ( empty( $_POST['additional_field'] ) ) wp_die( __( 'Error: please fill the required field (additional_field).' ) ); return $commentdata; } 3)気持ち悪いから1と2を同時にしたいのですが、wp_handle_comment_submission()の処理前のタイミングで実行できるフィルターフックや方法はないのでしょうか (wp-include/comment.phpを直接編集する方法は取りたくない) ない場合、結局コメントのsubmitを捕捉してjsを使った処理をするしかないのでしょうか
回答: 言語が英語なのか日本語なのか不明なんですが、英語だとすると ``` function my_original_text( $translated ) { if ( $translated === 'ERROR: please fill the required fields (name, email).' ) { $translated = "任意の表示したい文言"; } return $translated; } add_filter( 'gettext', 'my_original_text' ); ``` こんな感じで変更できます。 もし日本語だったらifの部分を以下にすれば良いです。 ``` if ( $translated === 'エラー: 必須項目 (名前、メールアドレス) を入力してください。' ) { ``` 書き換えが他の部分に影響する場合は ``` if ( is_single() && $translated === 'Email' ) { $translated = 'めーるあどれす'; } ``` is_single()等でページを限定すれば良いです。