태터툴즈 1.1용 스킨은 텍스트큐브 1.5와 호환되며, 태터툴즈 1.1 플러그인의 대부분은 텍스트큐브 1.5와 호환됩니다.
- 동작하지 않는 플러그인의 대응을 위한 방법
- 텍스트큐브 1.5에서만 사용할 수 있는 스킨 치환자 및 개선점
의 경우, 텍스트큐브 배포판의 doc 디렉토리의 changes_ko 파일에서 설명하고 있습니다.
아래는 텍스트큐브 1.5와 함께 묶어 배포된 changes_ko의 변경사항 내역입니다. 같은 내용을 텍스트큐브 1.5의 doc/changes_ko에서 읽으실 수 있습니다.
목차
- 스킨 관련 변경점 및 추가 안내
- 플러그인 관련 변경점 및 추가 안내
- BlogAPI 관련 변경점 및 추가 안내
- 환경 설정 파일 관련 변경점 및 추가 안내
스킨 관련 변경점 및 추가 안내
metapage Part 추가
블로그에 프롤로그 기능을 포함하여 다양한 기능을 가진 페이지를 더할 수 있는 메타페이지 플러그인이 추가 되었습니다. 이 기능을 사용하기 위하여 출력되는 영역을 지정하는 metaPage 가 스킨 문법에 추가되었습니다.
* <s_meta> : 메타페이지 영역
* <s_metapage> : 메타페이지 플러그인 및 구성요소 출력 반복 영역
아래는 예제입니다.
<s_meta>
<div class="metapage">
<s_metapage></s_metapage>
</div>
</s_meta>
태그와 키워드의 통합
키워드 기능을 사용할 때, 같은 이름을 가진 태그가 있으면 해당 태그 페이지를 보여줄 때 키워드 설명을 먼저 보여주도록 할 수 있습니다. 이를 위하여 스킨에서
- <s_keylog_rep>
- [##_keylog_rep_title_##]
- [##_keylog_rep_desc_##]
치환자가 추가 되었습니다.
아래는 예제입니다.
<s_keylog_rep>
<div class="entryKeylog">
<div class="titleWrap">
<h2>[##_keylog_rep_title_##]</h2>
</div>
<div class="article">
[##_keylog_rep_desc_##]
</div>
</div>
</s_keylog_rep>
404 에러 관련
페이지가 없을 때 출력되는 페이지를 스킨에서 추가적으로 지정할 수 있습니다. <s_page_error>로 묶은 부분이 에러 발생시에 출력됩니다. 스킨에 해당 부분이 없을 경우에는 1.5 이전과 똑같이 동작합니다.
트랙백 검색 관련 스킨 치환자
트랙백 검색 결과 출력을 위한
- [##_tblist_conform_##]
- [##_tblist_count_##]
- <s_tblist>
- <s_tblist_rep>
- [##_tblist_rep_regdate_##]
- [##_tblist_rep_link_##]
- [##_tblist_rep_subject_##]
- [##_tblist_rep_body_##]
가 추가되었습니다.
아래는 예제입니다.
<s_tblist>
<div class="searchTblist">
<h3>'[##_tblist_conform_##]'에 해당되는 트랙백 [##_tblist_count_##]건</h3>
<ol>
<s_tblist_rep>
<li>
<span class="date">[##_tblist_rep_regdate_##]</span>
<span class="name"><a href="[##_tblist_rep_link_##]">[##_tblist_rep_subject_##]</a></span>
<div class="contents">[##_tblist_rep_body_##]</div>
</li>
</s_tblist_rep>
</ol>
</div>
</s_tblist>
제목 표시 부분 추가
제목의 모양과 표시될 때의 상태에 따라 자유롭게 변경할 수 있습니다. (더이상 :: 을 보지 않으셔도 됩니다. 이에 따라
- 상황에 따라 제목이 변하는 영역을 의미하는 <s_page_title>
- 현재 페이지에서 보여주는 포스트 이름인 [##_page_post_title_##]
이 추가되었습니다.
아래는 예제입니다.
<title>[##_title_##] <s_page_title> :: [##_page_post_title_##]</s_page_title></title>
플러그인 관련 변경점 및 추가 안내
플러그인 이름 변수
기존의 변수들($pluginURL, $pluginPath)에 플러그인의 이름을 가져올 수 있는 변수인
이 추가되었습니다.
플러그인 설정 component 제공
index.xml을 통한 텍스트큐브의 설정 메뉴 대신 설정 프로그램 자체를 만들 수 있습니다. 이 경우 Textcube.Model.PluginCustomConfig 컴포넌트를 사용하면 됩니다. index.xml의 manifest에서 config 바인더를 사용하지 않는 경우 컴포넌트를 사용할 수 있습니다.
인터페이스는 다음과 같습니다.
PluginCustomConfig{
/* public bool*/
function load(){
/* public string null*/
function getValue($name){
/* public bool*/
function setValue($name , $value){
/* public array null */
function getAllValue(){
/* public bool */
function setMergedValue( /* array */ $configVal ){
/* public bool */
function setAllValue(/* array */ $configVal ){
플러그인에서 접근할 수 있는 필드명 변경
기존에 플러그인이 블로그를 구분하기 위하여 사용되었었던 owner 필드가 blogid (또는 경우에 따라 userid) 필드로 변경되었습니다.
기존의 태터툴즈 플러그인을 텍스트큐브에서 사용하기 위해서는 위 필드 호출 부분을 변경해야 합니다. 만약 데이터베이스 입출력이 컴포넌트의 DBQuery 클래스로 규격화되어 있다면, 호환성을 위하여 루트 디렉토리의 config.php에
- $service['useLegacySupport']
를 true로 주어서 임시로 호환성을 개선할 수 있습니다.
index.xml의 requirement 필드의 privilege 안내
용도에 따라 전체 관리자만이 사용할 수 있는 플러그인을 지정할 수 있습니다. 전체 관리자만을 위한 플러그인이라면 <requirement> 안에 <previlege>를 지정하고, administrator를 명기하면 됩니다.
따라서
<requirements>
<textcube>1.5</textcube>
<previlege>administrator</previlege>
</requirements>
와 같이 지정할 수 있습니다.
또한 플러그인에서 현재 블로그가 전체 메타 페이지인지 개인 블로그인지 구분해서 동작하기 위해서는 misc::isMetaBlog를 사용하실 수 있습니다. misc::isMetaBlog() 의 값이 true이면 전체 블로그들의 메타 페이지 입니다.
requireComponent('Textcube.Function.misc');
$isMetaBlog = misc::isMetaBlog();
와 같이 사용하면 됩니다.
관리자 플러그인의 도움말 편집
텍스트큐브 도움말 위키를 이용하여 관리자 플러그인들의 도움말 페이지를 만들 수 있습니다. 관리자 화면의 메뉴 막대 우측의 '도우미' 링크가 이제는 관리자 플러그인 화면인 상태에서도 현재 관리자 플러그인 주소로 링크되어 동작합니다. 위키에 사용자 등록을 하신 후 도움말 페이지를 등록할 수 있습니다.
BlogAPI 관련 변경점 및 추가 안내
BlogAPI 전용 비밀번호 설정 기능
BlogAPI를 사용하여 글을 작성하실 경우 로컬 프로그램을 사용하는 경우는 관계없지만 다른 서비스를 글 에디터로 사용하는 경우가 있습니다. 이 경우 본인의 블로그 암호를 해당 서비스에 노출하고 싶지 않은 경우를 위하여 BlogAPI에만 적용되는 비밀번호를 따로 지정할 수 있습니다. '환경설정'-'글 작성' 의 글 작성 환경 설정에서 비밀번호를 지정하시면 됩니다.
카테고리를 지원하지 않는 클라이언트에도 카테고리를 지원
기존의 BlogAPI는
- http://blog.example.com/api
형태의 XMLRPC server url이 존재합니다. 클라이언트 중에서 카테고리를 지정하지 않고 글만 작성하는 경우가 있습니다. 예를 들어 me2day에서 전송해 오면 카테고리가 지정되지 않아 '분류없음' 으로 등록이 되고, 알라딘의 ttb의 경우 category가 Aladdin으로 전송되어 옵니다. 이렇게 클라이언트가 약간 기능이 부족하여 카테고리 지정으로 인한 다양한 기능을 사용하지 못하는 것을 만회하기 위해 다음과 같은 BlogAPI 주소를 사용할 수 있습니다.
- http://blog.example.com/api?category=mycategory
- http://blog.example.com/api?category=%EC%9E%A1%EC%83%9D%EA%B0%81
- http://blog.example.com/api?category=2
위와 같이 category 라는 변수 뒤에 UTF-8으로 카테고리명을 지정하면, 클라이언트가 지정하거나 혹은 지정하지 않는 경우에라도 강제로 설정하는 기능입니다. 즉, 해당 카테고리에 posting하는 BlogAPI xmlrpc service url이 되는 것입니다.
3)의 예는 현재는 카테고리 이름만으로 구별하는데, 만약 UTF-8 문자열을 구하기 어렵거나 한글에 애로사항이 생길 경우 내부 식별자인 숫자로도 지정할 수 있습니다. 내부 식별자를 알 수 있는 방법은 "관리자>글>분류관리" 메뉴에서 미리보기의 카테고리를 눌렀을 때 주소창에 다음과 같이 나옵니다.
http://blog.example.com/owner/entry/category/?'''id=10'''&entries=2&priority=5&name1=%ED%94%84
이러한 부분이 어려울 수 있기 때문에 해당 기능을 간단하게 지원하기 위한 도우미가 추가 되었습니다. '환경설정' 의 '글 작성' 목록에서 카테고리를 선택하면 그에 해당하는 BlogAPI 글 보내기 링크가 자동으로 생성되어 출력되므로 그 링크를 사용하시면 됩니다.
환경 설정 파일 관련 변경점 및 추가 안내
config.php에서 가능한 설정 값들은 doc/config 에서 확인할 수 있습니다.
RSS 주소 기본값의 숫자 변경
RSS로 출력되는 주소값은 관리자 모드에서 결정한 값 (문자/숫자)을 따라갑니다. 설정에 관계없이 무조건 숫자로 출력하기 위해서는 루트 디렉토리의 config.php에
$service['useNumericURLonRSS'] = true;
를 추가하면 됩니다.
정적 페이지 캐시 기능 끄기
1.5에서 도입된 정적 페이지 캐시 기능을 끌 수 있습니다. 루트 디렉토리의 config.php에
$service['disablePageCache'] = false;
를 추가하면 됩니다.
디버그 모드
1.5에서는 전용 디버그 모드를 가지고 있습니다.
requireComponent('Needlworks.Function.Debug');
를 설치 디렉토리에 생성된 config.php에 추가하면 디버그 모드가 동작하게 됩니다.
더 자세한 내용을 위해서는
config에서 가능한 명령 목록을 참조하시기 바랍니다.
이 글의 관련글(트랙백) 주소 : 이 글에는 트랙백을 보낼 수 없습니다
- Tracked from : MSH WebStory 2007/08/17 09:30 DELETE
Subject : 태터툴즈 1.1 플러그인과 스킨의 텍스트큐브 대응시키기
어떤 태터툴즈 1.1 스킨이나 플러그인은 텍스트큐브 1.5에서 동작하지 않는 경우가 있습니다.이 스킨이나 플러그인을 텍스트큐브에 대응 시키는 방법이 텍스트큐브 사이트에 공지로 올라왔네요.공지 보기: http://notice.textcube.org/ko/43스킨 관련 변경점 및 추가 안내* metapage Part 추가블로그에 프롤로그 기능을 포함하여 다양한 기능을 가진 페이지를 더할 수 있는 메타페이지 플러그인이 추가 되었습니다.이 기능을 사용하기...
- Tracked from : J.PARKER'S HAPPY LIFE 2007/08/24 16:46 DELETE
Subject : JP Thumbnail List/Sidebar/Cover View for Textcube v1.5
지난 8월 16일 텍스트큐브 1.5가 공개 되었습니다. 밤낮 안가리고 열심히 만들어주신 분들께 감사합니다.^^ 기 공개되었던 태터툴즈 1.1 버전에서 사용 중이던 플러그인을 공개된 텍스트큐브 1.5에서 무리 없이 사용하시려면 대응 방법으로 수정 해야 합니다. 그 방법으로는 텍스트큐브 공지사항에 포스팅한 태터툴즈 1.1 플러그인/스킨의 텍스트큐브 1.5 대응 안내나 텍스트큐브 관리자 매뉴얼을 참고 하면 됩니다. 텍스트큐브 발표 이후 Textcube...
2008/03/17 23:39 PERMALINK MODIFY/DELETE REPLY
1.5.3.1 에서는 이 플러그인이 작동하지 않나요?
방명록과 댓글, 트랙백이 온통 난리네요 -_-;;;
1.6.1 로 업그레이드 하고 사용해야 하는건지..
2008/03/19 00:10 PERMALINK MODIFY/DELETE
이 플러그인은 '태터툴즈' 용이고, 텍스트큐브용은 아닙니다. 텍스트큐브용은 이전에 올라왔던 공지 (http://notice.textcube.org/ko/99) 를 참조하세요^^
2008/03/18 08:48 PERMALINK MODIFY/DELETE REPLY
저는 Tattertools 1.1.2.2 : Animato 사용자 입니다.
돌아온 후라이팬 버전도 동작을 하지 않네요.. ^^
스팸때문에 후라이팬을 꼭 사용하고 싶은데
제가 어떻게 하면 될까요?
2008/03/19 00:10 PERMALINK MODIFY/DELETE
1.1.3에서는 정상적인 동작이 확인 되었습니다. 혹시 귀찮지 않으시다면 백업을 하신 후에 1.1.3으로 덮어 씌우신 후에 확인을 부탁 드리겠습니다.^^
2008/03/18 13:41 PERMALINK MODIFY/DELETE REPLY
글이 좀 혼란스럽네요. 늘 텍스트큐브쪽에 올라오는 공지사항류의 글을 볼때마다 드는 생각입니다. 설명이 부족한 것 같습니다. 텍스트큐브가 처음 나왔을 때도 들던 생각.
텍스트큐브와 테터툴즈로 이원화 된 것은 오래전 일이지만, 처음 접하는 사람은 그것을 계속 지켜봐오지 않았기에 혼란스럽지 않을까 싶습니다. 태터툴즈 초창기때부터 써온 저도 버그패치라길래 당당히 텍스트큐브 1.6.1에다가 이걸 받아서 설치해보고는 오류메시지도 안나오는데 왜 안되지?라는 물음을 던졌으니까요. wgshim님 또한 같은 이유로 저런 물음표를 다신 것 같습니다.
단지 사용하시는 툴이 텍트스큐브 1.5 1.6 등등이라면 이쪽 것을 사용하세요. 라고, 안내메시지라든가 이전 글의 링크를 걸어놓았다면 어땠을까 싶습니다.
저 글의 내용만으로는 혼란을 불러올 수밖에 없다고 생각되네요.
2008/03/19 00:12 PERMALINK MODIFY/DELETE
예 태터툴즈와 텍스트큐브가 서로 사맛디 아니할세 이런 전차로 플러그인이 다른데, 공지에서는 '태터툴즈'라고 두리뭉실하게 나와서 혼란을 드린 것 같습니다.
글 첫머리에 공지를 수정하였으며, 앞으로는 이러한 문제가 없도록 하겠습니다. (--)(__)(--)