사진을 찍기 시작하고 나서 생기는 고민이 여럿 있지만 그중 하나는 아마 사진의 관리와 공개방법이지 않을까 한다.
제로보드와 DQ Lib의 연동으로 Raysoda style의 겔러리를 잘 사용하고 있었지만 사진의 분류방식의 한계에 다달았다. Category라는건 multi-dimension하지 못하기 때문이다.
다른 Gallery용 서비스를 살펴 보았다. JAlbum이란 서비스는 Template위에 Skin을 이용해서 사진 Gallery를 만드는걸 가능하게 했다. 플래쉬를 이용한 멋진 Skin들이 다수 존재해서 꽤나 멋지다.다만 단점이라면 static하다는것이다. 겔러리를 만들때 이미 static하게 Gallery가 정해 지는것이다.
그 와중 FlickR는 꽤 멋진 생각을 했다. Photo Blogging+Social Network. 더 멋진건 이들은 WEB 2.0 바탕에 API를 제공함으로써 blog frame 에 dependent하지 않은 skin같지 않은 skin을 만들수 있게 했기 때문에 많은 재미있는게 가능하다. 하지만 난 여전히 내가 찍은 사진은 내 서버에 존재 해야 한다고 생각한다.
문제가 하나 있다면 바로 JAlbum의 방식과 마찬가지로 static하다는 것이다. 하지만 맘에 드는 Flash interface.
그래서 이것과 textcube를 붙여 보기로 했다. 테터툴즈를 사용하지 않은 이유는 더이상 테터툴즈 최신버전을 다운을 받을수 없어서 였다.
문제는 나는 web쪽에 그리 관련이 되 있지 않은 직종에 있다는 것이다. 여기 저기 찾아서 짜집기에 고민에..
그래서 textcube Skin(front end) + Plug-in(back-end)형태의 나만의 최초의 스킨을 만들어 보게 되었고 공개해보고자 한다.
일단 Plug-in이 활성화가 되어 있어야 이 스킨은 작동을 한다.(SimpleViewerPlugIn) Plug-in이 하는 일이란건 gallery DB(XML files)를 Add/Update/Delete시 관리해 주는것이다.
이 Plug-in은 tag에 따라 각각 다른 Gallery_n.xml file을 만들고 관리한다. 또한 attach된 jpg 이미지를 thumb nail로 바꿔서 /attach/{$ownerid}/thumbs 밑에 저장하고 치환자로 그때 그때 적절한 Gallery.xml file의 경로를 스킨으로 보내주게 되는데. 이런점 때문에 이 스킨과 Plug-in은 설치형 TextCube에서만 가능하다. file write이 가능해야 하고 thumb nail을 만들어 저장할수 있어야 하기 때문이다.
Tistory에서는 해본적도없지만 해볼생각도 없다.
이유는 내 사진은 내 서버에..라는 생각 때문이다.
간략한 설명
textcube최신 버전에서만 해 봤다. 테터에는 없었던 updatepost라는 event를 사용하기 때문에 tattertools에서는 작동이 제대로 안될거라고 본다.
또한 이 스킨은 전혀 textcube의 가이드라인을 따라하지 않았습니다. 사진을 보고 느끼는 것 이외에 다른 설명이나 커멘트를 다는걸 썩 달가와 하지 않기 때문에 가급적이면 그런것들을 배제 했습니다. 방명록은 지금 보고 계시는 제 tistory 방명록으로 forward해 놨기 때문에 좀 고치셔야 할겁니다.
결론은
1. 내 사진은 내 서버에 관리 하고 싶다. 2. pseudo dynamic SimpleViwer gallery를 가지고 싶다. 3. 난 Textcube 를 블로그로 사용하는데 아무 지장없다.
이러신 분들은 다운 받아서 쓰셔도 무방합니다.
저는 Web 이나 DB Software Engineer가 아닙니다. 허접한 코드 혹시 발전 시키시고 싶으시면 발전시켜도 무방하고 welcome입니다. 단 제게도 업데이트 상황을 같이 공유해 주시면 감사하겠습니다. 퍼가실때는 댓글을 달아 주시면 저도 기쁘겠습니다.(퍼가신다면..)
Dynamic xml generation - 사실 이 부분은 아직 고민입니다. Admin으로써 글을 posting할때나 글을 update할때 one time effort로 gallery_n.xml을 만들고 이 file은 한번 만들어지면 그 다음 update할때까지 변하지 않기 때문에 굳이 run time에서 xml object를 만들어 pipe하는 방식은 필요 할지 모르겠습니다. 하지만 Tistory같은걸 사용할려면 이 방법이 좋긴 하겠네요.
Dynamic thumb nail generation - 같은 이유입니다.One time effort이지만 Tistory같은것들에게선 Thumbnail을 만들어 저장하는게 불가능하기때문에 이 방식도 고려해 보고 있습니다.
Cut down version of Textcube for photoblogging. Textcube 설치과정을 좀 바꿔서 필요한 db만 install하는 방식.
new Admin page for Photoblogging. admin page를 바꿔서 Photo blogging에 좀더 적합하게 만들어 볼생각입니다.
DB에 column을 하나 더 집어 넣어서 (위도,경도) information을 maintain할 생각입니다. 그래서 그때 그때 google map따위에 photo spot을 표시하게끔 하려고 합니다.
적고 보니까 할께 많군요. 즐거운 사진 생활 하세욥..
Version 1.5 Release 1.5 버전에서는 TextCube 1.6x 에서 돌아가게끔 만들었습니다. 그외에는 1.4 버전과 다른것은 없습니다. ------------------------------------------------ Version 1.4 Release Tagged gallery를 random하게 sort하는 option을 추가 하였습니다. Plug-in 환경 설정에 가시면 새로 option이 추가 되었습니다. 또 새글을 post하실때 마다 tagged gallery는 random하게 sort하게끔 만들어 노았습니다. ------------------------------------------------ Version 1.3 Release Caption 부분에 관계된 tags을 같이 표시하게 하였습니다.(Minor update). 기존에 스킨을 쓰시던 분들은 generatesgal.php만 plug-in 에 덮어 씌우시고 plug-in 설정에 가셔서 다시 한번 gallery_n.xml을 만들어 주시면 됩니다. ------------------------------------------------ Version 1.2 Release DARKLicH님이 말씀하신 buildgallery.php는 이제 Plug-In 설정메뉴에서 할수 있습니다. 설정메뉴에서 저장을 누르시면 buildgallery.php가 실행되고 생성되지 못했던 Thumbnail이 생성됩니다. 밑의 링크에서 받아 가세요. hAnS님이 알려주신 멀티계정시 문제 해결하였습니다. 그리고 firefox에서 밑에 잘리는 부분도 해결해서 같이 묶었습니다.
Quesiton : DARKLicH 님의 질문 . buildgallery.php 의 위치. Answer :
buildgallery.php는 attach directory안에다 집어 넣으심 됩니다. 가끔 글을 저장할때 thumbnail을 만들다 실패할때가 있더라구요. "저장하지 못했습니다." 라는 메세지가 뜨는데 이때가 그런 경우입니다. 이때는 db는 다 만들어 졌지만 Thumbnail을 만드는데 실패한 경우이므로 이럴땐 .../attach/buildgallery.php를 한번 실행 시켜 주시면 Thumbnail이 존재 하지 않는 image file들을 찾아서 만들어 주게 됩니다.
현재 plug-in 의 설정에 가시면 두가지 option이 있습니다. main gallery.xml을 만드는 메뉴와 tagged gallery.xml을 만드는 메뉴가 있는데 이런 메뉴들은 manually gallery db를 만드실때 쓰라고 해 두었습니다. 마찬가지로 이 메뉴에 전체 Thumbnail을 sync하는 메뉴를 add할 예정입니다.
hAnS 님이 알려 주신 Bug Multi 계정일때 생기는 잘못된 path 문제. Fix. $blogURL 을 $service['path']로 바꾸어서 해결하였습니다. version 1.2부터 적용되었습니다.
ahn님이 올려 주신 댓글입니다. 참 혹시나, 저 같은 초보 분들이 계실까봐 적습니다. 분명히 아무 문제 없는 거 같은데, 썸네일이 X 표시 나오시는 분들.. php-gd rpm이 잘 깔려 있나 확인 해 보세요.. gd 라이브러리가 없으면 안 되 는거 같네요.. phpinfo(); 함수 이용해서 확인 해 본 결과 gd 쪽이 전혀 안 뜨길래, yum install php-gd 역시나 안 깔려 있었음... ㅡ.ㅡ; 이거 깔고 나서 httpd 데몬 다시 올리고 하니 잘 됩니다. ^^
사진 사이즈 관련. 제 겔러리의 가장 큰 사이즈 사진은 1024*520 정도 입니다. 현재 cropbody님이 해 보신 결과 너무 크면 thumbnail이 생성이 안되는걸로 확인 되었습니다. 아마도 php lib의 한계인듯 합니다.