Мета-свойство facebook open graph og:type of 'website'. Для свойства «имя-объекта» требуется объект типа og:type «имя-объекта».

в торте php 1.3 в представлении ctp у меня есть следующий код:

$url = 'http://example.com/exmp/explus/books/view/'.$book['Book']['id'];

echo $this->Html->meta(array('property' => 'fb:app_id', 'content' => '*******'),'',array('inline'=>false));

echo $this->Html->meta(array('property' => 'og:type', 'content' => 'book'),'',array('inline'=>false));

echo $this->Html->meta(array('property' => 'og:url', 'content' => $url ),'',array('inline'=>false));

echo $this->Html->meta(array('property' => 'og:title', 'content' => $book['Book']['title']),'',array('inline'=>false));

echo $this->Html->meta(array('property' => 'og:description', 'content' => $book['Book']['title']),'',array('inline'=>false));

$imgurl = '../image/'.$book['Book']['id'];

echo $this->Html->meta(array('property' => 'og:image', 'content' => $imgurl ),'',array('inline'=>false)); ?>

и выдает следующую ошибку, когда я публикую его:

{
   "error": {
      "message": "(#3502) Object at URL http://example.com/exmp/explus/books/view/234'   has   og:type of 'website'. The property 'book' requires an object of og:type 'book'. ",
      "type": "OAuthException",
      "code": 3502
   }
}

кто-нибудь знает, как это решить?


person Chinmaya Hegde    schedule 13.04.2012    source источник


Ответы (2)


Эта проблема может возникнуть, если ваша страница ограничена для зарегистрированных пользователей или имеет какую-то логику сеанса.

Вы можете использовать инструмент отладки по этой ссылке:

http://developers.facebook.com/tools/debug

В этой ссылке вы можете указать свой URL-адрес (http://example.com/exmp/explus/books/view/234) в поле "Input URL, Access Token, or Open Graph Action ID".

После этого при нажатии кнопки отладки, если вы видите значения для fb:app_id,og:url,og:type,og:title , эта проблема не возникнет.

В противном случае вы можете проверить раздел "URLs" внизу страницы и щелкнуть ссылку "See exactly what our scraper sees for your URL". Нажав на ссылку, вы увидите html-код вашего сайта в браузере. Это поможет вам отладить проблему.

person Prabhuram    schedule 16.04.2012

BP RAM прав, если вы выполните его шаги, вы сможете найти проблему. (Я бы проголосовал, если бы мог; недостаточно репутации.)

Я хотел бы поделиться своим опытом, чтобы уточнить. Недавно я столкнулся с той же проблемой. Facebook продолжает игнорировать все метатеги, и я получаю ту же ошибку #3502.

Наконец, я использовал Инструмент отладки Facebook> «Очищенный URL-адрес» для проверки моего кода. Этот инструмент показывает именно то, что видит поисковый робот Facebook.

Я заметил, что в моем HTML-коде есть ошибки php. Эти ошибки никогда не появлялись в исходном коде для IE, FF или Chrome. В моем случае это было связано с моим кодом обнаружения браузера. User_agent сканера Facebook не было в моем списке, и мой код обнаружения генерировал сообщения об ошибках, которые нарушали разметку HTML. Я исправил свою функцию, и все снова заработало!

Я предлагаю вам проверить свой веб-сайт с помощью: http://developers.facebook.com/tools/debug/og/echo?q=YOUR_WEBSITE_URL_HERE

(Или используйте https://developers.facebook.com/tools/debug , введите в своем URL-адресе и нажмите "Очищенный URL-адрес" внизу страницы.)

Проверьте, не смешаны ли коды мусора в разделе ‹head›‹/head›. Если есть, Facebook не сможет проанализировать метатеги.

person lawrenceshen    schedule 17.09.2012