Matomo/Piwik Integration 확장은 Matomo (이전의 Piwik) 추적 코드를 모든 페이지 하단에 삽입합니다. 'bot' 권한(bots) 및 'protect' 권한(sysops)을 가진 사용자의 견해를 제외할 수 있습니다.
이 확장은 Tim Laqua의 Google Analytics Integration 확장에 기초해서 작성되었습니다.
이 확장은 2018년 1월에 그의 이름을 바꾼 이후에 Piwik에서 Extension:MatomoAnalytics로 2018년 하분기에 이름이 바뀔 것입니다(자세한 설명). 다음과 같은 변경 사항이 있습니다:
|
Requirements
- MediaWiki 1.25+ (MediaWiki 1.30까지 테스트됨)
- Piwik 0.4+를 설치해서 적절히 구성된 사이트
Installation
개발자 git 서버에 접근해서 내려받습니다.
- cd /var/www/html/w/extensions
- sudo git clone https://github.com/DaSchTour/piwik-mediawiki-extension
- sudo mv piwik-mediawiki-extension/ Piwik
미디어위키 설정 LocalSettings.php 파일에 다음을 추가합니다:
wfLoadExtension( 'Piwik' );
$wgPiwikURL = "piwik-host.tld/dir";
$wgPiwikIDSite = "piwik_idsite";
Piwik에서 $wgPiwikIDSite를 사이트 ID로 설정하십시오. 첫 번째 사이트 경우의 ID는 대부분 "1"입니다. Piwik에서 최상위 메뉴의 "Administration" 링크를 클릭하고 "Websites" 페이지로 이동하십시오. 이 페이지에서 모든 웹 사이트의 목록을 찾을 수 있습니다. 웹 사이트 ID는, 모든 웹 사이트를 나열하는, 이 표의 왼쪽에 있습니다.
다음은 이 서버에서 사용하는 설정입니다:
$wgPiwikURL = "brajo.duckdns.org/";
$wgPiwikIDSite = "1";
$wgPiwikURL 설정 때에는 piwik 설치 편에서 사용한 시스템의 이름을 사용해야 합니다. 그러나 http://, https://와 같은 프로토콜을 입력해서는 안되며, 마지막에 /를 붙여줘야 합니다.
Configuration parameters
$wgPiwikDisableCookies 변수를 true로 설정하여 쿠키를 비활성화하십시오. 예제:
$wgPiwikDisableCookies = true;
Piwik 자바-스크립트 코드에서 맞춤 자바-스크립트 태그를 정의하기 위해 $wgPiwikCustomJS 변수를 정의할 수 있습니다. 예를 들어, 삽입할 단일 설정이 있는 경우는, 다음 코드를 사용하십시오:
$wgPiwikCustomJS = "_paq.push(['trackGoal', '1']);";
만약 정의할 변수가 여러 개인 경우에는; 배열을 사용하십시오. 예제:
$wgPiwikCustomJS = array(
"_paq.push(['setCustomVariable', '1','environment','production']);",
"_paq.push(['setCustomVariable', '1','is_user','yes']);"
);
만약 Piwik 추적기 내에서 페이지의 제목을 변경하려면, LocalSettings.php 파일에서 $wgPiwikActionName을 설정하십시오.
예를 들어, 제목을 "wiki/Title of the page"로 포함시키기 위해서는, $wgPiwikUsePageTitle을 true로 설정하고 $wgPiwikActionName을 wiki/로 설정할 수 있습니다. 확장 프로그램은 piwik_action_name = 'wiki/Title of the page'을 출력합니다;
$wgPiwikIgnoreSysops를 false로 설정하기 위해서는, Piwik이 사용자 "protect" 권한이 있는 미디어위키 사용자가 수행한 페이지 조회수를 계산할 수 있습니다. 기본적으로, sysop 사용자는 이 권한을 가지므로 - 기본적으로 - 페이지 방문 횟수로 계산되지 않습니다. 기본값: $wgPiwikIgnoreSysops = true.
$wgPiwikIgnoreBots를 false로 설정하면, Piwik이 bot 권한이 있는 미디어위키 사용자가 수행한 페이지 조회수를 계산할 수도 있습니다. 기본적으로 페이지 조회수로는 계산되지 않습니다. 기본값: $wgPiwikIgnoreBots = true.
자바-스크립트가 비활성화되었을 때, 숨겨진 이미지를 사용하는 대체 방법이 있습니다. 'http', 'https', 'auto'(위키에서 사용하는 프로토콜에 따라 프로토콜을 자동으로 설정)중 하나의 값으로 $wgPiwikProtocol을 사용하여, 이 이미지를 호출하는 프로토콜(HTTP 또는 HTTPS)을 설정할 수 있습니다.
만약 Piwik이 2.7.0이상인 경우에는, PiWik에 로그인한 사용자의 사용자 이름을 저장하려면 $wgPiwikTrackUsernames를 설정할 수 있습니다.
만약 CDN을 사용하여 "piwik.js" 파일을 배포하는 경우에는, this pull request (2.4.3 이상)이 포함된 버전이 필요하며, $wgPiwikJSFileURL = 'assets.example.org/piwik.js'를 설정할 수 있습니다("http://" 또는 "https://" 프로토콜을 쓰지 마십시오, 자동으로 추가됩니다); 매개 변수 $wgPiwikURL은 분석을 수집하는 Piwik 서버로 구성되어야 합니다.
Tracking with MobileFrontend
Hooks/SkinAfterBottomScripts의 bug로 인해, 'Mobile view' 모드가 MobileFrontend Extension과 함께 사용되는 경우에 Piwik Integration 기능이 작동하지 않습니다.
두 가지 뷰를 모두 추적하고자 하는 경우에는, LocalSettings.php에서 Piwik Integration 항목을 주석 처리하거나 지우고, 그리고 다음을 추가하십시오:
$wgUseSiteJS = true;
그런 다음 Piwik 대시 보드에 생성된 piwik tracking code를 MediaWiki:Common.js에 붙여 넣습니다. Piwik은 이제 데스크톱 보기와 모바일보기에서 사용자를 추적합니다. 주의 사항: 이 해결 방법은 현재 VisualEditor Extension을 손상시킵니다. (2015-10-01)
Piwik configuration optimized for MediaWiki
Search parameters
기본적으로 Piwik은 미디어위키에서 사용하는 URL 매개 변수("search")가 기본 인식 매개 변수이기 때문에, 내부 검색 엔진(Special:Search 페이지)에 대한 검색을 인식합니다.
이것은 두 개의 매개 변수를 설정하여 약간 향상시킬 수 있습니다:
- "Query parameter" = "search": 기본값과 비교하여 오탐을 제거합니다;
- "Category parameter" = "profile": Piwik은 미디어위키 검색 페이지 상단에 프로필을 검색 카테고리로 인식합니다.
이는 Administration > Websites > Settings > Tracking Internal Site Search에서 전역 매개 변수로 사용할 수 있지만, Administration > Websites > Manage > [your wiki] > Edit에서 "Use default Site Search parameters"을 선택 취소하고 매개 변수를 채우십시오.