안녕하세요. 재밌고 흥미로운것들 위주로 포스팅 하는 인터레스트입니다.

이번 포스팅은 블로그나 개인사이트를 이용해서 광고를 하시는 분들이나 물건 판매를 하시는분만 아니라 본인의 블로그나 사이트에에 많은 사람들이 찾아왔으면 하시는 분들을 위한 내용입니다. ^^

네이버 블로그의 경우는 네이버쪽에서 알아서 포스팅을 읽어간 후 검색시에 잘 보여주는것 같은데 티스토리 블로그나 일반 개인 사이트 같은 경우는 네이버에서 그다지 신경을 써주지는 않는것 같드라구요.

 

그래서 네이버에서 내놓은 서비스가 신디케이션이란것이며 현재는 버전2 단계입니다.

신디케이션에대한 간단한 설명 및 서비스 가입에 대한 내용은 http://interest.tistory.com/156 여기를 참고하시면 됩니다.

위의 포스팅을 참고해서 신디케이션에 가입을 하시면 우선 사용이 가능한 상태가 되는데, 우선 기본적으로 본인 사이트가 네이버에서 어느정도 검색이 되고 있는지 확인할수있습니다.

 

사실 티스토리나 워드프레스같은 유명 블로그 같은 경우는 RSS 설정만으로도 어느정도 네이버에 노출효과를 볼수있습니다.

그렇기 때문에 신디케이션같은 경우는 블로그보다는 개인 사이트에 더 어울리는 방법이라고 생각합니다.

여기에서 하나 참고사항은 네이버 신디케이션 사이트에 보면 샘플문서가 있는데 이걸 익스플로러를 이용해서 읽으면 오류가 발생합니다. 실제로 오류는 아닌데 제대로 보여주지 못하는것인데 그렇기 때문에 크롬이나 파이어폭스등을 이용해서 열어보시면 됩니다.

 

 



syndicate.zip

 

위의 파일은 이클립스 프로젝트로 된 소스 압축본입니다. 다운 받으셔서 이클립스에서 불러오면 바로 실행이 가능합니다.

 

그러면 전체 소스를 한번 보시겠습니다.


	

import java.io.IOException;
import java.util.Date;
import org.apache.abdera.Abdera;
import org.apache.abdera.factory.Factory;
import org.apache.abdera.model.Entry;
import org.apache.abdera.model.Feed;
import org.apache.abdera.model.Text.Type;

public class naverSyndicate{
 /** 
  * @param args
  * @throws IOException
  */
	public static void main(String[] args) throws IOException {
	  
	    Factory factory = Abdera.getNewFactory();
	    Feed feed = factory.newFeed();
	
	    feed.setId("샘플문서를 보면 사이트주소등을 넣어줍니다");
	    feed.setTitle("인터레스트.티스토리.컴 신디케이션 샘플", Type.TEXT);
	    feed.addAuthor("interest.tistory.com");
	    feed.setUpdated(new Date());        
	    feed.addLink("http://interest.tistory.com/");
	
	    // 상세 페이지 내용 -- 이부분이 반복되면 여러 페이지 내용으로 됨
	    // 네이버는 한 문서에 100개까지 지원하므로 이 부분을 loop로 100개까지 작성하면 됩니다.
	    Entry entry = feed.insertEntry();
	    entry.setId("샘플문서를 보면 해당 게시글 주소를 넣어줍니다.");
	    entry.setTitle("신디케이션 샘플 상세 페이지 타이틀");
	    entry.addAuthor("작성자를 넣어줍니다.");
	    entry.setUpdated(new Date());
	    entry.setPublished(new Date());
	    entry.addLink("실제 게시글 주소를 넣어줍니다. http://interest.tistory.com/194");
	    entry.setContent("html 형식의 글 내용이 들어갑니다.");
	    entry.setSummary("글 내용중에 html 코드를 제외한 텍스트만 들어갑니다. ", Type.TEXT);
	    // 여기까지가 반복된 내용이 들어가는 부분입니다.
	    // 바디부분이라고 할수있습니다.	    
	    
	    String aa = feed.toString();
	    
	    aa = "" + aa; // xml 버전, 인코딩 변경, 네이버에서 제시한 형태를 맞추기 위해서 바꿔줌       
	    aa = aa.replace("http://www.w3.org/2005/Atom", "http://webmastertool.naver.com");        
	    aa = aa.replace("title type=\"text\"", "title");
	    aa = aa.replace("content type=\"text\"", "content type=\"html\"");
	    
	    System.out.println(aa.toString());
	}

}

 

 


여기에서는 xml 형식을 만들기 위해서 apache 프로젝트중 abdera를 이용했습니다.

그냥 일반 스트링을 쭉~ 조합해서 만들어도 상관없지만 그래도 뭔가 있어보이고 편하기 때문에 이용한것입니다. ^^

그런데 문제는 네이버에서 xml 파일의 형식을 몇가지 자체적으로 변경한게 있는데 이 부분은 위 소스에 아래부분에 있는 내용들입니다.

아래의 부분들을 변경해주지 않으면 네이버에서 오류로 판단을 하기 때문에 어쩔수없이 형식을 맞춰줘야 합니다.

 

이렇게 양식을 맞춰서 출력한 내용을 가지고 xml 파일로 저장을 하신후 네이버 신디케이션(네이버 웹마스터 도구)에 있는 XML 검증 화면에 가서 검증을 해보시면 정상이라고 나올것입니다.

이제 기본적으로 xml 파일 만드는것은 완료된 상태입니다. 이제 실제로 본인 사이트에 있는 게시글을 이런 xml 파일로 만들어보시기 바랍니다.

xml 파일로 만드신후에 발급된 연동키를 이용해서 네이버쪽에 전송을 하면 됩니다.

그러면 xml 파일이 정상적으로 네이버쪽에 수신이 되었는지 확인을 하실수있으며, 검색을 해보면 해당 게시물이 검색이 되는것을 확인하실수 있습니다.

 

 


Posted by 인터레스트
,