我試圖從Wordpress查詢中提取json訂閱源。我需要將JSON格式化[{「id」:「1」,「title」:「title」},{「id」:「2」,「title」:「title2」}]控制json訂閱源的輸出
json_encode函數沒有拉出這種特定的格式:項目不用逗號分隔,我也錯過了最初和最後[]
我讓這個代碼迴應那些缺少的元素,這很好,但最終的逗號,因爲的回聲使腳本讀取失敗。
<?php
$args = array(
'post_type' => 'location',
'posts_per_page' => -1
);
$locations = new WP_Query($args);
if($locations -> have_posts()):
echo '[';
while ($locations->have_posts()) : $locations->the_post();
$coords = get_field('coordinates');
$pid = get_the_ID();
$json["id"] = $pid;
$json["name"] = get_the_title();
$json["lat"] = $coords['lat'];
$json["lng"] = $coords['lng'];
$json["address"] = get_field('address');
$json["address2"] = get_field('address_2');
$json["city"] = get_field('city');
$json["state"] = get_field('state');
$json["postal"] = get_field('zip_code');
$json["phone"] = get_field('office_phone');
$json["fax"] = get_field('office_fax');
$json["web"] = apply_filters('the_permalink', get_permalink());
echo json_encode($json);
echo ',';
endwhile;
echo ']';
endif;
?>
我知道呼應這些元素是不是做了正確的方式,我做錯事的編碼,這就是爲什麼它拉出沒有正確的格式。
我一直在研究幾天,我無法找到一種方法來創建json_encode回顯,並同時控制它將顯示從wordpress查詢字段。
我很欣賞任何解決方案/領導來解決這個問題。
錯誤的輸出有什麼問題? - 使用一個累積輸出數組,並通過'$ result [] = $ json;'附加單個字符串,然後只對最終的'$ result'數組進行json_encode。 – mario