virtualPageView과 가상 DOM

GTM을 사용하여 DOM에 광고를 삽입하려고 합니다. 광고 플러그인을 설치하고, <div id="adunit_x"></div>와 같은 div 컨테이너를 사용하여 다양한 빈 광고 슬롯(empty house ad types)을 설정했습니다.

하지만 virtualPageView에서 모든 광고 div 컨테이너의 id를 평가할 때, 게시물 사이의 광고는 아직 렌더링되지 않은 상태였습니다. 아마도 virtualPageView 이벤트에서 평가 트리거를 사용할 때 가상 DOM이 모든 것을 렌더링하지 않았기 때문일 것입니다.

모든 광고 div 컨테이너를 평가하기 전에 3000ms와 같은 타임아웃을 추가하면 정상적으로 동작합니다.

virtualPageView가 발화된 후 초기 가상 DOM이 렌더링되었음을 나타내는 GTM에서 활용할 수 있는 이벤트가 있을까요?

기타 표준 광고 플러그인 옵션은 모두 GDPR 또는 CCPA에 부합하지 않으므로 사용할 수 없습니다. 따라서 GTM과 쿠키 CMP를 통해 광고가 삽입될 수 있는지 여부(그리고 시점)를 제어해야 합니다.

virtualPageView는 좋지만, 실제로 부족한 것은 현재 표시 중인 페이지의 모든 요소와 위젯이 로드된 시점에 appEvents.trigger(“virtualPageLoaded”)를 통해 트리거되는 virtualPageLoaded 유형의 이벤트입니다. 이렇게 하면 GTM의 스크립트 등이 최종 DOM 트리를 쿼리할 수 있습니다. 관리자 계정으로 로그인하면 미니 프로파일러가 전체 페이지 렌더링에 걸린 시간을 표시하는데, 이때 virtualPageLoaded 이벤트를 발생시키면 좋을 것입니다.

현재 필요한 요소에 접근할 수 있을 때까지 대기하는 우회 방법을 마련했지만, 이런 방식은 마음에 들지 않습니다.