06
Янв
Как добавить в тему последний твит?

Как добавить в тему последний твит?

В теме своего блога решил использовать функцию simplexml_load_file(), чтобы вытянуть последний твит. К сожалению, выводило вот такую ошибку:

Warning: simplexml_load_file(): URL file-access is disabled in the server configuration

Попытки найти как же в теле скрипта поменять права на удаленное чтение ни к чему не привели. Желания лезть в CURL не было никакого. После раздумий нашлось очень просто решение — использовать родную функцию WordPress-а wp_remote_request. А уже полученный результат разобрать на кусочки с помощью simplexml_load_string.

Пример выглядит так:

function getTwit ($name) {
    if (!function_exists("simplexml_load_string")) {
            return "Проблемы с твиттером. Версия PHP должна быть 5.х и выше";
    }
    $feedUrl = 'http://twitter.com/status/user_timeline/'.$name.'.xml?count=1';
    $resp = wp_remote_request($feedUrl, array('timeout' => $widgetOptions['fetchTimeOut']));
    if ( !is_wp_error($resp) && $resp['response']['code'] >= 200 && $resp['response']['code'] < 300 ) {
        $xml = simplexml_load_string($resp['body']);
        return $xml->status->text;
    } else {
        return "Проблемы с твиттером. Не может загрузить статус. Может стоит его выключить?";
    }
}
echo getTwit($db_twitter_name);

Вам понравился этот пост?

Почему бы не оставить комментарий ниже или не подписаться на мой feed?

Комментарии

Я понимаю, что вам все понятно, но можно ли поподробнее, что и куда ставить?

Я сделал следующим образом:
1) Добавил в тему файл с названием twitter.php, в котором выше описанный код. Конечно, вместо $db_twitter_name поставил свое имя твитера.
2) В том месте моего шаблона где надо выводить текст вставил.
<?php include(TEMPLATEPATH.»/twitter.php»);?>
3) Ну и, конечно, красиво оформил. Как же без птички 🙂

Leave a comment

(required)

(required)


Это не спам.