숨긴 카드를 넣었는데 캐러셀은 왜 안 붙었나
한눈에 답변
네이버 이미지 캐러셀 대응으로 화면에서 숨긴 마이크로데이터 목록을 넣었는데, 실제로 캐러셀이 붙는 원리는 화면에 보이는 800×800 이미지 세트였다 — 둘은 서로 다른 것인데 앞의 것만 넣어 놓고 끝났다고 판단한 것이 문제였다. 실측해 보니 보이는 타일이 0장인 페이지가 15종이나 남아 있었고, 레이아웃 자체에 타일을 기본으로 내장해 새 페이지가 생겨도 빠지지 않게 고쳤다.
무엇을 착각했나
앞서 네이버 캐러셀 대응으로 화면에서 숨긴 마이크로데이터 목록을 여러 페이지에 넣는 작업을 했다. 그런데 실제로 캐러셀이 붙는 경쟁사의 진짜 원리는 화면에 명확히 보이는 800×800 크기의 이미지 세트였다. 숨긴 목록과 보이는 이미지 세트는 서로 다른 물건인데, 앞선 작업에서는 숨긴 쪽만 넣어 두고 이미 다 됐다고 판단했다.
실측하니 무엇이 드러났나
실제로 화면에 보이는 이미지 타일이 한 장도 없는 페이지가 15종이나 있었다. 자주 묻는 질문, 가이드 목록과 상세, 이용방법, 데이터 산출 방법, 인사이트, 플랫폼 목록, 소개 관련 4장, 정책, 개인정보, 문의, 지역 허브, 그리고 지역·분야·구군을 조합한 페이지 222개까지 전부 해당됐다. 심지어 이전에 “전 페이지 적용 완료”라고 기록해 둔 표에서도 가장 세분화된 조합 단계는 통째로 빠져 있었다.
왜 계속 빠뜨리게 됐나
타일을 각 페이지마다 손으로 넣는 구조였기 때문이다. 새 페이지가 생길 때마다 이 작업을 기억해서 추가해야 했고, 사람이 기억에 의존하는 절차는 결국 빠뜨리게 된다. 근본적인 해법은 공통 레이아웃 자체가 기본값으로 타일을 내보내게 만들어서, 새 페이지를 만들 때 아무것도 하지 않아도 타일이 붙게 하는 것이었다. 이미 자기만의 타일 세트를 본문에 갖고 있는 소수 페이지에만 끄는 옵션을 남겼다 — 같은 타일이 한 페이지에 두 번 나오면 오히려 “같은 크기 묶음”이라는 신호가 흐려지기 때문이다.
검사 도구는 왜 처음에 잘못된 숫자를 냈나
보이는 타일의 개수를 세는 검사를 새로 만들었는데, 첫 구현에서는 전체 이미지 개수에서 숨긴 카드 개수를 빼는 방식으로 계산했다. 그런데 숨긴 카드는 절대경로 URL로 적혀 있고 보이는 타일은 상대경로로 적혀 있어서, 서로 다른 형태를 세느라 정확한 개수가 나오지 않았다. 숨긴 블록을 먼저 완전히 잘라낸 뒤에 남은 것을 세는 방식으로 고치고 나서야 정확해졌다. 도구 자체를 검증할 때도, 그 도구가 정말 의도한 것을 세고 있는지 별도로 확인해야 한다는 교훈이었다.