발견되지 않은 오류: WP_Term 형식의 개체를 배열로 사용할 수 없습니다.
WordPress를 업데이트한 후 이 문제가 발생했습니다. 제 웹 사이트에는 다음과 같은 사용자 지정 카테고리가 포함된 사용자 지정 게시물이 있습니다.
1) 상위 카테고리:음식 | 어린이 : 감자튀김, 햄버거, 메이플 시럽...
2) 부모 카테고리: 연도 | 자녀: 2016, 2015, 2014...
3) 부모 카테고리: 국가| 자녀: 미국, 캐나다, 스페인...
커스텀 투고를 작성할 때는, 그 카테고리에서 선택하고, 필요한 카테고리를 선택해(체크 박스를 온으로 합니다).그리고 다음과 같은 것을 보여줍니다.
제목 : 새로운 레시피
내용:내 텍스트
조건 : 식품 : 마플 시럽 / 국가 : 캐나다 / 연도 : 2014
그런데 지금은 용어가 전혀 표시되지 않고 다음 오류 메시지가 나타납니다.WP_Term 유형의 개체를 배열로 사용할 수 없습니다.
저는 다음과 같은 PHP 코드를 가지고 있었습니다.이 코드는 아이 카테고리의 부모(그리고 그것을 프리픽스로서 사용)를 취득할 수 있도록 해, 순서 변경도 가능하게 했습니다.
$term_list = wp_get_post_terms($post->ID, 'project_cat', array("fields" => "all"));
$terms_hierarchy = array();
foreach ($term_list as $term_single) {
$parent = $term_single->parent;
if ($parent != 0) {
$terms_hierarchy[$parent][] = get_term($parent)->slug;
$terms_hierarchy[$parent]['children'][$term_single->term_id] = $term_single->name;
} else {
$terms_hierarchy[$parent] = $term_single;
}
}
//PHP indicated this line:
foreach ($terms_hierarchy as $key => $term) {
echo "<span>$term[0]: </span>";
if (!empty($term['children'])) {
$s_children = '';
foreach ($term['children'] as $key => $child) {
if ($term[0] == 'client') {
$tax_meta = get_term_meta($key);
if(!empty($tax_meta['external_url'][0])){
$s_children .= "<a target='_blank' href='{$tax_meta['external_url'][0]}'>$child</a>, ";
}
else {
$s_children .= $child . ', ';
}
}
else {
$s_children .= $child . ', ';
}
}
echo rtrim($s_children, ', ') . "<br />";
}
}
뭐가 잘못됐는지 누가 좀 도와주면 정말 고맙겠어?
시간 내주셔서 감사합니다
$terms_hierarchy는 배열이 아니라 표준 객체입니다.그래서...
$term['자녀']
...실제로...
$term->자녀
언급URL : https://stackoverflow.com/questions/41769716/uncaught-error-cannot-use-object-of-type-wp-term-as-array
'programing' 카테고리의 다른 글
AngularJ: 상수 (0) | 2023.03.25 |
---|---|
WordPress 사이트에서 Python 앱을 실행할 수 있습니까? (0) | 2023.03.20 |
TypeScript에서 메서드 오버로드를 수행하는 방법 (0) | 2023.03.20 |
우체부: 중첩된 JSON 개체 전송 (0) | 2023.03.20 |
Spring Boot 및 IntelliJ Idea를 사용하여 데이터베이스에서 엔티티 클래스를 생성하려면 어떻게 해야 합니까? (0) | 2023.03.20 |