Ошибка Google-Plus +1 на страницах со встроенным видео

Я использую тег html 5, чтобы встроить кнопку Google Plus 1 на свой сайт.

<div class="g-plusone" data-size="tall"></div>

Он отлично работает для всех страниц, за исключением случаев, когда на страницу встроено видео. Я получаю общую ошибку кнопки (нет хорошего журнала, который я вижу в сетевом трафике), а затем кнопка перенаправляет на: https://support.google.com/plus/answer/1199142?p=plusone_button_error&rd=1

Все это довольно просто настроить, поэтому мне трудно решить проблему.


Вот пример страницы, на которой возникает ошибка: http://www.trendhunter.com/keynote/enlightening-keynote

Вот пример страницы, на которой кнопка работает нормально: http://www.trendhunter.com/trends/glutinous-fast-foods-mcdonalds-china-offers-the-new-sausage-double-beef-bur

Я использую этот скрипт для загрузки в gplus:

(function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0] s.parentNode.insertBefore(po, s);})();

После этого я загружаю html для кнопки в .load, я переместил скрипт google plus в обратный вызов для .load, но, похоже, это не имело никакого эффекта.


person JewrassicPark    schedule 15.04.2013    source источник


Ответы (1)


Кнопка не отображается, поскольку прокси-сервер Google не может получить доступ к странице. Поскольку другая ваша кнопка работает с переданным параметром href, это означает, что страница имеет неверный канонический тег / каким-то образом блокирует прокси Google+. Чтобы протестировать страницу без написания кода HTML, попробуйте просто поделиться ссылкой прямо в Google+:

http://www.trendhunter.com/keynote/enlightening-keynote

Если это сделать в G+, вы заметите, что Google+ не может найти страницу для публикации. Другими словами, ваш код +1 в порядке, проблема в том, что ваша страница не обнаружена Google+. Самым быстрым/простым решением будет ссылка на страницу, которая может быть отображена, потому что это, вероятно, проблема на стороне Google+.

Беглый просмотр вашего тега noscript привел меня к этой ссылке:

http://www.trendhunter.com/keynote/enlightening-keynote?ModPagespeed=noscript

Что ОТНОСИТСЯ к Google+. Возможно, передав это как ссылку на кнопку, вы исправите это!

person class    schedule 15.04.2013
comment
Это другая кнопка Google Plus. Я говорю о той, что на левой боковой панели (относительно статьи), которая загружается позже. Он использует более новый код, совместимый с HTML, и именно на нем у меня возникла ошибка. - person JewrassicPark; 15.04.2013
comment
Понял, только что видел. Помогает ли удаление раздела href? - person class; 15.04.2013
comment
В html5 нет раздела href, который я использую <div class="g-plusone" data-size="tall"></div> - person JewrassicPark; 15.04.2013
comment
Хм. Вы можете попробовать явную загрузку, я копну глубже и посмотрю, есть ли что-то еще, что может быть здесь виновником. - person class; 15.04.2013
comment
Я попытался выполнить явную загрузку, и хотя явная загрузка работала так, как должна, она не помогла решить проблему со встроенными видео-статьями. - person JewrassicPark; 15.04.2013
comment
Еще одно обновление :( Похоже, ваш код работает, проблема в том, что Google+ не видит вашу страницу. Это немного сложнее отлаживать, я буду продолжать смотреть, что можно сделать здесь. - person class; 15.04.2013
comment
Параметр ModPagespeed=noscript полностью сработал. Не могли бы вы быстро рассказать мне, как вы к этому пришли? Думаю, я не уверен, что вы имели в виду, глядя на тег noscript. - person JewrassicPark; 15.04.2013
comment
Я не совсем уверен, что хочу оставить ссылки с ModPagespeed в конце. Есть ли другой способ исправить это? - person JewrassicPark; 15.04.2013
comment
Проблема заключается в том, что прокси-сервер Google+ не видит контент на вашей странице, когда работает pagespeed. Pagespeed, похоже, вызывает проблемы с Google+. Для этого может быть несколько причин, в большинстве случаев это происходит, когда страницу трудно разобрать, она имеет плотный JavaScript или сильно зависит от JavaScript. Я обязательно обновлю ответ, если смогу найти лучшее решение. Когда вы передаете параметр в pagespeed, он отключает любую функцию, из-за которой прокси-сервер G+ не может читать/отображать содержимое страницы. - person class; 15.04.2013
comment
На данный момент все в порядке, но я полагаю, что если эта ссылка отключает некоторые службы скорости страницы, то любой, кто перейдет по этой ссылке (что является целью g+), потеряет часть преимуществ службы скорости страницы, если мои предположения о том, как это ссылка работает правильно. - person JewrassicPark; 16.04.2013