본문 바로가기
미디어위키

Extension Wikibase

by 다움위키 2023. 12. 29.

위키피디아 재단을 제외하고는 Wikibase 확장은 거의 필요하지 않지만, 영문 위키피디아의 템플릿을 사용하려면, wikibase 관련 테이블을 요구하는 경우가 있습니다.

여기서는 단순히 테이블을 생성하는 것만을 다루고자 합니다.

Installation

이 사이트처럼 미디어위키를 git 버전을 설치했다면, 이미 Wikibase 확장은 이미 받아져 있는 상황입니다. 그렇지 않은 경우에는, 확장을 별도로 받아야 합니다.

미디어위키 확장 내려받기 지면에서 해당 판을 내려받아서 정해진 위치로 이동시킵니다.

MediaWiki Git version

만약 미디어위키 알파 버전을 이용하고 있다면, 하위 모듈을 가져오십시오.

  • cd extensions/Wikibase
  • sudo git submodule update --init --recursive

Fetch all dependencies

Wikibase 확장 디렉토리로 이동을 해서 모든 의존성 패키지를 받아옵니다:

  • cd extensions/Wikidbase
  • sudo composer update --no-dev

Adjust LocalSettings.php

필요에 따라 Repository와 Client를 별도로 활성화할 수 있지만, 둘 다 활성화를 해야 템플릿들이 제대로 동작을 합니다.

미디어위키 설정 LocalSettings.php 파일에 다음을 추가합니다:

$wgEnableWikibaseRepo = true;
$wgEnableWikibaseClient = true;
require_once "$IP/extensions/Wikibase/repo/Wikibase.php";
require_once "$IP/extensions/Wikibase/repo/ExampleSettings.php";
require_once "$IP/extensions/Wikibase/client/WikibaseClient.php";
require_once "$IP/extensions/Wikibase/client/ExampleSettings.php";

Run the setup scripts

데이터베이스 테이블 변경이 필요하기 필요합니다:

  • php maintenance/update.php
Query: ALTER TABLE `mw_wb_items_per_site`
MODIFY ips_site_page VARCHAR(310) NOT NULL
Function: Wikimedia\Rdbms\Database::sourceFile( /var/www/html/w/extensions/Wikibase/repo/includes/Store/Sql/../../../sql/MakeIpsSitePageLarger.sql )
Error: 1709 Index column size too large. The maximum column size is 767 bytes. (localhost)

이에 대한 몇 가지 해결책이 소개되고 있지만, 제 경우에는 동작하는 것이 없었습니다. 여기서는 해당 sql 파일에서 310을 191로 바꾸어서 업데이트했습니다.

추가적인 Wikibase php 스크립트를 수행하면, 검색시 로컬 검색이 되는 것이 아니라, wikibase에 대해 동작합니다. 템들릿만 이용할 경우에는 여기까지만 수행해야 합니다.