Динамические (Ajax) кнопки общего доступа (Facebook, Google+ и Twitter), чтобы поделиться изображением, со ссылкой и описанием - PullRequest
5 голосов
/ 22 декабря 2011

Уже несколько дней я ищу решение и не могу понять, почему оно все еще не работает.

Вот моя цель : у меня есть веб-сайт синтермедии.Изображения динамически изменяются (с помощью кнопок предыдущая и следующая).Я просто хочу поделиться изображением в социальных сетях (facebook, google + и twitter) и на самом деле увидеть изображение на моей стене с небольшим описанием и ссылкой на страницу.

Точность :Изображение - это миниатюра (то есть, не тот же URL) основного изображения, и ссылка, которую я хочу опубликовать, не является ни страницей, на которой я работаю (которая является статической из-за Ajax), ни изображением.

Мои попытки : Я почти получил его на Facebook, но загрузка изображения не удалась, и это было с кнопкой «Поделиться» (что, похоже, не рекомендуется в пользу лайков) и для Google + кнопка +1 становится краснойпосле того, как я щелкнул по нему ... Я попробовал XFBML и OpenGraph, но проблема с Ajax (URL-адрес страницы или не изменился даже с createElement ("

Вопросы : 1. ЕстьЕсть ли какое-нибудь упакованное решение (например, addthis, но работающее так, как я хочу)? 2. Или у вас есть одно (или подсказка) для меня, пожалуйста? 3. Я единственный, кто считает, что официальная документация на Facebook и google + ajax не работает??

Большое спасибо.Хьюго

PS : если бы у меня была возможность вылететь, чтобы отредактировать комментарий с контентом, которым я собираюсь поделиться, это было бы здорово!

Ответы [ 2 ]

1 голос
/ 20 мая 2012

Один из способов сделать это с помощью маскировки.

Настройка страницы, которая предоставляет изображение, заголовок и описание для социального приложения (aka. Facebook, google +).Затем вы можете использовать Javascript, чтобы перенаправить пользователя на страницу, которую вы действительно хотите, чтобы пользователь увидел.Для пользователей без Javascript на странице должна отображаться ссылка на целевую страницу с надписью «Нажмите здесь, если вы не перенаправлены автоматически».Изображение должно существовать на странице, но вы можете поместить его в div с помощью style = "display: none;"так что пользователь на самом деле его не видит.

Более продвинутым методом будет использование IP-адреса и имени браузера (пользовательский агент), чтобы определить, является ли посетитель пользователем или роботом социальной сети, и использование временного перенаправления 502 на нужную пользователю страницу.чтобы увидеть, если посетитель не социальный робот.Социальным роботам будет показана страница с изображением, заголовком и описанием.

0 голосов
/ 12 апреля 2012

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

Это не новая проблема. С этой же проблемой сталкивается поисковая индексация приложений AJAX . К сожалению, нет простого решения. Вот несколько сложных:

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

Снимок Решение Вы можете использовать программу-обходчик, которая способна выполнять JavaScript, чтобы делать снимки различных состояний вашего приложения. Затем можно назначить кнопки социальных сетей для моментального снимка текущего состояния.

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

...