차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판이전 판다음 판 | 이전 판 | ||
| wiki:sw:dokuwiki [2023/06/15 01:19] – 제거됨 - 바깥 편집 (Unknown date) 127.0.0.1 | wiki:sw:dokuwiki [2025/11/06 01:12] (현재) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| + | DokuWiki | ||
| + | ======== | ||
| + | |||
| + | ## 개요 | ||
| + | [[wiki: | ||
| + | |||
| + | 도쿠위키는 현존하는 (소형) 위키엔진 중 가장 범용적이고 간편한 솔루션이다. PHP를 사용하기 때문에 배포가 쉬우며, 그렇지만 모던 PHP에 종속되지 않기 때문에 일반적인 호스팅 환경에서도 잘 작동하고, | ||
| + | |||
| + | ## 마크업 | ||
| + | 도쿠위키는 여타의 다른 [[wiki: | ||
| + | |||
| + | ## 특징 | ||
| + | 도쿠위키가 (특히 다른 위키엔진과) 차별되는 점에 대한 정리. | ||
| + | |||
| + | ### 하이퍼링크 | ||
| + | 도쿠위키는 wikilink를 상대적으로 취급한다. 예컨대 `[[pagename]]`은 같은 폴더/ | ||
| + | |||
| + | ### Pagename | ||
| + | 도쿠위키는 문서의 제목(title)과 페이지의 이름(pagename/ | ||
| + | |||
| + | 페이지이름은 (아마도 url을 상정하여) 다음 규칙을 갖는다. | ||
| + | |||
| + | - 대소문자는 구분하지 않는다. | ||
| + | - 특수문자는, | ||
| + | - 콜론은 네임스페이스를 구분하기 위해 예약되어 있다. | ||
| + | - 슬래시는 url의 구분자로 예약되어 있다. | ||
| + | - 알파벳 외의 다른 (특수문자가 아닌) 문자는 허용된다. | ||
| + | |||
| + | ## 이름 | ||
| + | 이름의 Doku는 독일어 Dokumentation에서 온 것이다. 주 개발자인 Andreas Gohr는 독일 출신이다. 참고: [docuwiki [DokuWiki]](https:// | ||
| + | |||
| + | ## 기능 | ||
| + | 도쿠위키의 주요 기능에 대한 정리. | ||
| + | |||
| + | ### 백업 | ||
| + | 최소한 다음 디렉토리를 백업하면 도쿠위키의 전체 컨텐츠를 복원할 수 있다. 나머지는 코어 파일을 그대로 사용하면 된다. 단 코어 파일을 고쳤다면 해당 파일도 백엄해야 한다. | ||
| + | |||
| + | - data/pages: 최신 버전의 페이지 | ||
| + | - data/attic: 페이지의 과거 리비전 | ||
| + | - data/meta: 페이지 메타데이터 | ||
| + | - data/media: 최신 버전의 미디어 | ||
| + | - data/ | ||
| + | - data/ | ||
| + | - conf: 설정 | ||
| + | - lib: 플러그인과 템플릿 | ||
| + | |||
| + | ### ACL | ||
| + | 도쿠위키는 ACL 규칙을 통해 특정 사용자/ | ||
| + | ### remote | ||
| + | 참고: [devel: | ||
| + | |||
| + | Dokuwiki는 XML-RFC를 통한 원격 접근을 지원하며, | ||
| + | |||
| + | #### 지원하는 (주요) 기능 | ||
| + | 너무 지엽적이거나 일반적으로 불필요한 함수는 생략. | ||
| + | - dokuwiki.getPagelist: | ||
| + | - dokuwiki.appendPage: | ||
| + | - dokuwiki.setLocks: | ||
| + | - dokuwiki.login: | ||
| + | - dokuwiki.search: | ||
| + | - wiki.getPage: | ||
| + | - wiki.getPageVersion: | ||
| + | - wiki.getPageVersions: | ||
| + | - wiki.getPageInfo: | ||
| + | - wiki.getPageInfoVersion: | ||
| + | - wiki.putPage: | ||
| + | - wiki.getAllPages: | ||
| + | - wiki.getBackLinks: | ||
| + | - wiki.getRecentChanges: | ||
| + | - wiki.getRecentMediaChanges: | ||
| + | - wiki.getAttachments: | ||
| + | - wiki.getAttachment: | ||
| + | - wiki.getAttachmentInfo: | ||
| + | - wiki.putAttachment: | ||
| + | - wiki.deleteAttachment: | ||
| + | - plugin.acl.listAcls: | ||
| + | - plugin.acl.addAcl: | ||
| + | - plugin.acl.delAcl: | ||
| + | |||
| + | ## 플러그인 | ||
| + | ### Data | ||
| + | [링크](https:// | ||
| + | |||
| + | 위키 페이지에 구조화된 데이터를 추가하고, | ||
| + | |||
| + | #### 기본 타입 | ||
| + | Data 플러그인은 이름에 (밑줄과 함께) 붙은 접미사로 타입을 구분한다. 충분히 타입을 유추하는 것이 가능할 것이나, 무결성을 확보하기 위한 결정일 것이다. | ||
| + | |||
| + | - `text`: 접미사가 없으면 기본적으로 텍스트로 인식한다. | ||
| + | - `dt`: YYYY-MM-DD 형식의 날짜를 입력받는다. | ||
| + | - `page`: 페이지명을 입력받는다. 절대경로만 인식하므로 주의해야 한다. | ||
| + | - `title`: 페이지명에 더해, 파이프 기호와 함께 표시하고자 하는 제목을 함께 입력받을 수 있다. | ||
| + | - `nspage` | ||
| + | - `url` | ||
| + | - `tag` | ||
| + | - `mail` | ||
| + | - `img< | ||
| + | - `wiki`: 위키텍스트를 입력받는다. 성능 저하의 가능성이 있으므로 남용하지 않는 것이 좋다. | ||
| + | - `pageid` | ||
| + | - `hidden`: 페이지나 편집기(하술)에 표시하지 않는 값. | ||
| + | |||
| + | 한 항목에 여러 값을 받고 싶다면 (타입 식별자를 포함한) 맨뒤에 s를 붙이면 된다. 단 s로 끝나는 이름의 경우, 밑줄을 붙여서 혼동을 피해야 한다. | ||
| + | |||
| + | #### 사용자 타입 | ||
| + | 사용자 타입(type aliases)은 기본 타입을 기반으로 새로운 타입을 생성하는 기능이다. 관리 메뉴의 ‘필드 별칭‘ 항목을 통해 정의할 수 있으며, 기본 타입에 대입할 때 앞뒤에 추가할 접두사/ | ||
| + | |||
| + | ### Strata | ||
| + | - [링크](https:// | ||
| + | - 원 제작자의 컨퍼런스 [논문](https:// | ||
| + | |||
| + | Data 플러그인이 하나의 페이지에 하나의 데이터 엔트리만을 삽입할 수 있다는 한계를 극복하기 위해 만들어진 플러그인. [[wiki: | ||
| + | |||
| + | ## Tips | ||
| + | - DokuWiki는 업그레이드시 기본 페이지를 함께 덮어씌우므로, | ||
| + | |||
| + | ## 링크 | ||
| + | |||
| + | ### 외부 링크 | ||
| + | - [Official site](https:// | ||
| + | - [GitHub 저장소](https:// | ||
| + | ---- struct data ---- | ||
| + | pageinfo.status | ||
| + | ---- | ||
