다른 명령
편집 요약 없음 |
편집 요약 없음 |
||
| 9번째 줄: | 9번째 줄: | ||
wfLoadExtension('PageForms'); | wfLoadExtension('PageForms'); | ||
</source> | </source> | ||
# 설치 후 관리자 권한으로 접속하여 위키 캐시를 갱신합니다: | #: 설치 후 관리자 권한으로 접속하여 위키 캐시를 갱신합니다: | ||
<source lang=bash> | #:<source lang=bash> | ||
php maintenance/update.php | php maintenance/update.php | ||
</source> | </source> | ||
2025년 9월 25일 (목) 14:08 기준 최신판
미디어위키 폼 생성 예제
- page forms 익스텐션
- MediaWiki의 Extension:Page Forms는 구조화된 데이터를 위키 페이지에 쉽게 추가하고 편집할 수 있도록 지원하는 확장 기능입니다.
- 이 확장을 사용하면, 폼을 통해 위키 페이지를 생성 및 수정하고, 사용자에게 데이터 입력 작업을 보다 직관적으로 제공합니다.
Page Forms 설치
- MediaWiki의 LocalSettings.php 파일에 아래 코드를 추가하여 확장을 설치합니다:
wfLoadExtension('PageForms');- 설치 후 관리자 권한으로 접속하여 위키 캐시를 갱신합니다:
php maintenance/update.php
기본 개념 설명
- Page Forms는 다음의 주요 구성 요소로 동작합니다:
- 1.Template (템플릿): 데이터를 저장하기 위한 구조화된 틀.
- 2.Form (폼): 사용자가 데이터를 입력하기 위한 인터페이스.
- 3.Category (카테고리): 데이터를 분류하기 위한 그룹.
- 4.Semantic MediaWiki(SMW) 연동: Page Forms는 SMW와 함께 사용하면 데이터 질의 기능을 강화할 수 있습니다.
예제: "책 정보 관리" 폼 생성하기
- 템플릿 작성
- Template:Book이라는 템플릿을 생성하여 아래와 같이 작성합니다:
{{#if:{{{Title|}}}|[[Title::{{{Title}}}]]}} {{#if:{{{Author|}}}|[[Author::{{{Author}}}]]}} {{#if:{{{Publication date|}}}|[[Publication date::{{{Publication date}}}]]}} {{#if:{{{Genre|}}}|[[Genre::{{{Genre}}}]]}}
- 폼 생성
- Form:Book이라는 폼을 생성하여 아래와 같이 작성합니다:
{{{for template|Book}}} == Book Information == * Title: {{{field|Title}}} * Author: {{{field|Author}}} * Publication Date: {{{field|Publication date|input type=date}}} * Genre: {{{field|Genre|input type=dropdown|values=Fiction, Non-Fiction, Science, History, Biography}}} {{{end template}}}
- 카테고리 추가
- Category:Books 페이지를 생성하고 다음 내용을 추가합니다:
[[Has default form::Book]]
- 새 페이지 생성 및 데이터 입력
- 1.새 페이지 추가:
- • 페이지를 만들 때 “책 정보(Book)” 폼이 자동으로 나타납니다.
- 2. 데이터 입력:
- • 폼에 책 제목, 저자, 발행일 등을 입력하면 페이지가 자동 생성되며, 입력한 데이터는 템플릿에 따라 구조화되어 저장됩니다.
- 데이터 조회
- Page Forms와 Semantic MediaWiki를 함께 사용하면 입력된 데이터를 조회할 수 있습니다. 예를 들어, Query 태그를 사용해 아래와 같은 질의를 작성할 수 있습니다:
{{#ask: [[Category:Books]] |?Title |?Author |?Publication date |?Genre |format=table |mainlabel=Book }}- 위 코드는 책 목록을 표 형식으로 출력합니다.
- Page Forms 확장 기능
- Page Forms는 다양한 입력 필드를 제공합니다:
- 1. Text Input: 기본 텍스트 필드
{{{field|Field Name}}}- 2. Dropdown: 드롭다운 선택 필드
{{{field|Field Name|input type=dropdown|values=Option1, Option2}}}- 3. Checkboxes: 다중 선택 박스
{{{field|Field Name|input type=checkboxes|values=Option1, Option2}}}- 4. Date Picker: 날짜 선택기
{{{field|Date|input type=date}}}
- 이 예제를 기반으로 Page Forms의 활용법을 학습하고, 원하는 데이터를 효율적으로 관리할 수 있는 폼을 설계할 수 있습니다.