add_filter facet_value 索引器行

问题描述

我有这段代码适用于 plugin 1 > facetwp 过滤器

function prefix_row_data( $row,$object_id,$facet ) {

    // We only process date facet type.
    if ( 'date' !== $facet['type'] ) {
        return $row;
    }

    // We change the date format to match date facet format (Y-m-d or Y-m-d h:i:s).
    $row['facet_value'] = date( 'Y-m-d',strtotime( $row['facet_value'] ) );
    // Return row to insert in the index table.
    return $row;

}

add_filter( 'wp_grid_builder/indexer/row','prefix_row_data',10,3 );

它把我的下拉菜单变成了一个范围,没什么特别的...... /indexer/row

然后我切换到plugin 2 > gridbuilder 原理是一样的

(请仔细阅读我们现在在插件编号 2 我正在尝试根据他们的文档使用 gridbuilder 规则重做相同的代码)

这里是他们的文档,我假设等效过滤器

enter image description here

function prefix_row_data( $row,$facet ) {

    // We only process date facet type.
    if ( 'baths' !== $facet['type'] ) {
        return $row;
    }
    
     $range = $params['facet_value'];
        switch ( true ) {
            case ( $range <= 1 ):
                $params['facet_value'] = '1';
                $params['facet_display_value'] = '1';
                break;
            case ( $range <= 2 ):
                $params['facet_value'] = '2';
                $params['facet_display_value'] = '2';
                break;
            case ( $range <= 3 ):
                $params['facet_value'] = '3';
                $params['facet_display_value'] = '3';
                break;
            case ( $range <= 4 ):
                $params['facet_value'] = '4';
                $params['facet_display_value'] = '4';
                break;
            case ( $range >= 5 ):
                $params['facet_value'] = '999';
                $params['facet_display_value'] = '5+';
                break;   
            default: // no value
                $params['facet_value'] = ''; // skip indexing
        }
    } 
    return $params;
}

add_filter( 'wp_grid_builder/indexer/row',3 );

毫无疑问,我向您展示了我尝试做的事情......我知道它不会那样工作...... 但你懂的。

根据他们的文档,他们为我的代码编写的逻辑是什么? php专家不客气

//Function to validate the entry made by user in Property Form

function validateEntry() {

  //declare a variable and set the reference of active google sheet

  var myGoogleSheet = SpreadsheetApp.getActiveSpreadsheet();

  var shUserForm = myGoogleSheet.getSheetByName("User Form");

  var ui = SpreadsheetApp.getUi(); //to create the instance of the user interface to show the alert

  shUserForm.getRange("C7").setBackground('#FFFFFF');
  shUserForm.getRange("C9").setBackground('#FFFFFF');
  shUserForm.getRange("C11").setBackground('#FFFFFF');
  shUserForm.getRange("C13").setBackground('#FFFFFF');
  shUserForm.getRange("C15").setBackground('#FFFFFF');
  shUserForm.getRange("C17").setBackground('#FFFFFF');
  shUserForm.getRange("C19").setBackground('#FFFFFF');
  shUserForm.getRange("C21").setBackground('#FFFFFF');
  shUserForm.getRange("C24").setBackground('#FFFFFF');
  shUserForm.getRange("C26").setBackground('#FFFFFF');
  shUserForm.getRange("C28").setBackground('#FFFFFF');
  shUserForm.getRange("C30").setBackground('#FFFFFF');
  shUserForm.getRange("C32").setBackground('#FFFFFF');

  //Validating Street #
  if (shUserForm.getRange("C7").isBlank() == true) {

    ui.alert("Please enter Street #");
    shUserForm.getRange("C7").activate();
    shUserForm.getRange("C7").setBackground('#FF0000');
    return false;
  }

  //Validating Prefix
  if (shUserForm.getRange("C9").isBlank() == true) {

    ui.alert("Please enter Prefix");
    shUserForm.getRange("C9").activate();
    shUserForm.getRange("C9").setBackground('#FF0000');
    return false;
  }

  //Validating Street Name
  if (shUserForm.getRange("C11").isBlank() == true) {

    ui.alert("Please enter Street Name");
    shUserForm.getRange("C11").activate();
    shUserForm.getRange("C11").setBackground('#FF0000');
    return false;
  }

  //Validating Suffix
  if (shUserForm.getRange("C13").isBlank() == true) {

    ui.alert("Please enter Street Suffix");
    shUserForm.getRange("C13").activate();
    shUserForm.getRange("C13").setBackground('#FF0000');
    return false;
  }

  //Validating City
  if (shUserForm.getRange("C15").isBlank() == true) {

    ui.alert("Please enter City");
    shUserForm.getRange("C15").activate();
    shUserForm.getRange("C15").setBackground('#FF0000');
    return false;
  }

  //Validating State
  if (shUserForm.getRange("C17").isBlank() == true) {

    ui.alert("Please enter State");
    shUserForm.getRange("C17").activate();
    shUserForm.getRange("C17").setBackground('#FF0000');
    return false;
  }

  //Validating County
  if (shUserForm.getRange("C19").isBlank() == true) {

    ui.alert("Please enter County");
    shUserForm.getRange("C19").activate();
    shUserForm.getRange("C19").setBackground('#FF0000');
    return false;
  }

  //Validating Zip Code
  if (shUserForm.getRange("C21").isBlank() == true) {

    ui.alert("Please enter Zip Code");
    shUserForm.getRange("C21").activate();
    shUserForm.getRange("C21").setBackground('#FF0000');
    return false;
  }

  //Validating Property Type
  if (shUserForm.getRange("C24").isBlank() == true) {

    ui.alert("Please enter Property Type");
    shUserForm.getRange("C24").activate();
    shUserForm.getRange("C24").setBackground('#FF0000');
    return false;
  }

  //Validating Year Built
  if (shUserForm.getRange("C26").isBlank() == true) {

    ui.alert("Please enter Year Built");
    shUserForm.getRange("C26").activate();
    shUserForm.getRange("C26").setBackground('#FF0000');
    return false;
  }

  //Validating SQFT
  if (shUserForm.getRange("C28").isBlank() == true) {

    ui.alert("Please enter Property Sq ft");
    shUserForm.getRange("C28").activate();
    shUserForm.getRange("C28").setBackground('#FF0000');
    return false;
  }

  //Validating Bed
  if (shUserForm.getRange("C30").isBlank() == true) {

    ui.alert("Please enter Bedroom count");
    shUserForm.getRange("C30").activate();
    shUserForm.getRange("C30").setBackground('#FF0000');
    return false;
  }

  //Validating Bath
  if (shUserForm.getRange("C32").isBlank() == true) {

    ui.alert("Please enter Bathroom count");
    shUserForm.getRange("C32").activate();
    shUserForm.getRange("C32").setBackground('#FF0000');
    return false;
  }

  return true;

}

//Function to submit the data to the Database sheet

function submitData() {

  //declare a variable and set the reference of active google sheet

  var myGoogleSheet = SpreadsheetApp.getActiveSpreadsheet();

  var shUserForm = myGoogleSheet.getSheetByName("User Form");

  var datasheet = myGoogleSheet.getSheetByName("Database");

  //to create the instance of the UI environmentto use the alert features

  var ui = SpreadsheetApp.getUi();

  var response = ui.alert("Submit","Do you want to submit the data?",ui.ButtonSet.YES_NO);

  //checking the user response

  if (response == ui.Button.NO) {

    return; //to exit from this function
  }

  if (validateEntry() == true) {

    var blankRow = datasheet.getLastRow() + 1; //identify the next blank row

    //code to update database

    datasheet.getRange(blankRow,3).setValue(shUserform.getRange("C7").getValue()); //Street #

    datasheet.getRange(blankRow,4).setValue(shUserform.getRange("C9").getValue()); //Prefix

    datasheet.getRange(blankRow,5).setValue(shUserform.getRange("C11").getValue()); //Street Name

    datasheet.getRange(blankRow,6).setValue(shUserform.getRange("C13").getValue()); //suffix

    datasheet.getRange(blankRow,7).setValue(shUserform.getRange("C15").getValue()); //city
    datasheet.getRange(blankRow,8).setValue(shUserform.getRange("C17").getValue()); //state
    datasheet.getRange(blankRow,9).setValue(shUserform.getRange("C19").getValue()); //County
    datasheet.getRange(blankRow,10).setValue(shUserform.getRange("C21").getValue()); //Zip
    datasheet.getRange(blankRow,2).setValue(shUserform.getRange("C24").getValue()); //Property Type
    datasheet.getRange(blankRow,11).setValue(shUserform.getRange("C26").getValue()); //Year Built
    datasheet.getRange(blankRow,12).setValue(shUserform.getRange("C28").getValue()); //Sqft
    datasheet.getRange(blankRow,13).setValue(shUserform.getRange("C30").getValue()); //bed
    datasheet.getRange(blankRow,14).setValue(shUserform.getRange("C32").getValue()); //bath

    //Code to update the date and time

    datasheet.getRange(blankRow,15).setValue(new Date()).setNumberFormat('yyyy-mm-dd h:mm');

    //Submitted By

    datasheet.getRange(blankRow,16).setValue(Session.getActiveUser().getEmail());

    ui.alert(' "New Data Saved - Property ' + shUserForm.getRange("C11").getValue() + '"');

    shUserForm.getRange("C7").clear();
    shUserForm.getRange("C9").clear();
    shUserForm.getRange("C11").clear();
    shUserForm.getRange("C13").clear();
    shUserForm.getRange("C15").clear();
    shUserForm.getRange("C17").clear();
    shUserForm.getRange("C19").clear();
    shUserForm.getRange("C21").clear();
    shUserForm.getRange("C24").clear();
    shUserForm.getRange("C26").clear();
    shUserForm.getRange("C28").clear();
    shUserForm.getRange("C30").clear();
    shUserForm.getRange("C32").clear();

  }

}

我正在尝试修改的当前下拉列表 {{3}}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...