—»     —»   PHP-сниппеты для взаимодействия с Twitter
  Раздел: Блоггинг   Нет комментариев  

PHP-сниппеты для взаимодействия с Twitter



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

Получение числа читателей в системе Twitter

Часто на сайтах отображается число follow-еров в системе Twitter. Это достаточно просто сделать. Первое, что нужно сделать, это внести следующую функцию:

function get_followers($twitter_id){
    $xml=file_get_contents('http://twitter.com/users/show.xml?screen_name='.$twitter_id);
    if (preg_match('/followers_count>(.*)</',$xml,$match)!=0) {
        $tw['count'] = $match[1];
    }

    return $tw['count'];
}

Как только вы внесёте функцию, вам нужно вызвать ее, как показано ниже:

$nb =  get_followers('phpsnippets');
echo "PHP Snippets already have ".$nb." followers!";

: Источник: http://www.phpsnippets.info/get-twitters-followers-in-php

Получение последнего статуса в системе Twitter

Используя PHP и cURL, мы с легкостью можем получить последний статус конкретного пользователя в Twitter. Как только мы получаем статус, нам нужно отобразить его в блоге. Посмотрите, как это реализовано в подвале блога WPRecipes.

function get_status($twitter_id, $hyperlinks = true) {
    $c = curl_init();
    curl_setopt($c, CURLOPT_URL, "http://twitter.com/statuses/user_timeline/$twitter_id.xml?count=1");
    curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
    $src = curl_exec($c);
    curl_close($c);
    preg_match('/<text>(.*)<\/text>/', $src, $m);
    $status = htmlentities($m[1]);
    if( $hyperlinks ) $status = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", '<a href="%5C%22%5C%5C0%5C%22">\\0</a>', $status);
    return($status);
}

Функцией очень просто воспользоваться:

echo get_status('catswhocode');

: Источник: http://www.phpsnippets.info/get-twitter-status-using-php

Ссылка на обновление статуса без проблем с кодировкой

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

<a href="http://twitter.com?status=@catswhocode Hi Jean, how are you?">Tweet!</a>

Итак, где же тут что изменилось? Все очень просто: заметьте, что ссылка ведёт не на http://www.twitter.com, а на http://twitter.com, без «www».

Посмотрите рабочий пример

Получение числа перепостеров для конкретных страниц

Большинство блоггеров используют виджет Tweetmeme для отображения числа перепостеров. Знали ли вы, что у Tweetmeme также есть АПИ, которые вы можете использовать для получения ссылки, которую опубликовал кто-то еще из пользователей?

Следующая функция позволит вам получить число перепостеров конкретной ссылки:

function tweetCount($url) {
    $content = file_get_contents("http://api.tweetmeme.com/url_info?url=".$url);
    $element = new SimpleXmlElement($content);
    $retweets = $element->story->url_count;
    if($retweets){
        return $retweets;
    } else {
        return 0;
    }
}

Воспользоваться функцией не составит труда:

echo tweetCount('http://www.catswhocode.com');

Учтите, что АПИ Twitter’а также предлагает различные варианты реализации того же метода.
Для примера посмотрите http://urls.api.twitter.com/1/urls/count.j...=www.google.com

: Источник: http://www.phpsnippets.info/get-how-many-t...eeted-using-php

Тестирование отношений между двумя друзьями в системе

Если вам хочется знать, читает ли ваши твиты конкретный пользователь, то вам нужно воспользоваться АПИ Twitter. Этот сниппет покажет вам соответствующий результат, если два пользователя на линиях кода 18 и 19 поддерживают связь. В противном случае, результат будет отрицательным.

/* makes the request */
function make_request($url) {
    $ch = curl_init();
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

/* gets the match */
function get_match($regex,$content) {
    preg_match($regex,$content,$matches);
    return $matches[1];
}

/* persons to test */
$person1 = 'phpsnippets';
$person2 = 'catswhocode';

/* send request to twitter */
$url = 'https://api.twitter.com/1/friendships/exist';
$format = 'xml';

/* check */
$persons12 = make_request($url.'.'.$format.'?user_a='.$person1.'&user_b='.$person2);
$result = get_match('/<friends>(.*)<\/friends>/isU',$persons12);
echo $result; // returns "true" or "false"

: Источник: http://www.phpsnippets.info/get-twitter-status-using-php

Короткие ссылки для Twitter

Если вы являетесь пользователем системы Twitter, то вам наверняка известно, что вы не можете публиковать сообщения длиннее 140 символов. Во избежание данной проблемы, вам нужно использовать укороченные ссылки. Существует множество соответствующих сервисов для укорачивания ссылок а сети. TinyUrl.com является одним из них. Он, конечно, предлагает не самые короткие ссылки, но мне очень нравится данный сервис.

Следующая функция берёт длинную ссылку в качестве параметра и возвращает вам укороченную ссылку, используя сервис TinyUrl.

function getTinyUrl($url) {
    return file_get_contents("http://tinyurl.com/api-create.php?url=".$url);
}

: Источник: http://www.phpsnippets.info/convert-url-to-tinyurl

Укороченные ссылки в Bit.ly

В предыдущей записи о сниппетах мы показали вам, как укорачивать ссылки посредством TinyUrl.com. Это, конечно, удобно и полезно, но некоторые предпочитают использовать сервис bit.ly. С использованием PHP для получения укороченной ссылки не возникнет никаких проблем.

function bitly($url) {
    $content = file_get_contents("http://api.bit.ly/v3/shorten?login=YOURLOGIN&apiKey=YOURAPIKEY&longUrl=".$url."&format=xml");
    $element = new SimpleXmlElement($content);
    $bitly = $element->data->url;
    if($bitly){
        return $bitly;
    } else {
        return '0';
    }
}

Для того чтобы воспользоваться функцией, используйте следующий код:

echo bitly("http://www.catswhocode.com");

: Источник: http://woorkup.com/2010/06/06/3-practical-...ably-must-know/
Обнаружили ошибку или мёртвую ссылку?
Выделите проблемный фрагмент мышкой и нажмите CTRL+ENTER.
В появившемся окне опишите проблему и отправьте уведомление Администрации ресурса.
Нужна органическая вечная ссылка из данной статьи? Постовой?
Подробности здесь
Вам понравился материал? Поблагодарить легко!
Будем весьма признательны, если поделитесь этой статьей в социальных сетях:

Ключевые тэги: Twitter
Опубликовал Mysterious Master   Прочитано (раз): 9882   |   Нет комментариев
Источник материала / оригинал статьи   Распечатать
Другие статьи и новости по теме:
Добавление комментария
Уважаемые пользователи!
При добавлении комментариев на сайт Вам следует учитывать следующее - все комментарии проверяются Администрацией на предмет отсутствия спама. При обнаружении признаков спама, в оставленном Вами комментарии, сам комментарий будет незамедлительно удалён, а Ваш IP-адрес будет забанен без предупреждения! Учётные записи пользователей, рассылающих спам, блокируются/удаляются без права последующего восстановления.

С уважением, Администрация сайта.
* = поля обязательны к заполнению
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Вопрос : Назовите месяц December по-русски
Подтверждение кода безопасности :

Включите эту картинку для отображения кода безопасности
обновить, если не виден код


Моторные масла купить
О моторных яхтах и катерах. Технические описания моторных лодок и моторов
motor-tools.ru
Парикмахерская люблино
Оборудование для парикмахерских. Салон парикмахерских услуг
salon-alexis.ru
Популярные публикации


















Свежие шаблоны сайтов каждый день
С миру по нитке
«    Сентябрь 2017    »
ПнВтСрЧтПтСбВс
 123
45678910
11121314151617
18192021222324
252627282930