미디어위키/미디어위키 익스텐션

미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Nuke 설치와 활용

씨실과 날실 2020. 4. 28. 17:00

[익스텐션 목록]

기본 익스텐션

2019/10/29 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Interwiki 설치와 활용

2020/04/28 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Nuke 설치와 활용

2020/04/28 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Renameuser 설치와 활용

2020/04/29 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) CiteThisPage 설치와 활용

2020/04/29 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Replace Text 설치와 활용

2020/04/29 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) WikiEditor 설치와 활용

2020/04/30 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) CodeEditor 설치와 활용

2020/04/30 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) CategoryTree 설치와 활용

2020/05/01 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Cite 설치와 활용

2020/05/01 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) ImageMap 설치와 활용

2020/05/02 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) InputBox 설치와 활용

2020/05/02 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) ParserFunctions 설치와 활용

2020/05/03 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Poem 설치와 활용

2020/05/03 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) SyntaxHighlight 설치와 활용

2020/05/04 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) PDF Handler 설치와 활용

2020/05/04 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) ConfirmEdit 설치와 활용

2020/05/05 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) SpamBlacklist 설치와 활용

2020/05/05 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) TitleBlacklist 설치와 활용

2020/05/06 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) Gadgets 설치와 활용

2020/05/06 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) LocalisationUpdate 설치와 활용

2020/05/07 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) MultimediaViewer 설치와 활용

2020/05/07 - [미디어위키/미디어위키 익스텐션] - 미디어위키(Mediawiki) 기본 제공 익스텐션(Extension) OATHAuth 설치와 활용




[Nuke 익스텐션 관련 정보]

익스텐션 공식 안내 페이지

https://www.mediawiki.org/wiki/Extension:Nuke

다운로드

미디어위키 내 배포 페이지

https://www.mediawiki.org/wiki/Special:ExtensionDistributor/Nuke

github 페이지

https://github.com/wikimedia/mediawiki-extensions-Nuke


 Nuke 익스텐션 기능

위키 관리자가 문서를 대량으로 삭제할 수 있는 기능을 제공하는 특수 문서 형식의 익스텐션입니다.




Nuke 익스텐션 다운로드 및 설치

다운로드 안내

익스텐션 다운로드 및 설치 방법은 아래 링크를 참고하시기 바랍니다.



사용 중인 미디어위키의 버전에 맞는 배포 익스텐션 압축 파일을 다운로드받습니다.

익스텐션 공식 배포처

미디어위키

https://www.mediawiki.org/wiki/Special:ExtensionDistributor/Nuke

깃허브

https://github.com/wikimedia/mediawiki-extensions-Nuke




미디어위키 버전별 익스텐션 다운로드 주소

1.34

https://extdist.wmflabs.org/dist/extensions/Nuke-REL1_34-27d74b6.tar.gz

1.33

https://extdist.wmflabs.org/dist/extensions/Nuke-REL1_33-0b3f8cc.tar.gz

1.32

https://extdist.wmflabs.org/dist/extensions/Nuke-REL1_32-559f782.tar.gz

1.31

https://extdist.wmflabs.org/dist/extensions/Nuke-REL1_31-c6ec842.tar.gz

위 주소는 코드 수정으로 바뀔 수 있으므로 다운이 받아지지 않는다면 위 공식 루트를 통해 다운받으시기 바라비니다.

다운로드 받은 압축 파일을 서버 안 미디어위키 설치 폴더 내에 있는  extensions폴더 안에 풀어줍니다.


리눅스 서버의 경우

$ sudo tar -xzf Nuke-REL1_34-27d74b6.tar.gz -C /미디어위키 설치 경로/extensions


예시 - Ubuntu

$ sudo tar -xzf Nuke-REL1_34-27d74b6.tar.gz -C /var/www/html/w/extensions

위 명령은 제 블로그를 그대로 따라오신 분의 경우 적용되는 예시입니다.


윈도 서버의 경우

탐색기로 압축 파일을 해당 위치에 풀어주시면 됩니다.


호스팅을 받는 경우

파일질라, 알FTP 등 FTP 프로그램을 이용해 미리 풀어 놓은 익스텐션 폴더(Nuke)를 통째로 해당 위치에 전송해줍니다.




Nuke 익스텐션 필수 설정

미디어위키의 환경 설정 파일인 LocalSettings.php 파일에 다음과 같은 코드를 추가해줍니다.

wfLoadExtension( 'Nuke' );


... 전략 ...

# Enabled extensions. Most of the extensions are enabled by adding
# wfLoadExtensions('ExtensionName');
# to LocalSettings.php. Check specific extension documentation for more details.
# The following extensions were automatically enabled:
wfLoadExtension( 'CategoryTree' );
wfLoadExtension( 'Cite' );
wfLoadExtension( 'CiteThisPage' );
wfLoadExtension( 'CodeEditor' );
wfLoadExtension( 'ConfirmEdit' );
wfLoadExtension( 'Gadgets' );
wfLoadExtension( 'ImageMap' );
wfLoadExtension( 'InputBox' );
wfLoadExtension( 'Interwiki' );
wfLoadExtension( 'LocalisationUpdate' );
wfLoadExtension( 'MultimediaViewer' );
wfLoadExtension( 'Nuke' );
wfLoadExtension( 'OATHAuth' );
wfLoadExtension( 'ParserFunctions' );
wfLoadExtension( 'PdfHandler' );
wfLoadExtension( 'Poem' );
wfLoadExtension( 'Renameuser' );
wfLoadExtension( 'ReplaceText' );
wfLoadExtension( 'SpamBlacklist' );
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
wfLoadExtension( 'TitleBlacklist' );
wfLoadExtension( 'WikiEditor' );

# End of automatically generated settings.
# Add more configuration options below.

... 후략 ...

미디어위키 설치시 기본 제공 익스텐션을 함께 설치하도록 설정한다면 코드는 보통 위 예시와 같은 위치에 추가됩니다.


미디어위키 익스텐션 활성화 코드 형식

미디어위키 익스텐션 활성화 코드는 일반적으로 아래와 같은 형식입니다.

wfLoadExtensions('ExtensionName');

그러나 아직까지 오래 전에 만들어진 익스텐션을 사용하는 경우, 구식 익스텐션 활성화 코드를 적어주어야 할 때가 있는데 그런 경우의 코드는 다음과 같습니다.

require_once "$IP/extensions/ExtensionName/ExtensionName.php";

활성화 코드 작성할 때 주의점

활성화 코드를 작성할 때 주의해야할 점은 구문 끝에 반드시 세미콜론(;)을 적어주어야 한다는 것입니다. 만약 그러지 않으면 구문 오류로 미디어위키가 열리지 않는 등의 오류가 발생하게 됩니다.

익스텐션 활성화 코드 작성 위치

일반적으로 아래 위치에 작성하게 됩니다.

# Enabled extensions. Most of the extensions are enabled by adding
# wfLoadExtensions('ExtensionName');
# to LocalSettings.php. Check specific extension documentation for more details.
# The following extensions were automatically enabled:

익스텐션 활성화 코드

# End of automatically generated settings.
# Add more configuration options below.

익스텐션별 부가 설정 시

익스텐션 별로 활성화 코드 뿐만 아니라 부가 설정 코드를 적어주어야할 필요가 있을 때가 있습니다. 이땐 특정 위치에 일정한 양식으로 분류해 작성해주는 것이 유지보수 측면에서 유리합니다.

아래는 제가 위키를 운영하면서 익스텐션별 부가설정을 관리하는 양식입니다. 예시로 드는 양식을 참고하셔서 관리하시기 바랍니다.

# End of automatically generated settings.
# Add more configuration options below.

### 익스텐션명과 기능 ###
# 익스텐션 활성화 코드 // 부가 설명
// 해당 익스텐션 공식 페이지 URL

// 사용하는 부가 설정 설명
부가 사용 설정 코드

//사용 가능한 부가 설정 설명
// (추가 설명)
# 사용 가능한 부가 설정 코드 // 부가 설정

아래는 작성 예입니다.

### Interwiki - 관리자 인터위키 편집 ###
# wfLoadExtension( 'Interwiki' ); // 이미 위에서 활성화되어 있음
// https://www.mediawiki.org/wiki/Extension:Interwiki

// sysops 그룹 사용자에게 interwiki 데이터를 편집 할 수있는 권한을 부여하려면
$wgGroupPermissions['sysop']['interwiki'] = true;

// interwiki 데이터를 편집 할 수있는 새로운 사용자 그룹을 만들려면
// (관료는 이 그룹에 사용자를 추가 할 수 있음)
# $wgGroupPermissions['developer']['interwiki'] = true; // 필요한 경우 주석 표시기를 삭제합니다.

#과 // 표시는 주석표시입니다. 이 기호들을 사용함으로써 유지보수에 필요한 각종 정보를 적을 수 있습니다.


설치 확인

미디어위키의 특수:버전(= Special:Version) 문서를 확인하면 위 익스텐션이 추가된 것을 확인할 수 있습니다.




Nuke 익스텐션  추가 구성 설정

익스텐션 nuke의 사용 권한은 'sysop' 사용자 그룹에 자동으로 부여됩니다. 이것을 해제하고 이 권한을 'nuke'와 같은 새로운 전용 사용자 그룹에 할당하려면 "LocalSettings.php"파일에 다음을 추가하십시오.

wgGroupPermissions['sysop']['nuke'] = false;
$wgGroupPermissions['nuke']['nuke'] = true;




Nuke 익스텐션 사용법

특수:특수문서

위 문서를 검색해 해당 패이지로 들어갑니다.



위키 검색상자에 특수:특수문서를 입력하여 접속하면 위 그림처럼 문서 도구 섹션에 문서 대량 삭제 항목이 있습니다. 이 부분을 링크하시면 됩니다.


특수:문서대량삭제 = Special:Nuke

아니면 위키 검색상자에 위 문구를 입력하셔도 됩니다.


대량 삭제할 조건을 설정하고 나열 버튼을 눌러줍니다.



삭제 대상 문서가 나열되고 삭제 이유가 자동 기입됩니다. 나열된 문서들 중 삭제할 문서를 선택하고(기본값은 모두 선택) 선택한 문서 삭제 버튼을 눌러줍니다.

삭제 이유는 자동 기입됩니다. 이유 내용을 수정할 수 있습니다.



정말 삭제하겠냐고 다시 한번 확인 창이 뜹니다. 확인 버튼을 눌러주시면 됩니다.


삭제 결과나 나타납니다.


이것으로 위키 내 문서의 대량 삭제 절차 끝입니다.