這就是我正在做的事情:
$content = array(get_post_meta($postId, 'content'));
$media = array(get_post_meta($postId, 'media'));
$yt = array(get_post_meta($postId, 'youtube'));
$max = max(count($content), count($media), count($yt));
$combined = [];
for($i = 0; $i <= $max; $i ) {
if(isset($content[$i])) {
$combined[] = ["type" => "content", "value" => $content[$i]];
}
if(isset($media[$i])) {
$combined[] = ["type" => "media", "value" => $media[$i]];
}
if(isset($yt[$i])) {
$combined[] = ["type" => "youtube", "value" => $yt[$i]];
}
}
foreach ($combined as $key => $val) {
echo '<li>'.$val['value'].'</li>';
}
結果是:
Array
Array
Array
我希望:
media value
content value
youtube value
uj5u.com熱心網友回復:
您正在使用陣列陣列,因為get_post_meta默認回傳一個陣列,除非第三個引數$single為真。
所以試試
$content = array(get_post_meta($postId, 'content', true));
或者實際上只是
$content = get_post_meta($postId, 'content');
uj5u.com熱心網友回復:
你意識到
$content = array(get_post_meta($postId, 'content'));
創建$content為具有單個值的陣列?(值是您的函式回傳的任何值)(對于andget_post_meta()類似)這三個中的每一個都將始終只有一個元素。$media$yt
查看后面的代碼,我不確定這是否是您想要的。$max例如,將永遠是一個,并且$content[$i]永遠是你的函式回傳的值get_post_meta()- 基于顯示的結果,大概是一個陣列
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/530112.html
標籤:phpWordPress
上一篇:將字串正確拆分為陣列陣列
