Title: tnakaの返信 | WordPress.org 日本語

---

# tnaka

  [  ](https://ja.wordpress.org/support/users/tnaka/)

 *   [プロフィール](https://ja.wordpress.org/support/users/tnaka/)
 *   [作成したトピック](https://ja.wordpress.org/support/users/tnaka/topics/)
 *   [作成した返信](https://ja.wordpress.org/support/users/tnaka/replies/)
 *   [返信したトピック](https://ja.wordpress.org/support/users/tnaka/replied-to/)
 *   [エンゲージメント](https://ja.wordpress.org/support/users/tnaka/engagements/)
 *   [お気に入り](https://ja.wordpress.org/support/users/tnaka/favorites/)

 返信を検索

## フォーラムへの返信

3件の返信を表示中 - 1 - 3件目 (全3件中)

 *   フォーラム: [プラグイン](https://ja.wordpress.org/support/forum/plugins/)
    
   返信が含まれるトピック: [「mw wp form」でテキスト項目とチェックボックスでどちらかが入力されたら必須判定したい](https://ja.wordpress.org/support/topic/%e3%80%8cmw-wp-form%e3%80%8d%e3%81%a7%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88%e9%a0%85%e7%9b%ae%e3%81%a8%e3%83%81%e3%82%a7%e3%83%83%e3%82%af%e3%83%9c%e3%83%83%e3%82%af%e3%82%b9/)
 *  トピック投稿者 [tnaka](https://ja.wordpress.org/support/users/tnaka/)
 * (@tnaka)
 * [7年前](https://ja.wordpress.org/support/topic/%e3%80%8cmw-wp-form%e3%80%8d%e3%81%a7%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88%e9%a0%85%e7%9b%ae%e3%81%a8%e3%83%81%e3%82%a7%e3%83%83%e3%82%af%e3%83%9c%e3%83%83%e3%82%af%e3%82%b9/#post-11658774)
 * 動作が確認できました！
 * なんどもご教示いただきありがとうございました！
 *   フォーラム: [プラグイン](https://ja.wordpress.org/support/forum/plugins/)
    
   返信が含まれるトピック: [「mw wp form」でテキスト項目とチェックボックスでどちらかが入力されたら必須判定したい](https://ja.wordpress.org/support/topic/%e3%80%8cmw-wp-form%e3%80%8d%e3%81%a7%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88%e9%a0%85%e7%9b%ae%e3%81%a8%e3%83%81%e3%82%a7%e3%83%83%e3%82%af%e3%83%9c%e3%83%83%e3%82%af%e3%82%b9/)
 *  トピック投稿者 [tnaka](https://ja.wordpress.org/support/users/tnaka/)
 * (@tnaka)
 * [7年前](https://ja.wordpress.org/support/topic/%e3%80%8cmw-wp-form%e3%80%8d%e3%81%a7%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88%e9%a0%85%e7%9b%ae%e3%81%a8%e3%83%81%e3%82%a7%e3%83%83%e3%82%af%e3%83%9c%e3%83%83%e3%82%af%e3%82%b9/#post-11658694)
 * ありがとうございます。
 * チェックボックス＆チェックボックス、テキスト＆チェックボックスでの動作は確認でき
   ましたが、今度はテキスト＆テキストで動作しませんでした。
 * 度々恐れ入りますが、解決策等あればご教示お願いします。
 *   フォーラム: [プラグイン](https://ja.wordpress.org/support/forum/plugins/)
    
   返信が含まれるトピック: [「mw wp form」でテキスト項目とチェックボックスでどちらかが入力されたら必須判定したい](https://ja.wordpress.org/support/topic/%e3%80%8cmw-wp-form%e3%80%8d%e3%81%a7%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88%e9%a0%85%e7%9b%ae%e3%81%a8%e3%83%81%e3%82%a7%e3%83%83%e3%82%af%e3%83%9c%e3%83%83%e3%82%af%e3%82%b9/)
 *  トピック投稿者 [tnaka](https://ja.wordpress.org/support/users/tnaka/)
 * (@tnaka)
 * [7年前](https://ja.wordpress.org/support/topic/%e3%80%8cmw-wp-form%e3%80%8d%e3%81%a7%e8%a4%87%e6%95%b0%e3%81%ae%e3%83%86%e3%82%ad%e3%82%b9%e3%83%88%e9%a0%85%e7%9b%ae%e3%81%a8%e3%83%81%e3%82%a7%e3%83%83%e3%82%af%e3%83%9c%e3%83%83%e3%82%af%e3%82%b9/#post-11658683)
 * ありがとうございます、大変助かりました。
 * 以下のソースコードで、テキスト＆テキスト、テキスト＆チェックボックスはいづれか
   必須という条件でのバリデーションは実現することができました。
 * しかし、チェックボックス＆チェックボックスだと動作しないようです。
 * 何か、追記なりすれば動作するのでしょうか？
 *     ```
       if ( class_exists( 'MW_WP_Form_Abstract_Validation_Rule' ) ) {
       	class MW_WP_Form_Validation_Rule_AnyRequired extends MW_WP_Form_Abstract_Validation_Rule {
       		protected $name = 'anyrequired';
   
       		public function rule( $key, array $options = array() ) {
       			$value = $this->Data->get( $key );
       			if ( ! is_null( $value ) ) {
   
       				$targets = array_map( 'trim', explode( ',', $options['target'] ) );
       				$targets[] = $key;
   
       				$count = 0;
       				foreach ( $targets as $target ) {
       					$target_value = $this->Data->get( $target );
       					if ( ! empty( $target_value ) || ! MWF_Functions::is_empty( $target_value ) ) {
       						$count++;
       					}
       				}
       				if ( $count == 0 ) {
       					$defaults = array(
       						'target' => null,
       						'message' => sprintf( '%s のいずれも未入力です。', implode( ', ', $targets ) )
       					);
       					$options = array_merge( $defaults, $options );
       					return $options['message'];
       				}
       			}
       		}
   
       		public function admin( $key, $value ) {
       			$target = '';
       			if ( is_array( $value[$this->getName()] ) && isset( $value[$this->getName()]['target'] ) ) {
       				$target = $value[$this->getName()]['target'];
       			}
       			?>
       			<table>
       				<tr>
       					<td>いずれか必須項目</td>
       					<td>
       						<input type="text" value="<?php echo esc_attr( $target ); ?>" name="<?php echo MWF_Config::NAME; ?>[validation][<?php echo $key; ?>][<?php echo esc_attr( $this->getName() ); ?>][target]" />
       						<span class="mwf_note">（カンマ区切り）</span>
       					</td>
       				</tr>
       			</table>
       			<?php
       		}
       	}
   
       	function mwform_validation_rule_anyrequired( $validation_rules ) {
       		$instance = new MW_WP_Form_Validation_Rule_AnyRequired();
       		$validation_rules[$instance->getName()] = $instance;
       		return $validation_rules;
       	}
   
       	add_filter( 'mwform_validation_rules', 'mwform_validation_rule_anyrequired' );
       }
       ```
   

3件の返信を表示中 - 1 - 3件目 (全3件中)