PHP 토글...
아무도 이런 플러그인 만들지 않지만 저는 내내 바라던 것이라 그냥 스스로 만들었습니다. (낑낑대면서)
자바스크립트를 이용한 토글을 예전엔 신기해서 좋아했는데 '자바스크립트'를 사용한다는 점에서 좀 그렇기도 하고, 눈에는 보이지 않더라도 이미 웹사이트 안에는 내용물들이 이미 로딩되므로 그런 것도 그렇고..... 한 번 문서 불러올 때 다 불러온 후 스타일 시트로 숨기고 자바스크립트로 불러오는 것이 나을까, 아니면 첫 페이지에는 숨길 내용은 숨기고, 링크를 추가해서 안 가져온 내용물을 다시 불러들이는 것이 나을까. 나는 모르겠습니다. 아무튼 내가 사용하려고 만들었는데 혹시나 사용할 분은 쓰시어요. 좀 더 좋은 구현 방법이 있다면 알려주시길 바랍니다.
덧1. 코드 수정했습니다. 아마도 이게 더 결과를 적용하는데 부하가 적을 것입니다. 다운받으신 분은 교체해주시길 바랍니다.
덧2. Ajax 효과 추가했습니다. 이거 하나 하는 거 너무 힘들군요. ㅜ_ㅜ; 그래도 코드가 좀 괜찮은 건지는 알 수 없습니다.; 자바스크립트 기능을 꺼도 기능할 수 있도록 접근성에 신경썼습니다.
[관련글 그룹 - Plugin ( Source view - Plugin/ShowAndHide )]
1. 다운로드
본인 완전 초짜로, 코드가 조악합니다. -_-; 개선 방법을 공부하는 중입니다.개선했습니다. ;)- 블로그의 문법 적용마다 결과가 다를 수 있습니다. (Markdown, wiki, textile, bbcode, 등등등)
- Ajax 효과를 준 플러그인을 사용할 때는 Show and Hide Ajax 효과 플러그인 최근 것 을 다운받고, 압축을 풀면 나오는 showhide 폴더 자체를 플러그인 폴더에 업로드하여 wp-content/plugins/showhide/파일들 이런 상태가 되도록 합니다. 그리고 플러그인을 활성화 시키면 됩니다.
- Show and Hide Ajax 효과 플러그인 0.2.1
- Updated Sunday, September 10, 2006 22:40 - 4.61 KB
- Show and Hide 플러그인 0.2
- Show and Hide 플러그인 0.2 소스
- Updated Sunday, September 10, 2006 10:28 - 1.44 KB
2. 사용법
- 기본
==== Showlinktext | Hidelinktext | Text ==== - 귀찮으면
==== Showlinktext || Text ====
====| Hidelinktext | Text ==== - 너무 귀찮으면
====|| Text ====
2.1 기본 링크 문구
- Show linktext : More #id
- Hide linktext : Close #id
- Show linktext 문구가 있을 경우에는 Close : Showlinktext #id
3. 예제
- 토글 예제 페이지
- 적용 안되는 블로그도 있을 수 있음. - 내가 사용하려고 만들었기에 별로 고민하지 않았음
3.1 CSS 예제
div.show {
/* 숨겨진 텍스트 박스 */
}
a.show {
/* 보이게 하는 링크 텍스트 문구 */
}
a.hide {
/* 숨기게 하는 링크 텍스트 문구 */
}
a.allshow {
/* 모두 보이게 하는 링크 텍스트 문구 */
}
a.allhide {
/* 모두 숨기게 하는 링크 텍스트 문구 */
}
a.show span, a.hide span, a.allshow span, a.allhide span {
/* 링크를 구별하는 ID 번호 문구 */
display:none; /* 보이지 않게 */
}
/* 예외 */
a.show em, a.hide em, a.allshow em, a.allhide em {
/* Ajax 효과를 준 플러그인 사용할 때
링크를 구별하는 ID 번호 문구 */
display:none; /* 보이지 않게 */
}
/* 숨겨진 텍스트 박스 */
}
a.show {
/* 보이게 하는 링크 텍스트 문구 */
}
a.hide {
/* 숨기게 하는 링크 텍스트 문구 */
}
a.allshow {
/* 모두 보이게 하는 링크 텍스트 문구 */
}
a.allhide {
/* 모두 숨기게 하는 링크 텍스트 문구 */
}
a.show span, a.hide span, a.allshow span, a.allhide span {
/* 링크를 구별하는 ID 번호 문구 */
display:none; /* 보이지 않게 */
}
/* 예외 */
a.show em, a.hide em, a.allshow em, a.allhide em {
/* Ajax 효과를 준 플러그인 사용할 때
링크를 구별하는 ID 번호 문구 */
display:none; /* 보이지 않게 */
}
4. 설명
- 피드에는 showlinktext 문구와 함께 전문이 모두 보여진다.
- 숨겨진 텍스트가 3곳 이상 존재할 때는 모두 보여주기 링크가 보이도록 해놓았다.
- 자바스크립트를 쓰지 않고, 페이지를 로드해야 한다. (ajax 구현은 예외)
- 그래서 첫 페이지에는 간단하게 보여질 내용만 로드된다.
- 만든 이가 (단지) 자바스크립트를 이용한 토글을 별로 좋아하지 않는다…^^;
5. 업데이트 로그
- 자바스크립트 파일 하나 줄임.
- 주석 정리 못 함.. - 어떻게 코딩한 건가 헷갈리네;
- Ajax 효과 구현
- 링크 글씨에 블록 태그 올 수 없도록 str_replace("\r\n",",$hidelink) 처리함.
6. 잡담
preg_replace_callback 으로 구현하고 싶었지만, 도저히 $i에서 막혀서 태터툴즈 방법으로 함.구현함~!- 자바스크립트를 쓰고 싶지 않았음
뭐 Ajax를 이용하면 괜찮을 것 같지만 문제는 나는 Ajax를 아예 모름.결국 함.- 리퍼러와 현재 주소 정보를 이용… - 엉성하다.
Categories : Wordpress
© GET PMWIKI Plug-in made by kebie
Redlia wrote:
와~ 저도 언젠가 만들어봐야지 생각만 하고 있었는데;; 정말 잘 만드셨네요~ 잘 쓰겠습니다~ ^_^
¶ Posted September 10th, 2006 at 2:19
she wrote:
안녕하세요. 건너가보니 태터툴즈던뎅 ^^; 아시다시피 워드프레스용으로 사용하시려면 개조가 필요하겠네요. 아무튼 감사합니다.
뭐가 뭔지... 깔끔하게 한다고 한 거지만 어떻게 만들었는지 주석도 정리 못하겠네요. -_-;
¶ Posted September 10th, 2006 at 7:19
Redlia wrote:
사실은 알고리즘이 필요했습니다;; 클릭시 로딩되는 방법을 어떻게 하면 좋을까 고민중이었거든요..
¶ Posted September 10th, 2006 at 15:02
she wrote:
그런가요. 완전 초짜인데 도움이 되는군요. ^^ 좋은 결과물 나오면 알려주세요. 솔직히 좋은 코드인지 잘 모르겠어서^^;
¶ Posted September 10th, 2006 at 20:13
082net wrote:
소스보기는 되는데, "u.php?번호"로 되어있는 링크를 클릭해서 받은 파일(.zip)의 내용이
<br /> <b>Fatal error</b>: Call to undefined function: filename() in <b>/home/hosting_users/alwaysfine/www/wp-content/plugins/drain-hole/drain_plumber.php</b> on line <b>58</b><br />이렇게 나오데 한번 확인해 주시겠습니까 ^^;¶ Posted September 15th, 2006 at 15:01
she wrote:
^^; 아. 죄송해요. 퍼미션 문제였네요. 해결했습니다. 감사합니다.
¶ Posted September 15th, 2006 at 19:05
082net wrote:
이제 잘 받아집니다 :)
¶ Posted September 16th, 2006 at 15:37