코드에서 몇 가지 문제를 발견했습니다
1. 잘못된 위치의 url 속성
<div itemprop='itemListElement' itemscope itemtype='http://schema.org/ListItem'>
<meta itemprop='url' content='/u/elvis'>
<a href='/u/elvis' itemprop='item'>
<span itemprop='image'>
<img width="45" height="45" class="avatar" src="https://sea1.discourse-cdn.com/flex001/user_avatar/forum.reflex.dev/elvis/45/31_2.png">
</span>
<span itemprop='name'>
elvis
- elvis
</span>
</a>
</div>
itemListElement는 ListItem입니다.
ListItem에는 Thing인 item 속성이 있습니다.
ListItem에는 url 속성이 있을 수 없습니다
Thing에는 가능합니다. https://schema.org/ListItem를 참조하세요.
따라서 <meta itemprop='url' content='/u/elvis'> 줄은 item 속성 값 내에서 두 줄 아래로 이동해야 합니다.
<div itemprop='itemListElement' itemscope itemtype='http://schema.org/ListItem'>
<a href='/u/elvis' itemprop='item'>
<meta itemprop='url' content='/u/elvis'>
<span itemprop='image'>
<img width="45" height="45" class="avatar" src="https://sea1.discourse-cdn.com/flex001/user_avatar/forum.reflex.dev/elvis/45/31_2.png">
</span>
<span itemprop='name'>
elvis
- elvis
</span>
</a>
</div>
2. 누락된 position
이 부분은 다소 주관적입니다. 구글은 Carousel (ItemList) Structured Data | Google Search Central | Documentation | Google for Developers 이 속성이 필수라고 명시하고 있습니다.
즉, 구글은 "필수"라고 말합니다.
이는 "스키마에서 필수"가 아니라 "구글에서 요구"한다는 뜻입니다.
3. 깨진 Schema.org 검증기
무엇을 하는지 모르겠지만 올바르게 검증하지 못하고 있습니다. #1을 잡아내야 했을 것입니다.
