如何解决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 规则重做相同的代码)
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 举报,一经查实,本站将立刻删除。