Как -> Предложить купон для твита - PullRequest
16 голосов
/ 28 июня 2011

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

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

Я использую PHP и могу написать все, что нужно для этого.

Кто-нибудь знает, как все это делается?


Обновление:

ОК, я скачал http://code.google.com/p/oauth-php/still Не ясно, что делать дальше.

Я пытаюсь понять, начинаю с этой страницы: http://code.google.com/p/oauth-php/wiki/ConsumerHowTo#Two-legged_OAuth

Насколько я понимаю, в следующем порядке должно происходить следующее:

  1. Мне нужна ссылка где-то на моем сайте, на которой будет предложение: «Отправь Twit и получи купон», верно?

  2. Как только они нажимают на ссылку предложения, как мне заполнить сообщение в окне их обновления в твиттере: «Попробуйте этот инструмент бесплатно: http» // mylink.com »?

  3. Как только они отправят пост в Твиттере, я предполагаю, что у меня будут некоторые настройки, которые перенаправят обратно на мой сайт на страницу с купоном.


ОБНОВЛЕНИЕ: переключено на twitteroauth , но все равно нужна помощь ...

Ответы [ 4 ]

8 голосов
/ 11 июля 2011

По сути, вам нужно создать приложение, которое использует OAuth API для подключения к твиттеру и публикации твита. Это займет несколько шагов (при условии, что вы зарегистрировали свое приложение в Twitter, предоставив вам ключ и секрет):

  1. Создание объекта TwitterOAuth с использованием учетных данных клиента.
  2. Запрос временных учетных данных из Twitter.
  3. Создание авторизованного URL для Twitter.
  4. Перенаправить пользователя на авторизацию URL.
  5. Пользователь авторизует доступ и возвращается из Twitter.
  6. Перестройка объекта TwitterOAuth с учетными данными клиента и временными учетными данными.
  7. Запрос API Twitter.

Используя TwitterOAuth , это будет выглядеть примерно так:

<?php
  require_once 'TwitterOAuth.php';
  define('THIS', 'http://example.org/tweet.php'); // Absolute URI to script

  if(isset($_GET['callback']) {
    $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, 
                      $_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);
    $connection->post('statuses/update', array('status' => 'Coupon message'));
    header('Location: coupon.php'); // Supplies user with coupon
  } else {
    $connection = new TwitterOAuth('key', 'secret'); // Key & secret from Twitter
    $temporary_credentials = $connection->getRequestToken(THIS.'?');
    $redirect_url = $connection->getAuthorizeURL($temporary_credentials, FALSE);
    header('Location: '.$redirect_url.'&callback');
  }
?>

(Обратите внимание, что приведенный выше код не проверен; прочитайте документацию по TwitterOAuth, прежде чем делать что-то самостоятельно.)

3 голосов
/ 15 июля 2011

Для более ленивых из нас;) Этот делает кнопку для оплаты с помощью твита (например, enter image description here) и ссылки на URL по вашему выбору впоследствии. Полагаю, вы могли бы достичь большинства целей с помощью этого (хотя персональные коды купонов могут быть хитрыми) .

1 голос
/ 11 июля 2011

Вы можете использовать Библиотеку Авраама в Twitter OAuth , я бы посоветовал это, поскольку она делает процесс OAuth невероятно простым.

То, что вы хотите сделать, это сделать ссылку типа «Чирикать об этом, чтобы загрузить бесплатно» или что-то еще. Эта ссылка перенаправит их на авторизацию вашего приложения Twitter. Когда обратный вызов возвращается на ваш сайт, вы запрашиваете токен доступа и сохраняете его. На этой странице должно быть текстовое поле, предварительно заполненное вашим сообщением, которое отправляет на ваш сайт сообщение, которое они хотят отправить. Вы сделаете вызов API, чтобы опубликовать сообщение с полученным токеном доступа. Как только вы сделаете звонок и опубликуете твит, покажите им страницу для скачивания.

Взгляните на документацию библиотеки TwitterOAuth , в которой приведены подробные примеры того, как использовать библиотеку для совершения звонков, которые вы ищете.

0 голосов
/ 28 июня 2011

Небольшой PHP-скрипт и что он делает:

// php.ini::session.auto_start=1
include('commands.php');
$command = get_command_from_request();
switch($command) {
  case 'tweet': 
      command_tweet(); break;
  case 'redirect':
      command_redirect(); break;
  default:
    command_default();
}

Имейте в виду, что вам необходимо реализовать сопоставление команды с запросом самостоятельно (реализация get_command_from_request), а также для конкретных команд.

Твиттинг зависит от используемого вами API. Любой из многих рассматриваемых API имеет это в качестве примера.

Кроме того, вам нужно создать HTML-форму для сбора данных, которые необходимо отправить в Твиттере (ключи API и т. Д.). Если вы не знаете, как данные поступают в ваш скрипт, ознакомьтесь с руководством по PHP для форм .

Итак, давайте предположим, что command_default отображает форму, а также ее проверку внутри command_tweet, и get_command_from_request завершено. Остальные делают перенаправление на ваш секретный купонный скрипт.

Поскольку вы не очень много рассказали о своем секретном купонном скрипте, вероятно, достаточно перенаправления. Хорошая функция для перенаправления HTTP в PHP: http_redirect().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...