在其中一个插件的WordPress数据库中,将值作为数组输入到admin的字段中。现在我想从该数组中获取值并显示在页面中。
我创建了一个函数,这很好。
// 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"
}
这是我的问题,我现在如何从这里获取值到选择列表。这是我想在选择列表中使用的正确值。这是我第一次看到这样的事情。
答案 0 :(得分:1)
试试这个
$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>
答案 1 :(得分:0)
foreach循环是您最好的选择。
<?php
$selectData = get_district();
$selectData = $selectData[0]['choices'];
$select = "<select>";
foreach($selectData as $key => $value){
$select .= "<option value='$value'>$key</option>";
}
$select .= "</select>";