자료실

템플릿 컴포넌트

2018.06.19 05:51
4,947
6
자료 유형 에디터 컴포넌트
간단한 소개 미리 완성된 서식(템플릿)으로 게시물을 작성할 수 있도록 도와주는 에디터 컴포넌트입니다.
설치 경로 ./modules/editor/components/ap_template
코어 지원 범위 Rhymix 2.1
PHP 지원 범위 기타
자료 구분 공개 자료
라이선스 GPL v2
저장소 URL https://github.com/cydemo/rx-component-template
파일명버전날짜용량다운로드 수
ap_template.0.2.0.zip 0.2.0 2025.01.25 92.9KB 31
ap_template.0.1.0.zip 0.1.0 2018.06.19 86.5KB 331

 

- '템플릿 컴포넌트'입니다.

- 미리 완성된 서식(템플릿)을 이용해 문서를 편집할 수 있게 해주는 에디터 컴포넌트입니다.

 

demo.gif

 

 

기본 기능

 

- 원래는 회원 발송용 뉴스레터 템플릿을 제공하기 위해 만들었던 컴포넌트입니다. 관리자 메일 모듈과 같이 쓰면 좋습니다.( 0.5 버전 https://xetown.com/point_contents/278628 , 깃허브에는 0.6도 있습니다ㅎ )

- 그 외에도 컴포넌트 이용자가 템플릿을 직접 만들어 활용할 수 있으므로, 견적서, 증빙서류 등 정해진 서식을 출력할 때 활용하는 것도 좋을 것 같습니다.

- 풀 페이지, 헤더, 섹션, 푸터 등 4가지 타입의 템플릿을 제공합니다.

- 해당 템플릿을 에디터 내 원하는 위치에 삽입할 수 있으며, 전체 덮어쓰기도 할 수 있습니다.

 

 

사용 방법

 

- CKEditor4 기준으로 설명합니다.

- 보라색 부분의 아이콘을 누릅니다.

1.png

 

- 팝업창이 뜹니다.

2.png

 

- 썸네일 리스트의 원하는 템플릿을 골라 에디터에 '추가'하거나 '덮어쓰기'를 하면 에디터에 이렇게 적용됩니다. (템플릿 요소(li)를 더블클릭하면 에디터 커서 위치에 '추가'가 됩니다)

3.png

 

- 물론 이미지나 글 내용을 수정할 수도 있습니다.

4.png

 

 

템플릿 등록 방법

 

- 컴포넌트 폴더에 templates 이라는 폴더가 있는데요. 이 안에 템플릿 문서 파일이 있는 하위폴더들이 있습니다.

- 하위폴더의 이름은 템플릿들의 이름이기도 합니다.

- 각각의 하위폴더에는 기본 제공되는 폴더에 있는 것처럼 index.html, info.xml, thumb.jpg가 있어야 합니다.

  5.png

- index.html은 템플릿의 html 코드를 담고 있습니다. 참고로, 기본 제공되는 템플릿은 뉴스레터 이메일 용으로 제작 중인 것이어서 기본적으로 인라인 스타일을 일괄적용하고 있습니다.

- info.xml은 템플릿의 정보를 담고 있습니다. 기존 파일을 열어보시면 아시겠지만, admin, full_page, header, section, footer에 관한 정보가 필수적으로 들어가야 합니다.

  • admin 값이 Y면 관리자만 템플릿을 적용할 수 있습니다. N이면 에디터 이용자 모두가 볼 수 있구요.
  • full_page 값이 Y면 전체 문서에 어울리는 템플릿 유형이라는 뜻입니다. N이면 아니구요.
  • header 값이 Y면 문서의 머리말로 어울리는 템플릿 유형이라는 뜻입니다. N이면 아니구요.
  • section 값이 Y면 문서의 본문으로 어울리는 템플릿 유형이라는 뜻입니다. N이면 아니구요.
  • footer 값이 Y면 문서의 꼬리말로 어울리는 템플릿 유형이라는 뜻입니다. N이면 아니구요.

- thumb.jpg는 팝업창에서 출력하는 템플릿 리스트에서 출력할 썸네일입니다. 크기는 대략 120*100px 정도가 좋습니다.

=> 이렇게 준비하시면 여러분도 템플릿을 등록해서 언제든 꺼내서 사용하실 수가 있게 되는 겁니다.

 

 

주의 사항

 

- 본 템플릿 컴포넌트는 CKEditor4FroalaEditor, staris에디터에서 작동합니다.

- 단, 프로알라 에디터의 경우에는  요소가 삽입될 경우 요소 앞뒤로 p태그가 자동으로 추가되므로 CKEditor4와 에디터 반영 결과가 다소 다를 수 있습니다.

 

 

테스트 환경

 

- 크롬 131.0.6778.265(공식 빌드) (64비트)

- 크롬 66.0.3359.181 / IE 11.48.17134.0 / 엣지 42.17134.1.0

- 라이믹스 2.1.20 / PHP 버전: 7.4 ... CKEditor4

- 라이믹스 2.1.20 / PHP 버전: 8.2 ... CKEditor4

- 라이믹스 1.9.6 / PHP 버전: 7.0.22 ... CKEditor4

- XE 1.9.7 / PHP 버전: 5.5 ... FroalaEditor

- 스포어 웹호스팅, 카페24 웹호스팅, 닷홈 웹호스팅

 

 

히스토리

 

- 2017년 9월 11일 "신기하네요. 레이아웃 만들기" https://xetown.com/topics/729982

- 2017년 9월 13일 "재미난 녀석을 만들고 있습니다 ... 템플릿 컴포넌트" https://xetown.com/topics/731957

- 2018년 6월 14일 "템플릿 컴포넌트 순항 중ㅎㅎ" https://xetown.com/topics/996760

- 2018년 6월 17일 "XE에서 컴파일이 안돼요ㅠ(라이믹스에서는 되구요)" https://xetown.com/questions/998893

- 2018년 6월 19일 0.1.0 버전 공개

- 2025년 1월 25일 0.2.0 버전 업데이트 : php 8.x 버전에 대응(기진곰님/팔공산님), staris 에디터 적용 (클라드룹님)

 

 

데모

 

- 라이믹스 2.1.20 / CKEditor4 / PHP 7.4

  • https://dev.aporia.blog/board_Component_Template (들어가서 -> 템플릿 컴포넌트 아이콘을 클릭하면 컴포넌트 팝업창이 뜹니다)

 

윤삼 Lv. 19
아무래도 중급 초반 수준의 코딩 오타쿠인 것 같습니다.

댓글 111

  • 2024.12.14 12:59 #1849153
    라이믹스 최신에서는 지원이 안되나보군용.ㅠ_ㅠ
    유용하게 잘사용하던건데 :)
  • 2024.12.15 02:58 #1849177
    배포한 자료는 많은데 본업이 바빠진 것과 새로워지는 환경에 대응하는 것 사이에 괴리가 큽니다ㅜ
    자료 유지 보수를 해야지, 하는 생각은 있는데 그게 마음 먹은 것처럼 탄력을 받지는 못하더라구요;;
  • 2025.01.08 05:53 #1852728

    오.. 좋네요. staris 에디터도 되면 좋겠네요. 설치해봤는데 최신 라이믹스+staris 에이터 조합에서는 작동하질 않고 있습니다. ㅎ

     

    추신 : 아래 댓글에 sraris 에디터에서도 사용할 수 있도록 수정하는 부분이 있네요. 해보니 잘 작동합니다. 감사합니다.

  • 2025.01.08 06:12 #1852733
    오오 잘 되신다니 다행이에요 :D
  • 2025.01.08 06:30 #1852737
    스케쥴 모듈에서 확장 변수가 안되어서 어떻게 하면 게시판에 미리 입력폼 양식을 넣을까 고민중이였는데
    에디터에 템플릿으로 넣을 수 있으니 좋습니다. 잘 활용하면 확장변수만큼은 아니지만 요긴하게 사용할 수 있을거 같습니다. 다시한번 감사드립니다. ^^
  • 2025.01.08 07:30 #1852742
    오 좋은 아이디어시네요. 저도 멀리서나마 좋은 결과물 기대해보겠습니다 ^^/
  • 2025.01.08 11:39 #1852762
    윤삼님 덕분에 힘이 납니다. 저도 열심히 하겠습니다. ^^
  • 2025.01.23 13:19 #1856213

    php 8.2 에서 ap_template.class.php
    36, 37줄 부분 오류나서 삭제하니 작동은 합니다.
    $oXmlParser = new XmlParser();
    $xml_info = $oXmlParser->parse($xml)->template;
    근데 info.xml안의 정보들,

    템플릿 제목과 제작자등을 불러오질 못하네요.
    그래도 일단은 작동은 되니 사용할 만 합니다.

  • 2025.01.24 01:29 #1856262
    언제 기회되면 8.x에 맞춰 리뉴얼 좀 해보도록 하겠습니다.
    잊고 있었는데;; 상기시켜주셔서 감사합니다!
  • 2025.01.24 04:43 #1856284

    claude의 힘을 빌려서 php8.2에서 정상 작동되게 수정했습니다.

    이렇게 라도 윤삼님의 힘을 덜어 드려야겠죠. 

  • 2025.01.24 08:18 #1856326
    오오, 감사합니다. 진짜 어깨가 한결 가벼워져요ㅎㅎ 주말 중에 반영해서 업데이트 올려보도록 할게요. 다시 한번 감사드립니다!