이 문서 내용은 좀 낡았습니다.
60일이나 편집 안된 오래된 망한 문서니 개발 문서인 경우 참고할 때 조심하세요. 최신 정보를 알고 싶으면 게시판에 글 써주세요
오픈나무의
스킨 제작 가이드 입니다. 오픈나무는 플라스크를 사용하므로 템플릿 엔진으로 Jinja2를 사용합니다.
Jinja 기본 가이드오픈나무의 스킨 시스템에서 변수는 {{변수_이름}}의 형태로 받아옵니다. {{변수_이름|safe}} 형태는 HTML 코드를 텍스트로 변환시키지 않고 적용하여 보여줍니다.
오픈나무의 핵심 변수입니다. 위키의 중요한 내용을 담고 있습니다.
- imp[1][x]는 위키 설정에 대한 내용입니다.
- imp[1][0] : 위키 이름
- imp[1][1]|safe : 라이선스 내용
imp[1][2](A)imp[1][3](A)- imp[1][4]|safe : 로고
- imp[1][5]|safe : 전역 <HEAD>
- imp[1][6] : 추가 메뉴 ('' : 없음 {문자열}) {배열}
- 있을 때 데이터 예시 : [['이름1', 'http://링크.com'], ['이름2', 'http://링크2.com']]
- imp[1][7][0]|safe : 템플릿 커스텀 변수 1
- imp[1][7][1]|safe : 템플릿 커스텀 변수 2
- imp[1][7][2]|safe : 템플릿 커스텀 변수 3
- 템플릿 커스텀 변수는 v3.5.0-dev57부터 추가
- imp[2][x]는 사용자 설정에 대한 내용입니다.
imp[2][0](A)imp[2][1](A)- imp[2][2] : 사용자 상태 (0 : 비로그인, 1 : 로그인) {정수형}
- imp[2][3]|safe : 사용자 <HEAD>
- imp[2][4] : 사용자 이메일
- imp[2][5] : 사용자 이름
- imp[2][6] : 관리자 여부 (0 : 일반 사용자, 1 : 관리자)
- imp[2][7] : 차단 여부 (0 : 일반 사용자, 1 : 차단된 사용자)
- imp[2][8] : 알림 갯수
- imp[2][9] : 가지고 있는 권한 (0 : 없을 때 {문자열}, 자세한 내용) {배열}
- imp[2][10] : 아이피 or 사용자 이름
- imp[2][11] : 사용자 토론 유무 (0 : 없음, 1 : 있음)
- imp[2][12] : 현재 접속한 경로 (0 : 없을 때) {배열}
- 예시 : /change -> ['change'], /w/Test -> ['w', 'Test']
- imp[2][13] : [레벨, 경험치, 레벨 업 필요 경험치] {배열}
- 예시 : ['1', '50', '550']
- imp[3][0] : 서브 타이틀 (0 : 없을 때 {정수형})
- imp[3][1] : 마지막으로 편집한 시간 (0 : 없을 때 {정수형})
imp[3][2]- imp[3][3]|safe : 필수 CSS, JS
- imp[3][4] : 주시, 관심 문서 등록여부 확인 ('' : 문서 읽기 중 아님, 0 : 비로그인 상태, 1 : 등록하지 않음, 2 : 등록함) {정수형 : '' 제외 전부}
- imp[3][5]|safe : 다크모드 필수 CSS, JS
- imp[3][6] : 문서 읽기 중 description 내용 ('' : 문서 읽기 중 아님)
- 특별한 부가 설명이 없으면 문자열 값 입니다.
{{data|safe}}
문서의 내용입니다. 필수로 들어가야 합니다.
메뉴 관련 변수입니다. 배열값으로 전송합니다. 만약 메뉴가 없을 때는 정수 0을 전송합니다.
배열은 [[링크, 이름, 강조
(5)]]로 구성 되어 있습니다.
for문 돌려서 메뉴를 표시하는 코드의 예제 입니다.
오픈나무 스킨 시스템에서 함수는 꼭 변수와 함께 {{'내용'|함수_이름}}이나 {{변수_이름|함수_이름}} 형태로 사용됩니다.
- load_lang : 내용의 대응하는 언어 내용을 불러옵니다.
- md5_replace : 내용이나 변수의 MD5 해시를 반환합니다.
cut_100 : 100글자까지 내용이나 변수를 자릅니다.(폐지)
다크모드 표준에 따라서 코드를 작성해야지만 에디터, 문법 다크모드 기능이 작동합니다.
다크모드 표준은 main_css_darkmode 쿠기 값을 1로 하면 ON 0으로 하면 OFF 입니다.