제로보드XE에 대량으로 글을 올리기 , xml 이용해서

제로보드4는 그 엄청난 자유로움으로 많은 사람들의 사랑을 받았지만 개인적으로 정말 싫었다. 너무 정리가 되지 않은 코드들과 난잡한 스킨 .. 소스만 보고 있으면 머리가 지끈거렸기 때문이다. 하지만 제로보드 xe는 매니아가 된것같다. 프로그래머로써 이런 멋진 프로그램이 나올수록 입지가 좁아진다는건 알지만 그래도 너무 편하고 좋다.

여러가지 편한기능중에 기존보드에서 자료를 이전해오는 기능이 있다.

기존 데이타를 xml로 변환한다음 그걸 가져오게 된다. XML Expoter 라는 이름으로 여러가지 보드들을 제로보드xe용 xml로 바꿔주는 프로그램이 있는데 , 제로보드만 아니라 다른 여러 보드들도 있다.

  • cs_export/
  • gnuboard/
  • iezn_migration/
  • miniboard/
  • wordpress/
  • zb5beta/
  • zbxe/
  • zeroboard4/
  • 위와 같이 여러보다로부터 데이타를 이전해볼수있다고 한다면, xml 데이타 형식만 맞춰준다면 게시물을 대량으로 올릴수도 있지 않을까? 하는 생각을 했다. 그래서 XML Expoter 중에 제로보드4를 선택해서 xml 구조를 파악하기로 하고 분석을 했다.

    역시 고수들의 소스를 분석하는것만으로도 많은 공부가 되었다. xml로 첨부화일까지 소화를 하는것을 보고 아 이렇게도 가능하구나. 놀라웠다.

    너무 세세하게 만드는 방법까지는 나중에 시간이 된다면 하고 원리만 설명한다.

    올리고자 하는 글들은 무조건 아래 XML 형식대로만 만들어주면 올라간다. 댓글이라든지,파일첨부 등등을 올릴려면 더 많은 태그가 필요하지만 지금은 글에만 초점을 맞춘다.

    <?xml version="1.0" encoding="UTF-8"?>
    <posts count="1" id="" pubdate="20081018103030">
        <categories>
            <category></category>
            <category></category>
        </categories>
        <post>
            <category></category>
            <title></title>
            <content></content>         
            <user_id></user_id>
            <nick_name></nick_name>
            <password></password>
            <readed_count></readed_count>
            <email></email>
            <homepage></homepage>
            <regdate></regdate>
        </post>
        <post>
            <category></category>
            <title></title>
            <content></content>         
            <user_id></user_id>
            <nick_name></nick_name>
            <password></password>
            <readed_count></readed_count>
            <email></email>
            <homepage></homepage>
            <regdate></regdate>
        </post>
    </posts>

    이 형식을 만드는것은 직접 손으로 치든, 프로그램으로 만들든 상관없다. 그냥 저 xml 형식에 맞기만 하면 대량 글 올리기가 가능해진다.

    몇가지 주의 할점이 있다

    • XML 파일은 무조건 UTF-8이어야 한다.
    • 각 데이타는 base64_encode 가 되어야 한다.
    • 한번에 최대 1000개의 글까지만 업로드가 가능하다.

    두번째 조건인 base65_encode 때문에 한참을 고생했다. 그냥 인코딩안하고 올리면 아무글도 보이지 않는다.

    <title>테스트</title> (X)

    <title>7J6FLOy5qCztmIDsl5Ag64yA7ZWc6r+I</title> (0)

    php에 보면 base64_encode() 라는 함수가 있으니 그걸 한번 적용시켜 주면 된다. 모든 항목을 다 인코딩시켜줘야한다.

     

    xml이 다 생성되었으면 제로보드 관리자로 가서 업로드를 시켜준다. 부가모듈메뉴에서 "제로보드 데이타 이전" 을 눌러준다.

    "게시물정보" 를 선택하고 다음을 누른다.

     

    데이타를 입력할 게시판을 선택하고 , xml 파일의 경로를 지정고 다음을 누르면 완료된다.

    제목을 대량으로 글올리기 라고 했지만, 제로보드xe의 XML expoter에서 제공되지 않는 보드나 집에서 개인적으로 쓰던 자료들, 기존 홈페이지 있던 자료들을 게시판으로 정리해서 올리고 싶으신분들 , 한꺼번에 글을 올리고 싶은 마케터들 , 쇼핑몰의 상품들을 제로보드에 올리고 싶으신분들 등등 많은 사람들에게 유용하다.

    예제 소스들은 다음에 올리도록 하겠습니다. ^^

     

    ps. 질문은 http://money.web2r.net/?mid=factory&category=4816 에 올려주세요 ^^

    Posted by 달을파는아이 달을파는아이

    댓글을 달아주세요:: 네티켓은 기본, 스팸은 사절

    1. 2008.12.12 00:19 신고
      댓글 주소 수정/삭제 댓글
      제가 찾던 기능입니다. 감개가 무량합니다.
      저는 국어 홈페이지를 운영하는데, 그 많은 한글 자료를 어떻게 다 올릴까 걱정하고 있었는데, 여기서 구세주를 찾습니다. ㅠㅠ

      어떻게 올리면 되는지 조금 자세히 설명해 주신다면, 시간되시는 때 소주라도 한 잔 대접하겠습니다.

      지금 하나씩 노가다(--;; 참고로 전 국어 선생입니다.)로 올리다 보니 짜증도 나도 그랬는데, 이렇게 좋은 글을 만나서 기쁩니다.
      • 2008.12.12 09:12 신고
        댓글 주소 수정/삭제
        ^^;;; 소주 좋죠 ㅋㅋ
        한글 자료라 함은 ? hwp 자료말인가요?
        좀 더 자세히 설명해주시면 , 제가 도움이 될수 있을지 없을지 판단을 내릴수 있을것같습니다.
    2. 2008.12.12 18:10 신고
      댓글 주소 수정/삭제 댓글
      맞습니다요. hwp 자료와 doc 자료, pdf 자료들이랍니다.
      워낙 초보인지라 xml 파일에 어떻게 hwp 자료를 입력하는지 여부와 '각 데이타는 base64_encode 가 되어야 한다.'라는 것이 무엇을 의미하는지 모르겠습니다.
      그렇다면 컴퓨터에 리눅스와 php를 설치하고 해야 한다는 것인지 아니면 다른 방법이 있는지 여부가 궁금합니다.
      소주가 좋으시다 함은 '풍류객'일시 분명하오니 조만간 시간을 마련하여 한 잔 하심이 어떠하신지.. ㅋㅋㅋ
      저도 소주에는 나름 일가를 이루고 있는지라.. ㅋㅋㅋ
      • 2008.12.13 13:04 신고
        댓글 주소 수정/삭제
        ㅎㅎ 풍류객이라..
        아무래도 hwp,doc 파일들을 첨부화일로 올리실려는것같습니다. 첨부화일을 대량으로 올리는 방법에 대한 글을 본것같습니다. 위의 글은 첨부화일 부분은 빠져있습니다.
        제로보드 홈페이지에 질문 답변 게시판에 본적이 있는것같은데, 지금 찾아보니 잘 못찾겠네요..
        첨부화일을 대량으로 업로드 할 수 있다면, 정말 편할텐데 말이죠. 분명히 방법이 있을겁니다.
        당장 도움을 못드릴것같습니다. 제가 방법을 찾게 되면, 포스트를 날리겠습니다. ^^
    3. 미카
      2010.02.04 22:19 신고
      댓글 주소 수정/삭제 댓글
      디비 백업받은 걸 xml까진 만들었는데 아무리해도 자료입력이 안되서 찾던차에 여기까지 왔네요...
      아 ㅠ.ㅠ 그런데
      base64_encode는 또 뭔가요 ㅡ.ㅜ);;
      흑..어렵네요...(개발자가 아닌지라...OTL)
      • 2010.02.04 23:12 신고
        댓글 주소 수정/삭제
        고생하고 계신게 눈에 보이네요.
        저도 base63_encode 이 놈때문에 고생했던 기억이 새록새록..

        개발자가 아니라면, 접근하기 조금 어려울겁니다.
        php 함수중에 base64_encode 라는게 있는데요. 그걸 xml 데이타에 한번 돌려줘야 하거든요.

        주위에 아는 개발자 있으면 살짝 부탁해보심이~ ^^
    4. 2012.11.27 17:50 신고
      댓글 주소 수정/삭제 댓글
      위에 사이트로 들어가시면 base64_encode 하실 수 있습니다.

      그나저나 저는 첨부자료를 하고 싶은데...
      올려야 할 자료가 너무 많네요 ㅎㅎ


    BLOG main image
    멈추지 않으면 얼마나 천천히 가는지는 문제가 되지 않느니라 by 달을파는아이

    나의 인생 시계 만들기 >>

    카테고리

    분류 전체보기 (429)
    달을파는아이 (283)
    머니머신 (125)
    파싱의 추억 (20)
    현미촌 현미국수면 (1)
    Statistics Graph