夏井光太郎

フォーラムへの返信

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • 夏井光太郎
    参加者
    0

    お返事いただきありがとうございます!

    まず結果をお伝えしますと、PHP Deprecated〜のエラーは出力されなくなりました。

    【ソースコードの誤りについて】
    先に提示したコードに誤りがあったことをお詫びします。
    is_page()による条件分岐内でエラーログ出力の処理が機能していないようでした。
    このため、条件分岐の外に$reponser->get()を記述し、この値に応じて処理を追加するように修正いたしました。

    add_filter(
    	'snow_monkey_forms/administrator_mailer/args',
    	function ($headers, $responser, $setting) {
    		$inquiry = $responser->get('inquiry');
    		$recipient = "";
    
    		//inquiryがnullでない場合のみで以下の処理を行う
    		if (!is_null($inquiry)) {
    
    			// switch文(inquiryの値に応じた送信先の設定
    
    			$headers['to'] = $recipient;
    
    			// if文の中でログ出力A
    
    		}
    
    		// if文の中でログ出力B
    
    		return $headers;
    	},
    	10,
    	3
    );

    【エラーログの出力箇所について】
    エラーログはwp-content/debug.logに出力されておりました。
    ご提示いただいた以下のコードに書き換えたところ、wp-content/themes/snow-monkey/error_logに出力されました。

    error_log('$inquiry: ' . print_r($inquiry, true), 3, get_template_directory() . '/error_log');
    

    【カスタマイズについて】
    ・子テーマ=利用無し
    ・ My Snow Monkey によるテンプレートの上書き=snow_monkey_template_part_root_hierarchy_template-parts/を利用しています。
    snow_monkey_get_template_part_render=利用しています。

    エラーの再現がなくなったため、これらのカスタマイズとの関係はわかりませんでした。

    以上です。
    最初に出力されたエラーが再現しなくなった理由がハッキリとわかりませんが、ひとまず正常に動作しているという認識です。

    お手数おかけして、申し訳ありませんでした。

    0
    いいねをした人: 居ません
    夏井光太郎
    参加者
    0

    お問い合わせフォームにラジオボタンを設置し、ラジオボタンの選択に応じて送信先を変更する意図で処理を実装しております。NAME属性の値はinquiryとしています。
    ラジオボタンのOPTIONSlabelは記入せず、valueのみを改行で入力しております。

    add_filter(
    	'snow_monkey_forms/administrator_mailer/args',
    	function ($headers, $responser, $setting) {
    		//お問い合わせフォームページのみで以下の処理を行う
    		if (is_page('contact')) {
    			$inquiry = $responser->get('inquiry');
    			$recipient = "";
    			switch ($inquiry) {
    				case "ボタン1":
    					$recipient = "メールアドレス1";
    					break;
    				case "ボタン2":
    					$recipient = "メールアドレス2";
    					break;
    				case "ボタン3":
    					$recipient = "メールアドレス3";
    					break;
    				case "ボタン4":
    					$recipient = "メールアドレス4";
    					break;
    			}
    			// // 【開発用】$inquiry の値をデバッグログに出力
    			// if (defined('WP_DEBUG') && WP_DEBUG && defined('WP_DEBUG_LOG') && WP_DEBUG_LOG) {
    			// error_log('$inquiry: ' . print_r($inquiry, true));
    			// }
    			$headers['to'] = $recipient;
    		}
    		return $headers;
    	},
    	10,
    	3
    );

    ご確認よろしくお願いいたします。

    0
    いいねをした人: 居ません
    夏井光太郎
    参加者
    0

    snow_monkey_forms/administrator_mailer/args フィルターフック内のエラー出力処理をコメントアウトし、my-snow-monkey.php に以下の記述を追加してみたところ、ログは出力されましたが、PHP Deprecated〜 のエラーは表示されませんでした。

    // フィルターフックの外でエラーログを出力
    if (defined('WP_DEBUG') && WP_DEBUG && defined('WP_DEBUG_LOG') && WP_DEBUG_LOG) {
      error_log("test");
    }

    Snow Monkey Formsの「別のフィルターフックを試した方が良いか」とも考えましたが、適当なフィルターフックがわからず……(汗)

    上記の対応でよろしかったでしょうか。
    ご確認お願いいたします。

    0
    いいねをした人: 居ません
    夏井光太郎
    参加者
    0

    ご確認いただきありがとうございます!
    より適切なcssもご案内いただき助かりました!

    0
    いいねをした人: 居ません
4件の投稿を表示中 - 1 - 4件目 (全4件中)

ドキュメント

Snow Monkey の設定方法やマニュアルを掲載しています。

ドキュメント

フォーラム

Snow Monkey の使い方やカスタマイズについてのご質問・ご要望等はサポートフォーラムで行っています。サポートフォーラムは誰でも閲覧できますが、書き込みできるのは Snow Monkey 購入者のみとなります。

サポートフォーラム

よくあるご質問

Snow Monkey のサービスについて不明な点がある場合は、まずはよくあるご質問をご確認ください。

よくあるご質問

お問い合わせ

よくあるご質問を見ても解決しなかった場合、試用版の申請については問い合わせフォームからお願いいたします。

お問い合わせ

Snow Monkey は Gutenberg ブロックエディターに対応した 100%GPL の WordPress テーマです。拡張性を意識した開発をおこなっており、カスタマイザーとブロックでスピーディーにサイトを立ち上げるだけでなく、CSS やフックを駆使した高度なカスタマイズにも柔軟に対応できます。