在WordPress的数据库中,在其中一个插件中,值作为数组从管理员输入到字段中。现在我想从该数组中获取值并显示在页面中。
我创建了一个函数,这个很好用。
// Pull district from database
function get_district(){
global $wpdb;
$current_demand = get_metadata('post', 205, 'field_52a7cb0d1edb0');
return $current_demand;
}
在我想使用数组值的页面上,我做了var_dump来检查结果。这也很好
var_dump(get_district());
这些值以这种格式从结果中返回。据我所知,这是一个数组。
array(1) {
[0]=> array(12) {
["key"]=> string(19) "field_52a7cb0d1edb0"
["label"]=> string(8) "District"
["name"]=> string(8) "district"
["type"]=> string(6) "select"
["instructions"]=> string(0) ""
["required"]=> string(1) "0"
["choices"]=> array(10) {
["suva"]=> string(4) "Suva"
["nausori"]=> string(7) "Nausori"
["nadi"]=> string(4) "Nadi"
["lautoka"]=> string(7) "Lautoka"
["ba"]=> string(2) "Ba"
["tavua"]=> string(5) "Tavua"
["rakiraki"]=> string(8) "RakiRaki"
["tailevu"]=> string(7) "Tailevu"
["navua"]=> string(5) "Navua"
["labasa"]=> string(6) "Labasa"
}
["default_value"]=> string(0) ""
["allow_null"]=> string(1) "0"
["multiple"]=> string(1) "0"
["conditional_logic"]=> array(3) {
["status"]=> string(1) "0"
["rules"]=> array(1) {
[0]=> array(2) {
["field"]=> string(4) "null"
["operator"]=> string(2) "=="
}
}
["allorany"]=> string(3) "all"
}
["order_no"]=> int(1)
}
}
因此,我接下来要做的是将其分解,并从数组中查找特定的值。现在我正在功能上运行此代码
foreach(get_district() as $district => $key){
$test = $key["choices"];
var_dump($test);
}
上述代码返回的结果为
array(10) {
["suva"]=> string(4) "Suva"
["nausori"]=> string(7) "Nausori"
["nadi"]=> string(4) "Nadi"
["lautoka"]=> string(7) "Lautoka"
["ba"]=> string(2) "Ba"
["tavua"]=> string(5) "Tavua"
["rakiraki"]=> string(8) "RakiRaki"
["tailevu"]=> string(7) "Tailevu"
["navua"]=> string(5) "Navua"
["labasa"]=> string(6) "Labasa"
}
这是我的问题,我现在如何将值从这里获取到选择列表中。这是我想在选择列表中使用的正确值。这是我第一次看到这样的东西
试试这个
$districts =get_district(); /* get all data */
$options="";
/* loop through all the choices array */
foreach($districts[0]['choices'] as $key => $val){
$options.="<option value='".$key."'>".$val."</option>";
/* append the options of select in $options */
}
在html 中
<select name="districts">
<?php echo $options; ?>
</select>
foreach循环是您的最佳选择。
<?php
$selectData = get_district();
$selectData = $selectData[0]['choices'];
$select = "<select>";
foreach($selectData as $key => $value){
$select .= "<option value='$value'>$key</option>";
}
$select .= "</select>";