오픈 그래프(Open Graph protocol)는 소셜 미디어와 웹사이트(혹은 웹페이지)를 통합하는 역할을 하는 오픈 프로토콜이다. 오픈 그래프를 적용한 웹사이트는 소셜 그래프에서 리치 오브젝트로 통합될 수 있다. 예를 들어 웹사이트에서 일어난 사용자의 활동은 소셜 그래프에 기록되고, 사용자는 소셜 미디어에서 이 활동을 확인할 수 있다.
오픈 그래프는 페이스북에서 처음 고안되었으며1), 마크 주커버그(Mark Zuckerberg)는 소셜 그래프의 개념을 설명하면서 종종 페이스북의 통제 밖의 웹사이트에서 사용자의 관계를 사용할 수 있도록 웹 사이트의 소셜 그래프를 다른 웹 사이트에 제공하려는 페이스 북의 목표를 강조했다. 2)
오픈 그래프를 사용하기 위해서는 기본적으로 메타 태그를 설정해주어여 한다. 3)
<meta property="og:title" content="Example" /> <meta property="og:type" content="website" /> <meta property="og:url" content="http://example.com/" /> <meta property="og:image" content="http://example.com/image.jpg" /> <meta property="og:site_name" content="Example Domain" /> <meta property="og:description" content="This site is..." /> <meta property="og:audio" content="http://example.com/audio.swf" /> <meta property="og:video" content="http://example.com/video.swf" /> <meta property="og:locale" content="en_US" /> <meta property="og:fb:admins" content="1234567890" /> <meta property="og:fb:app_id" content="1234567890" />
속성 | 내용 | 비고 | ||
---|---|---|---|---|
title | 그래프 내에서 표시되어야 하는 개체의 제목 | |||
type | 개체의 유형. 정의하는 유형에 따라 다른 속성이 필요할 수도 있다. | music, video, article,book, profile, website 등 | ||
image | 그래프에서 개체를 대표하는 이미지 URL | 페이스북의 경우 너비 300px 높이 200px 이하의 이미지는 사용하지 않음 | ||
url | 그래프에서 영구적인 ID로 사용되는 개체의 표준 URL | |||
site_name | 개체가 더 큰 웹 사이트의 일부인 경우 전체 사이트에 대해 표시해야하는 이름 | |||
description | 개체를 설명하는 1~2개의 문장 | |||
audio | 이 객체에 동행 할 오디오 파일의 URL | |||
video | 개체를 보완하는 비디오 파일의 URL | |||
locale | 언어 및 지역, language_TERRITORY 포맷이며 기본은 en_US | |||
fb:admins | 페이스북 인사이트를 사용하기 위한 아이디(도메인인 경우) | |||
fb:app_id | 페이스북 인사이트를 사용하기 위한 아이디(앱인 경우) |
구조화된 속성, 개체 유형 등 더 자세한 정보는 오픈 그래프 프로토콜 웹사이트에서 확인할 수 있다.
페이스북 개발자 사이트에서는 공유 디버거를 제공한다.