>백엔드 개발 >PHP 튜토리얼 >Facebook Open Graph 메타 태그를 어떻게 동적으로 생성합니까?

Facebook Open Graph 메타 태그를 어떻게 동적으로 생성합니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-22 23:58:29230검색

How Do You Dynamically Generate Facebook Open Graph Meta Tags?

동적 Facebook Open Graph 메타 태그 생성

제목에서 알 수 있듯이 Facebook Open Graph 메타 태그를 동적으로 생성하는 것이 가능합니다. 동적 요소를 메타 태그에 통합하면 Facebook 플랫폼에서 콘텐츠 표시를 최적화할 수 있습니다.

동적 메타 태그 생성을 달성하는 방법

동적으로 생성하려면 메타 태그를 사용하려면 웹페이지의 HTML 코드 내에 PHP 코드를 포함해야 합니다. 이 코드는 데이터베이스 또는 기타 소스의 관련 정보로 메타 태그를 채워야 합니다. 예를 들어, GET 또는 POST 매개변수를 사용하여 동적 데이터를 웹페이지에 전달한 다음 해당 데이터를 메타 태그에 통합할 수 있습니다.

구현 예

그림 , 다음은 Facebook Open Graph 메타 태그를 동적으로 생성할 수 있는 방법에 대한 예입니다.

<code class="php"><?php

$params = array();
if(count($_GET) > 0) {
    $params = $_GET;
} else {
    $params = $_POST;
}
// defaults
if($params['type'] == "") $params['type'] = "restaurant";
if($params['locale'] == "") $params['locale'] = "en_US";
if($params['title'] == "") $params['title'] = "default title";
if($params['image'] == "") $params['image'] = "thumb";
if($params['description'] == "") $params['description'] = "default description";

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
    <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# MY_APP_NAME_SPACE: http://ogp.me/ns/fb/MY_APP_NAME_SPACE#">
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

        <!-- Open Graph meta tags -->
        <meta property="fb:app_id" content="MY_APP_ID" />
        <meta property="og:site_name" content="meta site name"/>
        <meta property="og:url" content="http://mysite.com/index.php?type=<?php echo $params['type']; ?>&amp;locale=<?php echo $params['locale']; ?>&amp;title=<?php echo $params['title']; ?>&amp;image=<?php echo $params['image']; ?>&amp;description=<?php echo $params['description']; ?>"/>
        <meta property="og:type" content="MY_APP_NAME_SPACE:<?php echo $params['type']; ?>"/>
        <meta property="og:locale" content="<?php echo $params['locale']; ?>"/>
        <meta property="og:title" content="<?php echo $params['title']; ?>"/>
        <meta property="og:image" content="http://mysite.com/img/<?php echo $params['image']; ?>.png"/>
        <meta property="og:description" content="<?php echo $params['description']; ?>"/>

    </head>
</html></code>

이 예에서 메타 태그는 GET 또는 POST 매개변수에서 얻은 값으로 채워집니다. 다양한 매개변수 조합으로 웹페이지에 액세스하면 메타 태그 콘텐츠를 동적으로 변경할 수 있습니다.

Facebook 작업 사용 예시

동적으로 생성된 메타 태그를 사용하면 게시할 수 있습니다. 사용자의 Facebook 스트림에 대한 작업. 예를 들어, 다음 코드는 PHP를 사용하여 "have lunch" 액션을 게시합니다.

<code class="php">function postRestaurant() {
    FB.api('me/MY_APP_NAMESPACE:have_lunch?\
    start_time=2000-12-12T04:00:00&amp;\
    expires_in=7200&amp;\
    restaurant=' + encodeURIComponent(getRedirectURI() + '?type=restaurant' + '&amp;description=arnold' + '&amp;title=stalone'), 'post', function (response) {
        if (!response || response.error) {
            console.log('postRestaurant: Error occured => ' + response.error.message);
        } else {
            console.log('postRestaurant: Post was successful! Action ID: ' + response.id);
        }
    });
}</code>

이 코드에서 "restaurant" 매개변수는 웹페이지의 메타 태그를 기반으로 동적으로 생성됩니다. 메타 태그를 맞춤 설정하면 Facebook 작업에 더 관련성 높은 정보를 제공할 수 있습니다.

위 내용은 Facebook Open Graph 메타 태그를 어떻게 동적으로 생성합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.