Support

Account

Home Forums General Issues Required field based on input other fields Reply To: Required field based on input other fields

  • In my first example I was missing a ) at then of if

    
    add_filter('acf/validate_value/key=field_5c66e017f8359', 'custom_validate_title', 20, 4);
    function custom_validate_title($valid, $value, $field, $input) {
      // title is required if other fields has a value
      if (!empty($_POST['acf']['field_5c6d43781bcb1']) ||
      if (!empty($_POST['acf']['field_5c66e094f835a']) ||
      if (!empty($_POST['acf']['field_5c66e0d4f835b']) ||
      if (!empty($_POST['acf']['field_5c66e130f835c']) ||
      if (!empty($_POST['acf']['field_5c703c1fd5851'])) {
        // the other fields has a value
        // check value of this field;
        if (empty($value)) {
          $valid = 'This field is required because you have added a value to some other field';
        }
      }
      return $valid;
    }
    

    if requires ==, also, no ; before the {

    
    add_filter('acf/validate_value/key=field_5c66e0d4f835b', 'custom_validate_deal1regularprice', 20, 4);
    function custom_validate_deal1regularprice($valid, $value, $field, $input) {
      // Discounted price is required if other fields has a value
      if (!empty($_POST['acf']['field_5c6d43781bcb1'])) {
        // If the other fields has a value 1
        // Check value of this field;
        if ($value == 1 ) {
          $valid = 'This field is required because you have chosen for a deal with <strong>Discount</strong>. Either fill in a <strong>Regular price</strong> below or change your deal to a deal without discount.';
        }
      }
      return $valid;
    }