문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
기술문서:오픈소스:dokuwiki [2026/01/29 12:03] carlito76 |
기술문서:오픈소스:dokuwiki [2026/02/27 10:53] (현재) carlito76 |
||
|---|---|---|---|
| 줄 7: | 줄 7: | ||
| <note tip> | <note tip> | ||
| - | 본 문서는 2020-07-29a " | + | 본 문서는 2020-07-29a " |
| + | - [[# | ||
| + | - [[# | ||
| + | - [[# | ||
| + | - [[#관리]] | ||
| </ | </ | ||
| 줄 45: | 줄 49: | ||
| * data/ | * data/ | ||
| * data/ | * data/ | ||
| - | |||
| - | ==== 이미지 추가 ==== | ||
| - | * favicon.ico | ||
| - | * favicon.svg | ||
| - | * apple-touch-icon.png | ||
| - | * favicon-96x96.png | ||
| - | * logo.png | ||
| - | * web-app-manifest-192x192.png | ||
| - | * web-app-manifest-512x512.png | ||
| ==== 기본 템플릿 ==== | ==== 기본 템플릿 ==== | ||
| === 이미지 교체 === | === 이미지 교체 === | ||
| - | * lib/ | ||
| * lib/ | * lib/ | ||
| * lib/ | * lib/ | ||
| + | * lib/ | ||
| === logo 대체 텍스트 === | === logo 대체 텍스트 === | ||
| 줄 78: | 줄 73: | ||
| === footer 숨김 === | === footer 숨김 === | ||
| - | <sxh php; gutter: true; first-line: | + | <sxh php; gutter: true; first-line: |
| - | < | + | < |
| - | <div id=" | + | |
| <?php tpl_license('' | <?php tpl_license('' | ||
| 줄 100: | 줄 94: | ||
| alt=" | alt=" | ||
| </ | </ | ||
| - | </ | + | </ |
| - | </sxh> | + | |
| - | + | ||
| - | === 이름공간 정보 추가 === | + | |
| - | <sxh php; gutter: true; first-line: 17; highlight: [19]; title: lib/ | + | |
| - | < | + | |
| - | <meta charset=" | + | |
| - | < | + | |
| - | < | + | |
| - | <?php tpl_metaheaders() ?> | + | |
| - | <meta name=" | + | |
| - | <?php echo tpl_favicon(array(' | + | |
| - | <?php tpl_includeFile(' | + | |
| - | </head> | + | |
| </ | </ | ||
| === 문서 정보 제거 === | === 문서 정보 제거 === | ||
| - | <sxh php; gutter: true; first-line: | + | <sxh php; gutter: true; first-line: |
| - | <!-- ********** CONTENT ********** --> | + | |
| <div id=" | <div id=" | ||
| <?php html_msgarea() ?> | <?php html_msgarea() ?> | ||
| 줄 176: | 줄 156: | ||
| ==== 문서 편집 에디터 수정 ==== | ==== 문서 편집 에디터 수정 ==== | ||
| - | <sxh javascript; gutter: true; first-line: | + | <sxh javascript; gutter: true; first-line: |
| - | /** | + | |
| - | * Add the edit window size and wrap controls | + | |
| - | * | + | |
| - | * Initial values are read from cookie if it exists | + | |
| - | * | + | |
| - | * @param selector ctlarea the div to place the controls | + | |
| - | * @param selector editor | + | |
| - | */ | + | |
| initSizeCtl: | initSizeCtl: | ||
| var $ctl = jQuery(ctlarea), | var $ctl = jQuery(ctlarea), | ||
| 줄 215: | 줄 187: | ||
| ==== 자동 약어 힌트 비활성화 ==== | ==== 자동 약어 힌트 비활성화 ==== | ||
| - | <sxh; gutter: true; highlight: [3-62]; title: conf/ | + | <sxh; gutter: true; first-line: 3; highlight: [3-62]; title: conf/ |
| - | # Acronyms. | + | |
| #ACL Access Control List | #ACL Access Control List | ||
| # | # | ||
| 줄 281: | 줄 251: | ||
| ==== 자동 변환 문자열 비활성화 ==== | ==== 자동 변환 문자열 비활성화 ==== | ||
| - | <sxh; gutter: true; highlight: [8-21]; title: conf/ | + | <sxh; gutter: true; first-line: 8; highlight: [8-21]; title: conf/ |
| - | # Typography replacements | + | |
| - | # | + | |
| - | # Order does matter! | + | |
| - | # | + | |
| - | # You can use HTML entities here, but it is not recommended because it may break | + | |
| - | # non-HTML renderers. Use UTF-8 chars directly instead. | + | |
| #< | #< | ||
| # | # | ||
| 줄 316: | 줄 279: | ||
| ==== favicon 설정 ==== | ==== favicon 설정 ==== | ||
| + | * apple-touch-icon.png | ||
| + | * favicon-96x96.png | ||
| + | * favicon.ico | ||
| + | * favicon.svg | ||
| - | <sxh; gutter: true; highlight: [1-22]; title: site.webmanifest;> | + | <sxh php; gutter: true; first-line: |
| - | { | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | { | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | }, | + | |
| - | { | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | } | + | |
| - | ], | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | " | + | |
| - | } | + | |
| - | </ | + | |
| - | + | ||
| - | <sxh php; gutter: true; first-line: | + | |
| - | /** | + | |
| - | * Returns < | + | |
| - | * | + | |
| - | * @author Anika Henke < | + | |
| - | * | + | |
| - | * @param | + | |
| - | * @return string | + | |
| - | */ | + | |
| function tpl_favicon($types = array(' | function tpl_favicon($types = array(' | ||
| 줄 374: | 줄 308: | ||
| } | } | ||
| */ | */ | ||
| - | + | | |
| - | | + | $return .= '< |
| - | $return .= '< | + | $return .= '< |
| - | $return .= '< | + | $return .= '< |
| - | $return .= '< | + | |
| - | $return .= '< | + | |
| return $return; | return $return; | ||
| } | } | ||
| + | </ | ||
| + | |||
| + | ==== manifest 설정 ==== | ||
| + | * web-app-manifest-192x192.png | ||
| + | * web-app-manifest-512x512.png | ||
| + | |||
| + | <sxh; gutter: true; highlight: [1-22]; title: site.webmanifest;> | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | }, | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | ], | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | <sxh php; gutter: true; first-line: 250; highlight: [251]; title: inc/ | ||
| + | if (actionOK(' | ||
| + | $head[' | ||
| + | } | ||
| </ | </ | ||
| ==== start 문서 index, | ==== start 문서 index, | ||
| - | <sxh php; gutter: true; first-line: | + | <sxh php; gutter: true; first-line: |
| - | // setup robot tags apropriate for different modes | + | |
| if(($ACT == ' | if(($ACT == ' | ||
| if($INFO[' | if($INFO[' | ||
| //delay indexing: | //delay indexing: | ||
| - | if((time() - $INFO[' | + | if((time() - $INFO[' |
| $head[' | $head[' | ||
| } else { | } else { | ||
| - | | + | $head[' |
| - | $head[' | + | |
| - | } else { | + | |
| - | | + | |
| - | } | + | |
| } | } | ||
| $canonicalUrl = wl($ID, '', | $canonicalUrl = wl($ID, '', | ||
| 줄 428: | 줄 390: | ||
| ==== 검색어 하이라이트 개선 ==== | ==== 검색어 하이라이트 개선 ==== | ||
| - | <sxh php; gutter: true; first-line: | + | <sxh php; gutter: true; first-line: |
| - | /** | + | |
| - | * Show a wiki page | + | |
| - | * | + | |
| - | * @author Andreas Gohr < | + | |
| - | * | + | |
| - | * @param null|string $txt wiki text or null for showing $ID | + | |
| - | */ | + | |
| function html_show($txt=null){ | function html_show($txt=null){ | ||
| global $ID; | global $ID; | ||
| 줄 555: | 줄 510: | ||
| </ | </ | ||
| - | ==== Include Hooks ==== | + | ==== SEO 개선 |
| - | <sxh html; gutter: true; title: conf/ | + | * logo.png |
| - | < | + | |
| + | <sxh html; gutter: true; highlight: [1-44]; title: conf/ | ||
| + | < | ||
| <meta property=" | <meta property=" | ||
| <meta property=" | <meta property=" | ||
| <meta property=" | <meta property=" | ||
| <meta property=" | <meta property=" | ||
| - | <!-- //오픈 그래프 | + | <!-- //Open Graph --> |
| <!-- JSON-LD --> | <!-- JSON-LD --> | ||
| 줄 601: | 줄 558: | ||
| </ | </ | ||
| <!-- //JSON-LD --> | <!-- //JSON-LD --> | ||
| + | </ | ||
| + | <sxh; gutter: true; highlight: [1-4]; title: robots.txt;> | ||
| + | User-agent: * | ||
| + | Allow: / | ||
| + | |||
| + | Sitemap: https:// | ||
| + | </ | ||
| + | |||
| + | <sxh php; gutter: true; first-line: 229; highlight: [229-231]; title: inc/ | ||
| + | // 수정일 메타 데이터 | ||
| + | $head[' | ||
| + | $head[' | ||
| + | </ | ||
| + | |||
| + | <sxh php; gutter: true; first-line: 980; highlight: [983-987]; title: inc/ | ||
| + | default : // SHOW and anything else not included | ||
| + | $page_title = $name; | ||
| + | |||
| + | // 이름공간 정보 표기 | ||
| + | global $INFO; | ||
| + | if (!empty($INFO[' | ||
| + | $page_title .= ' | ' . str_replace(':', | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ==== 카카오애드핏 ==== | ||
| + | <sxh html; gutter: true; first-line: 46; highlight: [46-77]; title: conf/ | ||
| <!-- 카카오애드핏 --> | <!-- 카카오애드핏 --> | ||
| < | < | ||
| 줄 634: | 줄 618: | ||
| <script type=" | <script type=" | ||
| <!-- // | <!-- // | ||
| - | |||
| - | <!-- Google tag (gtag.js) --> | ||
| - | <script async src=" | ||
| - | < | ||
| - | window.dataLayer = window.dataLayer || []; | ||
| - | function gtag(){dataLayer.push(arguments); | ||
| - | gtag(' | ||
| - | |||
| - | gtag(' | ||
| - | </ | ||
| - | |||
| - | <!-- Clarity tracking code --> | ||
| - | <script type=" | ||
| - | (function(c, | ||
| - | c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; | ||
| - | t=l.createElement(r); | ||
| - | y=l.getElementsByTagName(r)[0]; | ||
| - | })(window, document, " | ||
| - | </ | ||
| </ | </ | ||
| - | <sxh html; gutter: true; title: conf/ | + | <sxh html; gutter: true; highlight: [1-8]; title: conf/ |
| <!-- 카카오애드핏 --> | <!-- 카카오애드핏 --> | ||
| <div class=" | <div class=" | ||
| 줄 666: | 줄 631: | ||
| </ | </ | ||
| - | <sxh html; gutter: true; title: conf/ | + | <sxh html; gutter: true; highlight: [1-14]; title: conf/ |
| <!-- 카카오애드핏 --> | <!-- 카카오애드핏 --> | ||
| - | <div class=" | + | <div class=" |
| <ins class=" | <ins class=" | ||
| data-ad-unit = " | data-ad-unit = " | ||
| 줄 674: | 줄 639: | ||
| data-ad-height = " | data-ad-height = " | ||
| </ | </ | ||
| - | <div class=" | + | <div class=" |
| <ins class=" | <ins class=" | ||
| data-ad-unit = " | data-ad-unit = " | ||
| 줄 683: | 줄 648: | ||
| </ | </ | ||
| - | ==== robots.txt ==== | + | < |
| - | <sxh; gutter: true; title: | + | <!-- 카카오애드핏 --> |
| - | User-agent: * | + | <div class=" |
| - | Allow: / | + | <ins class=" |
| + | data-ad-unit = " | ||
| + | data-ad-width = " | ||
| + | data-ad-height = " | ||
| + | </ | ||
| + | <!-- // | ||
| + | </ | ||
| - | Sitemap: https://wiki.jobdeveloper.co.kr/doku.php?do=sitemap | + | ==== 추적 코드 ==== |
| + | <sxh html; gutter: true; first-line: 79; highlight: [79-96]; title: conf/ | ||
| + | <!-- Google tag (gtag.js) --> | ||
| + | <script async src="https://www.googletagmanager.com/ | ||
| + | < | ||
| + | window.dataLayer = window.dataLayer || []; | ||
| + | function gtag(){dataLayer.push(arguments); | ||
| + | gtag(' | ||
| + | |||
| + | gtag(' | ||
| + | </script> | ||
| + | |||
| + | <!-- Clarity tracking code --> | ||
| + | <script type=" | ||
| + | (function(c, | ||
| + | c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; | ||
| + | t=l.createElement(r); | ||
| + | y=l.getElementsByTagName(r)[0]; | ||
| + | })(window, document, " | ||
| + | </ | ||
| </ | </ | ||
| 줄 740: | 줄 730: | ||
| === Tag Plugin === | === Tag Plugin === | ||
| - | <sxh css; gutter: true; first-line: 7; highlight: [8]; title: lib/ | + | <sxh css; gutter: true; first-line: 7; highlight: [8, 10, 14-16, 19-26]; title: lib/ |
| .dokuwiki div.tags { | .dokuwiki div.tags { | ||
| / | / | ||
| clear: both; | clear: both; | ||
| - | margin-bottom: | + | |
| } | } | ||
| + | |||
| + | .dokuwiki div.tagstop { | ||
| + | / | ||
| + | margin-top: -1.3em; | ||
| + | margin-bottom: | ||
| + | } | ||
| + | |||
| + | .dokuwiki div.tags span a, | ||
| + | .dokuwiki div.tagstop span a { | ||
| + | color: #2962ff; | ||
| + | background-color: | ||
| + | padding: 4px 4px; | ||
| + | border-radius: | ||
| + | margin-left: | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | <sxh php; gutter: true; first-line: 162; highlight: [171]; title: lib/ | ||
| + | public function tagLinks($tags) { | ||
| + | if (empty($tags) || ($tags[0] == '' | ||
| + | return ''; | ||
| + | } | ||
| + | |||
| + | $links = array(); | ||
| + | foreach ($tags as $tag) { | ||
| + | $links[] = $this-> | ||
| + | } | ||
| + | return implode('' | ||
| + | } | ||
| </ | </ | ||
| 줄 852: | 줄 871: | ||
| </ | </ | ||
| ((Indexmenu Plugin: If you use the ' | ((Indexmenu Plugin: If you use the ' | ||
| + | |||
| + | {{tag>" | ||