2014-06-20 2 views
1

현재 구축중인 사이트에서 일부 A/B 테스트를 수행하는 최선의 방법을 찾고 있습니다. 사이트는 WPEngine에서 호스팅되며 Wordpress를 사용합니다. 그들은 전체 페이지 캐싱을 사용하며, 어쨌든 그것이 가능해야합니다. A/B 테스트에는 각 변형에 대해 다른 HTML이 필요합니다. 변경되는 요소는 사이트의 기본 메뉴이므로 AJAX가 다른 HTTP 요청을 사용하여 동적으로로드하는 것은 좋지 않습니다.전체 페이지 캐싱으로 A/B 테스트를 수행하는 방법은 무엇입니까?

완전히 클라이언트 측 접근 방식과 다른 접근 방식을 상상할 수는 없습니다. 제 생각에는 두 변종을 페이지에 포함하고 하나만 표시하는 것입니다.

<script src="set-variant.js"></script> <!-- sets variant variable --> 
<div id="variants"> 
<!-- <div id="variant1"></div> --> 
<!-- <div id="variant2"></div> --> 
</div> 
<script> 

if(variant==1){ 
    document.write(retrieveVariant1FromComment()); 
} else { 
    document.write(retrieveVariant2FromComment()); 
} 
</script> 

그것은 작동하지만, 이상한 보인다 (차라리 ... document.write를을 피할 것)도 나는 SEO에 대한 확실하지 않다.

누구든지 페이지를 캐시 할 때이 작업을 수행하는 더 좋은 방법을 알고 있습니까? 추천 사항이 있으십니까?

답변

2

자바 스크립트로 변형 된 콘텐츠를 렌더링하는 일반적인 방법은 일반적이며 Optimizely와 같은 도구가 어떻게 작동하는지 알려줍니다. (AJAX가 관련되어있을 수도 있지만, 문제가되지 않도록 구성되고 최적화 될 수 있습니다.) Optimizely 또는 유사한 것을 사용하기를 원할 경우 조직에서 응용 프로그램 코드를 변경하지 않고도 A/B 테스트를 수행 할 수 있습니다 때마다. 여기

두 개의 서로 다른 서버 측 방법은 다음과 같습니다

  • 은 (아마도 뒤에서 코드를 공유하기보다는 실제로 전체 페이지에 대한 코드를 복사) 다른 URL에 하나 개의 변형을 넣고 사용자를 리디렉션 누가해야 그 다른 URL에 대한 변종을보십시오. Google 애널리틱스 콘텐츠 실험은 이러한 방식으로 작동합니다. 분명한 단점은 사용자가 다른 URL을보고 북마크 할 수 있기 때문에 실험이 끝난 후에도 변형 URL에서 일반 URL로 다시 리디렉션해야 할 수 있습니다.

  • 캐시 키를 지정할 수있는 캐싱 시스템을 사용하는 경우 캐시 키에 변형을 추가하기 만하면됩니다. 이 페이지는 각 변형이 처음으로 렌더링되고 이후에 캐시 될 때 렌더링됩니다. 나는 이것이 당신의 도구로 가능한지 여부를 모르겠습니다. SEO, Google does run Javascript에 대해서는

, 그래서 당신은 검색 엔진에 색인 싶지 않아 변종을 표시하지 않습니다. (Google의 검색 엔진이 Google 실험을 처리하는 방법을 모르겠습니다.)