嘿,我是新來的,聽說了很多關于這個有用的社區的資訊。我正在嘗試將我的自定義構建主題更新為 PHP 7.4,但在兼容性測驗期間我發現了這個錯誤,任何幫助將不勝感激。
我對 PHP 的了解為 0(目前)
這是代碼。
$type_terms = get_the_terms( $post->ID,"property-type" );
$type_count = count($type_terms);
if(!empty($type_terms)){
echo '<small> - ';
$loop_count = 1;
foreach($type_terms as $typ_trm){
echo $typ_trm->name;
if($loop_count < $type_count && $type_count > 1){
echo ', ';
}
$loop_count ;
}
echo '</small>';
}else{
echo ' ';
}
?>
</span>
</h5>
</div>
<div class="property-meta clearfix">
<?php
謝謝
uj5u.com熱心網友回復:
從 WordPress檔案中關于get_the_terms:
回傳:成功時 WP_Term 物件陣列,false,如果沒有術語或帖子,則不存在,失敗時 WP_Error。
這意味著get_the_terms函式將回傳以下 3 個選項中的 1 個:
- 錯誤的
- 錯誤
- 大批
如果帖子有一些“條款”,那么您將不會收到任何警告,但是當您嘗試計算一些不是有效陣列(或任何可數物件)的結果時會發生這種情況。因此您可以在嘗試計算獲取的條款之前對其進行檢查:
if(is_array($type_terms))
$type_count = count($type_terms);
else
$type_count = [];
或三元運算:
$type_count = is_array($type_terms) ? count($type_terms); : [] ;
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/407979.html
標籤:
上一篇:在PHP中獲取單擊元素的值
下一篇:解決定制產品徽章展示
