텍스트큐브 RSS 리더 1.1.2 (2009/11/27)

2009/11/27 16:15  로키 TAG , ,
RSS, Atom 등 피드를 읽어와서 사이드바 혹은 치환자 위치에 보여주는 플러그인입니다. 치환자 방식으로 사용할 때 치환자명은 [##_SimplePie_RSS_##] 입니다. 구버전은 언제나처럼 버전 관리글에 있습니다.

버전 1.1.2

최신 변경사항
- 피드 그룹을 사용할 때 발생하는 오류를 바로잡았습니다.
- 설정창을 정리하고 치환자 설명을 보강하고 수정하였습니다.

호환성과 버그 보고

이 플러그인은 SimplePie 파서에 의존하므로 심플파이 사용 환경이 되지 않으면 사용할 수 없습니다. 왠만한 현대적인 호스팅은 다 됩니다만, 확인하려면 플러그인 경로/sp.php로 들어가면 됩니다. 예를 들어 mydomain.com의 blog 폴더에 태터를 설치하셨다면

http://mydomain.com/blog/plugins/Loki_SimplePieRSS/sp.php

가 호환성 확인 페이지 주소입니다.

플러그인이 작동하지 않으면 먼저 위의 호환성 테스트를 해보시고, 호환이 된다면 디버그 모드로 들어가서 에러 메시지를 확인하시고 이상 증상과 함께 에러 메시지를 알려주시기 바랍니다.

사용 예시


사용 예시를 두 가지 제시하면 다음과 같습니다.

첫 번째는 아주 단순하게 1번 그룹에 모든 피드를 넣고 시간 역순대로 보여주는 형태입니다. 아이템 제목 길이는 9자로 축약하고, 제목 위에 마우스를 가져다 대면 원래 길이의 제목이 보이게 했습니다. 스킨은 설레는 마음 (핑크)입니다.

1번 예시

예시 1


<div class="feed">
<h3>피드</h3>

<ul>
<item>
<li> <a href="[##_item_permalink_##]" title="[##_item_title_full_##]">[##_item_title_##]<br />
<span class="name">[##_feed_title_##]</span>
<span class="date">[##_item_date_or_time_##]</span></a>
</li>
</item>
</ul>
</div>

설레는 마음 스킨은 메뉴 첫머리에 이미지를 사용하므로 "Recent Feed" 이미지 (RecentFeed.gif)를 만들어서 skin/customize/1/images 폴더에 넣고, 스킨 편집으로 들어가서 스타일 시트에 다음 줄을 추가했습니다.

.sideinfo .feed h3 { background:url(images/RecentFeed.gif);}

두 번째 예시는 피드 그룹을 블로그 피드와 트위터 피드 2개 설정해서 함께 보여주는 방식입니다. 사용 스킨은 O-range-O입니다.

사용자 삽입 이미지
<!-- recent feeds -->
        <group>
                <div id="[##_group_id_##]" class="listbox">
                    <h3>[##_group_name_##]</h3>
                    <ul><item>
                        <li>
                            <a href="[##_item_permalink_##]" title="[##_item_title_full_##]">[##_item_title_##]</a><br />
                            <span class="date">[##_item_date_or_time_##]</span> <span class="name">[##_feed_title_##]</span>
                        </li>
                    </item></ul>
                </div>
      </group>
피드 그룹에 따른 반복영역을 <group></group>으로 설정한 후 그룹명 치환자를 넣었습니다. 그리고 group_id 치환자를 (group1, group2 등) 아이디로 넣어서 아이디에 따라 헤더 이미지가 들어가도록 시트를 잡아주었습니다.
#group1 h3 {
    background: transparent
    url(http://lokasenna.pe.kr/blog/skin/orangeo_orange/css/image/orange_sidebar_feeds.gif) top left no-repeat !important;
    margin-bottom:0 !important;
}

#group2 h3 {
    background: transparent
    url(http://lokasenna.pe.kr/blog/skin/orangeo_orange/css/image/orange_sidebar_tweets.gif) top left no-repeat !important;
    margin-bottom:0 !important;
}
그리고 설정창에서는 그룹 이름을 지정해서 위의 group_name 치환자 자리에 들어갈 이름을 정해주었습니다.

사용자 삽입 이미지

즐겁게 사용하시고, 문제나 질문, 칭찬(?) 등이 있으면 댓글 달아주세요~
2009/11/27 16:15 2009/11/27 16:15
TOP
  1. 2008/01/14 13:18 PERMALINK EDIT/ERASE REPLY

    혹시 텍스트큐브에서 사용 가능한가요?
    복사하고 플러그인 메뉴에서 활성화 시킨다음에 사이드바에 추가하려니까 안되네요
    간단한 RSS리더 플러그인 필요해서 뒤져보니 제대로 되는게 없는거 같네요 ㅡ,.ㅡ;;

    • 2008/01/15 01:52 PERMALINK EDIT/ERASE

      지금 이 블로그도 텍스트큐브인데 사용중이라 (아래 Recent Feed 메뉴) 아마 되는 것 같아요. 여기 올린 것보다는 업그레이드 버전이긴 하지만요. 조만간 제가 지금 사용하는 판으로 텍스트큐브 사이트와 이곳에 올릴 테니 그때 되는지 한 번 봐주시면 감사하겠습니다.

    • 2008/01/15 17:57 PERMALINK EDIT/ERASE

      감솨합니다! (__)

    • 2008/01/18 12:30 PERMALINK EDIT/ERASE

      버전 1.0.0 공개했습니다. 여전히 동작하지 않으면 글에 나온 것과 같이 호환성 테스트와 디버그 모드에서 에러 메시지 확인 후 알려주세요~

    • 2008/01/19 11:33 PERMALINK EDIT/ERASE

      일단 정말 감사합니다! :)
      설치할때 폴더 명에서 1.0.0 빼줘야 된다고 알려주셔야겠네요..

      그런데, 저번 버전과 같이 문제가... 사이드바에 추가할수 없다는 거네요
      설정 페이지도 다 잘 나오는데, 플러그인을 활성화 시키고 사이드바 페이지로 가면 드래그 할 수가 없네요 ㅡ,.ㅡ;; 문제가 뭔지를 모르겠습니다

    • 2008/01/20 08:03 PERMALINK EDIT/ERASE

      디버깅 모드와 플러그인 활성화 후 사이드바 페이지에 들어가셔서 에러 메시지가 있나 확인해주시겠어요? 하나 짐작가는 건 있습니다만..

  2. 2008/01/19 15:11 PERMALINK EDIT/ERASE REPLY

    안녕하세요~참 유용한 플러그인이라 관심갖고 봤습니다.
    제가 텍큐 1.6 베타2를 쓰고있거든요~
    설정은 되는거 같은데. 어라 사이드바에서 추가가 안되는 문제점이 있네요.
    호환성테스트를 하면.페이지 오류를 보이며 흰바탕이 나옵니다.~

    조금 아쉬운 부분입니다...
    그럼 좋은 주말 되십시요~

    • 2008/01/20 08:07 PERMALINK EDIT/ERASE

      말씀 감사합니다.^^ 저한테는 재현이 안 되는 문제라 도움이 필요할 것 같네요. 플러그인 활성화 후 디버그 모드로 사이드바 페이지를 봤을 때 에러 메시지가 뜨나 확인해주시면 감사하겠습니다.

  3. 2008/01/21 10:13 PERMALINK EDIT/ERASE REPLY

    디버깅 모드 켜고 보니
    SimpleRSS 플러그인 박스안에

    Fatal error: Call to undefined function: str_ireplace() in /home/kimatg/public_html/plugins/Loki_SimplePieRSS/index.php on line 106

    라고 나오네요;;

    • 2008/01/21 16:45 PERMALINK EDIT/ERASE

      아, 예상대로 str_ireplace가 문제였군요. PHP 버전이 왠만하면 있을 만한 기능인데 그게 없는 호스팅이 또 있네요. 텍스트큐브 쓰시니까 PHP 버전이 많이 낮지는 않다고 가정하고 혹시 str_replace는 될까 하여 str_ireplace 대신 str_replace를 사용한 버전을 올려뒀으니 그건 되나 확인해주시겠어요?

    • 2008/01/21 20:36 PERMALINK EDIT/ERASE

      으음... 귀찮게해서 참 죄송합니다만 ㅜ.ㅜ

      이제는

      Fatal error: Call to undefined function: stripos() in /home/kimatg/public_html/plugins/Loki_SimplePieRSS/index.php on line 301

      라고 나오는군요. 흠 ㅠㅠ

    • 2008/01/22 00:36 PERMALINK EDIT/ERASE

      귀찮긴요, 고칠 수 있으니까 좋네요. PHP 빌드가 좀 특이한 경우이신 것 같기는 하지만요. 뭔가 대소문자 구분 없는 기능에 원수진 빌드이려나요..(..) stripos를 strpos로 고쳤으니 메인 1.0.0 파일로 되나 다시 해봐주시고, 에러가 또 있다면 알려주시면 감사하겠습니다.

    • 2008/01/22 11:14 PERMALINK EDIT/ERASE

      답변 감사합니다^^
      그런데 업로드해주신 파일에는 그대로 stripos라고 수정 안되어있는거같네요.. 그래서 그냥 stripos라고 나오는 부분을 다 strpos로 바꾸고 업로드해보니..!
      사이드바에 추가가 되네요.
      그런데 또다른 문제가...
      이제는 아예 메인 페이지가 뜨지를 않고

      Fatal error: Call to undefined function: htmlspecialchars_decode() in /home/kimatg/public_html/plugins/Loki_SimplePieRSS/index.php on line 490

      라고 하는 군요. 아놔 도대체 제 서버에 뭔 문제가 있는지ㅠㅠ

      덧: 아 그리고 플러그인 환경설정 페이지에서 설정 수정하고 저장하려하면 "데이터 처리 페이지를 찾을 수 없습니다" 라고 나오네요. 그리고... 또하나, "가져올 분류" 는 뭐에 쓰는건가요? -,.-;;

    • 2008/01/22 21:00 PERMALINK EDIT/ERASE

      아.. 아마 PHP 버전이 5가 아닌 4라서 그런 것 같네요. 찾아본 바로는 없는 기능들은 다 PHP 5에 추가된 것들이에요. 아직 버전 4를 사용하는 빌드도 있을 테니 그걸 감안해야겠군요. 일단 html_entity_decode로 고쳐서 다시 올렸습니다.

      데이터 처리 페이지 부분은 전혀 모르겠네요. 일단 에러 메시지를 다 잡아도 계속 나타나는지 보도록 하죠. '가져올 분류'는 대상 피드 중 특정 분류에 속하는 글만 가져오고 싶을 때 사용하는 것입니다. 예를 들어 어떤 블로그에 일기, 잡담, 뉴스 분류가 있는데 일기나 잡담 분류에 속한 글만 가져오려면 '가져올 분류'에는 '일기, 잡담'을 입력하는 거죠.

    • 2008/01/23 21:24 PERMALINK EDIT/ERASE

      아! 이제 완벽하게 되네요
      멋진 플러그인 +애프터서비스(?) 정말 너무너무 감사드립니다!!
      그리고 수고하셨습니다^^

    • 2008/01/23 21:53 PERMALINK EDIT/ERASE

      아 그런데 하나만 더 여쭤봐도 되겠습니까;;

      음.. 제 블로그는 스킨 디자인할때도 W3C XHTML/CSS 준수해서 전체 사이트가 테스트 통과하도록 노력하고 있거든요 그래서 플러그인 설치한 후에도 꼭 테스트 해보는데
      RSS 플러그인 부분에서 한부분이 걸리는거 같네요.

      제 사이트 소스를 보면
      RSS플러그인 주변 (h3태그를 "recent anime"라고 이름바꿨습니다)에
      <ol> 태그 안에
      <div id="group1" class="">
      가 붙네요... 플러그인 설정 페이지에는 보이지 않는데, 이게 걸리는거 같네요.

      뭐 플러그인 작동에는 전혀 상관없는 사소한 일이지만
      한번 체크해주시면 진~~짜 감사하겠습니다!! (_ _;;)

    • 2008/01/23 23:55 PERMALINK EDIT/ERASE

      그렇잖아도 고민되던 점을 짚어주셨네요. 그룹 태그를 만들기 전에 피드 그룹 관리를 자동화하려고 div를 강제했는데, 헤더 부분이랑 균형이 맞지 않아서 오히려 이해하기 어려워진 것 같아요. 그룹 하나짜리 간단한 피드 리더에는 별 필요가 없기도 하고, 말씀대로 표준화 문제도 생기고요. PHP 4랑 호환되게 고친 점이랑 전부터 고민하던 이 부분에 대한 해결까지 해서 작은 버전업을 해야겠습니다.

      아, 그리고 플러그인 활용하신 거 멋져요~ 디자인이 사이트와 잘 어울리는 점도 그렇고요. 제가 본 다른 피드 플러그인들은 특정 디자인을 이미 선택해서 사이트에 비해 튀는 게 아쉬웠는데, 사용자가 자유롭게 디자인하면 얼마나 멋진지 보니 뿌듯하네요.

    • 2008/01/24 00:22 PERMALINK EDIT/ERASE

      네 감사합니다^^
      이제야 플러그인에 맞게 "약간의" 리디자인을 마쳤네요 ㅎㅎ

      다시한번 멋진 플러그인 감사드리고요, 버전업 기대하겠습니다! :)

  4. 2008/01/23 22:16 PERMALINK EDIT/ERASE REPLY

    플러그인 제작까지 하세요? 정말 대단하세요^^

  5. 2009/05/02 08:58 PERMALINK EDIT/ERASE REPLY

    티스토리에서 해당 기능을 사용하고 싶은데 어떻게 하면 될까요? ㅠㅠ

    • 로키
      2009/05/02 11:27 PERMALINK EDIT/ERASE

      아마 텍스트큐브에서만 되는 것 같아요. 플러그인을 업로드할 수 있어야 하니까요.

  6. lhovamp
    2009/05/04 09:39 PERMALINK EDIT/ERASE REPLY

    [엄친아/엄친딸] 없는 세상에서 살고 싶어요. [...]

    • 로키
      2009/05/04 14:34 PERMALINK EDIT/ERASE

      아니 왜 여기서 엄친아/딸이 나오는데! (..)

  7. 2009/11/27 12:22 PERMALINK EDIT/ERASE REPLY

    뒷북이지만 이 리더 플러그인 받아서 잘 쓰고 있습니다~ textcube 설치파일에 기본으로 들어있던 리더기가 제 호스팅 환경에선 작동이 안 되어서 고민했는데 이건 잘 되네요. ^^

    • 로키
      2009/11/27 16:20 PERMALINK EDIT/ERASE

      뒷북 감사합니다~ 덕분에 생각이 나서 버전업을 했네요. 피드 넣으신 모습 멋집니다! 역시 디자인은 사용자가 원하는 게 최고에요.

Write a comment

[로그인][오픈아이디란?]

submit


블로그 화면에서 관리자 메뉴로 바로 가기

2008/01/17 07:13  로키 TAG
예전에 썼던 cyen님의 스킨에서 얻은 아이디어.

난 아웃로그인 플러그인을 사용하니까 관리자 메뉴에 들어갔다가 다시 블로그로 가기를 눌러서 블로그로 와야 하는 불편은 없지만, 대신 로그인한 후 블로그에서 관리자 메뉴를 찾아들어가야 하는 점이 귀찮았다.

그래서 생각한 게 cyen님의 스킨에서처럼 관리자만 볼 수 있는 영역에 자주 쓰는 메뉴들을 링크시키는 것.

지금은 어떤 스킨을 쓰든 수정해서 링크 메뉴를 넣는다. <s_ad_div>와 </s_ad_div> 사이, 보통 수정, 관리, 삭제 링크 등이 들어간 <div> 바로 다음.

<div class="admin">

<a href="[##_blog_link_##]owner/center/dashboard">관리화면</a> |
<a href="[##_blog_link_##]owner/entry">글 목록</a> |
<a href="[##_blog_link_##]owner/skin/edit">스킨편집</a> |
<a href="[##_blog_link_##]owner/setting/blog">환경설정</a> |
<a href="[##_blog_link_##]owner/reader">리더</a> |
<a href="[##_blog_link_##]owner/plugin">플러그인</a> |
<a href="[##_blog_link_##]owner/link">링크관리</a>

</div>

메뉴의 구체적 구성은 취향에 따라 달라질 듯. 이렇게 하면 로그인 상태에서 글을 보고 있다가 뭔가 관리할 게 보이면 바로 해당 관리자 페이지에 들어갈 수 있다.
2008/01/17 07:13 2008/01/17 07:13
TOP

Write a comment

[로그인][오픈아이디란?]

submit


스킨 수정만으로 로그인 + 홈으로 돌아오기

2008/01/17 07:05  로키 TAG
텍스트큐브/태터툴즈 관련 팁 하나. 몇몇 플러그인처럼 로그인하면 관리자 화면이 아니라 블로그 화면으로 돌아오는 효과를 스킨 수정만으로 간편하게 구현하는 방법이다.

단, HTML만 사용하면 로그인하고 돌아올 수 있는 페이지가 고정된다. 무조건 현재 페이지로 돌아오는 게 아니라 블로그 메인 페이지면 메인 페이지, 다른 페이지를 지정했으면 그 페이지 하는 식. 로그인하고 현재 페이지로 돌아오려면 플러그인을 설치하거나 아래에 나온 자바스크립트 방식을 사용하면 된다.

방법은 스킨을 수정해서 다음과 같은 링크를 추가해 주거나 기존 admin 링크를 바꿔주면 된다.


<a href="[##_blog_link_##]login?requestURI=[##_blog_link_##]">Admin</a>


이렇게 만들고 Admin 링크를 클릭하면 로그인 페이지로 넘어가고, 로그인을 하면 관리자 화면이 아닌 블로그 메인 페이지로 돌아오게 된다. 다음처럼 지정해주면 블로그 메인 대신에 지정 페이지로 돌아오게 할 수도 있을 것이다.


<a href="[##_blog_link_##]login?requestURI=[##_blog_link_##]32">Admin</a>


고정 페이지 말고 현재 페이지로 돌아오려면 다음과 같이 자바스크립트를 사용하면 된다.


<script type="text/javascript"><!--
document.write('<a href="[##_blog_link_##]login?requestURI=' + location.href + '">Admin</a></li>');
//--></script>


응용하면 버튼으로도 간단하게 만들 수 있다.


<form method="get" action="[##_blog_link_##]login?requestURI=[##_blog_link_##]">
<input type="submit" value="Admin" />
</form>


아니면 역시 자바스크립트를 사용해서..


<input type="button" value="Admin" onclick="location.href = '[##_blog_link_##]login?requestURI=' + location.href" />


식으로 해주면 로그인하고 현재 페이지로 돌아오게 된다.

로그아웃 링크도 마찬가지로 간편하게 만들 수 있다.


<a href="[##_blog_link_##]logout?requestURI=[##_blog_link_##]">로그아웃</a>


사실 로그아웃은 requestURI 안해줘도 블로그 메인으로 돌아오지만, 역시 메인 말고 다른 페이지 지정해줄 수도 있는 등 이것저것 할 수 있겠지. 역시 위에서 적은 방법대로 자바스크립트를 사용하면 로그아웃하고 현재 페이지로 돌아올 수 있다.


<script type="text/javascript"><!--
document.write('<a href="[##_blog_link_##]logout?requestURI=' + location.href + '">로그아웃</a>');
//--></script>
2008/01/17 07:05 2008/01/17 07:05
TOP

Write a comment

[로그인][오픈아이디란?]

submit