Настройка содержимого «Поделиться в Facebook»

Я редактирую этот вопрос, чтобы он имел больше смысла, чем то, что я написал изначально.

Я реализую приведенный ниже код, чтобы добавить кнопку Facebook «Поделиться» на свой веб-сайт. Моя проблема в том, что этот сценарий требует фактических значений для «ссылки», «изображения», «имени», «заголовка» и «описания» непосредственно в сценарии.

Как я могу изменить этот код, чтобы он автоматически извлекал эту информацию с моего веб-сайта. Например, мне нужно, чтобы вытащить URL-адрес из текущего и назначить его «ссылке». Другой пример: вместо предоставления URL-адреса изображения я хочу указать код на определенный класс.

<script> 
  FB.init({appId: "YOUR_APP_ID", status: true, cookie: true});

  function postToFeed() {

    // calling the API ...
    var obj = {
      method: 'feed',
      link: 'https://developers.facebook.com/docs/reference/dialogs/',
      picture: 'http://fbrell.com/f8.jpg',
      name: 'Facebook Dialogs',
      caption: 'Reference Documentation',
      description: 'Using Dialogs to interact with users.'
    };

    function callback(response) {
      document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
    }

    FB.ui(obj, callback);
  }

</script>

Это из http://developers.facebook.com/docs/reference/dialogs/feed/


person ChiralCenter    schedule 02.11.2012    source источник


Ответы (1)


window.location.pathname вернет только часть пути URL-адреса, вам также необходимо добавить свой домен. window.location.href вернет это. Довольно легко изменить код, чтобы сделать это:

<script> 
  FB.init({appId: "YOUR_APP_ID", status: true, cookie: true});

  function postToFeed() {

    // calling the API ...
    var obj = {
      method: 'feed',
      link: window.location.href,
      picture: 'http://fbrell.com/f8.jpg',
      name: 'Facebook Dialogs',
      caption: 'Reference Documentation',
      description: 'Using Dialogs to interact with users.'
    };

    function callback(response) {
      document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
    }

    FB.ui(obj, callback);
  }

</script>
person Matthew Johnston    schedule 02.11.2012
comment
Благодарность! как лучше реализовать это в коде? Я хочу правильно назначить window.location.href атрибуту ссылки. - person ChiralCenter; 02.11.2012
comment
Добавил к моему ответу. Помните, что вам также потребуется заменить идентификатор приложения на идентификатор вашего собственного приложения. - person Matthew Johnston; 03.11.2012
comment
Благодарность! эта коррекция помогла. Я смог выяснить, как назначать параметры объекта, и все заработало правильно. - person ChiralCenter; 04.11.2012