Последние сообщения twitter в wordpress блоге
Решил я немного разнообразить один из своих блогов и добавить туда информации из твиттера, а именно – добавить вывод последних сообщений twitter по нужному мне ключевому слову. Задача это оказалась весьма многогранной, найденное вроде бы простое решение пришлось очень долго модернизировать. При этом, увы, не могу сказать, что я полностью доволен результатом, но обо всем по порядку. Вид блока из твиттера можно посмотреть в блоге про typo3 (если он там все еще есть) либо на иллюстрации чуть ниже.
Итак, первое, что я сделал – конечно отправился за помощью в google, но все статьи словно копировали друг друга. Обзоры с 10,15, 20 лучшими плагинами для твиттера были весьма похожи и предсказуемы. В итоге ни один из плагинов не привернул мое внимание, и я принялся искать альтернативные методы. Самый простой из них – использовать виджет от самого твиттера.
Виджеты твиттера
Заходим на эту страницу и выбираем пункт «My Website» (кстати, под ним располагаются виджеты для фэйсбука). Всего на странице найдете 4 разных виджета для твиттера:
- Profile Widget – отображает последние обновления вашего твиттера
- Search Widget – выводит результаты поиска по твиттеру в реальном времени. Очень полезная штука, о которой еще поговорим.
- Faves Widget – показывает наилучшие твитты, которые были отмечены вами – напротив каждого твитта вы можете ставить звездочку (favorite).
- List Widget – что-то связанное со списками и избранными твиттами, лично я так и не понял.
Итак, если вы хотите отобразить список своих последних сообщений смотрите в сторону Profile Widget. С помощью поискового Search Widget можно сделать куда более интересные вещи. Для своего блога я хотел также отобразить список последний упоминаний админки TYPO3 в других микроблогах – получить что-то вроде «полезных новостей». Вводим в настройках виджета соответствующие данные:
В меня слева вы найдете пункты Preferences, Appearance, Dimensions, которые позволят настроить опции, внешний вид и размеры виджета соответственно. Все делается достаточно просто и легко. Более того, вы можете использовать дополнительные поисковых запросы для отбора твиттов – подробный список ищем здесь. Там есть хэштеги, точные вхождения и исключения ключевиков и многое другое.
Но как назло не оказалось параметра для языковой версии, хотя в описании API этот пункт есть, а вот в операторах нет. Правда, если использовать полноценный поиск по твиттеру без виджета, то параметр языка присутствует — http://search.twitter.com/search?q=+typo3&lang=en
Там же на странице увидите ссылку «Feed for this query» — это RSS фид результатов поиска, кликаем и запоминаем его адрес из адресной строки браузера.
Сообщения twitter в wordpress блоге
Теперь отвлечемся от виджетов для твиттера и перейдем непосредственно к wordpress. Плагинов, как я уже сказал нет, поэтому пришлось погуглить на предмет кода. И вот здесь я обнаружил такое вот решение:
<?php $username = "TwitterUsername"; // Prefix - some text you want displayed before your latest tweet. $prefix = "<h2>My last Tweet</h2>"; // Suffix - some text you want display after your latest tweet. (Same rules as the prefix.) $suffix = ""; $feed = "http://search.twitter.com/search.atom?q=from:" . $username . "&rpp=1"; function parse_feed($feed) { $stepOne = explode("<content type=\"html\">", $feed); $stepTwo = explode("</content>", $stepOne[1]); $tweet = $stepTwo[0]; $tweet = str_replace("<", "<", $tweet); $tweet = str_replace(">", ">", $tweet); return $tweet; } $twitterFeed = file_get_contents($feed); echo stripslashes($prefix) . parse_feed($twitterFeed) . stripslashes($suffix); ?> |
Суть заключается в следующем – в четвертой строке вбиваете свой username для твитера и на выходе получаете последний пост из микроблога. Но это не совсем то, что нам нужно, поэтому я решил немного пошаманить. Итого имеем следующий код, который нужно вставить в то место блога, где будете выводить список твиттов:
<?php $username = "sashatod"; $twinum = 4; //$feed = "http://search.twitter.com/search.atom?q=from:" . $username . "&rpp=$twinum"; $feed = "http://search.twitter.com/search.atom?lang=en&q=+typo3"."&rpp=$twinum"; function parse_feed($feed,$it) { $stepOne = explode("<content type=\"html\">", $feed); $stepTwo = explode("</content>", $stepOne[$it]); $tweet = $stepTwo[0]; $tweet = str_replace("<", "<", $tweet); $tweet = str_replace(">", ">", $tweet); $tweet = str_replace("&quot;", "", $tweet); $tweet = str_replace('"', '', $tweet); return $tweet; } $myfeed = file_get_contents($feed); for ($it=1; $it<=$twinum; $it++) echo "<p>".parse_feed($myfeed,$it)."</p>"; ?> |
Объясняю логику. Во-первых, в поле username вводим ник из твиттера, во-вторых twinum определяет количество выводимых сообщений. Теперь если посмотрите в параметр $feed, то найдете там ключевое слово typo3, а также выбор языка lang=en. Но самое простое то, что этот $feed равен адресу RSS, который мы записали из поиска по твиттеру. В конце строки лишь добавляется часть с количеством твиттов. По идее, если вы разбираетесь в PHP или просто очень внимательные, то сможете подправить код под себя как будет нужно. Если вы захотите выводить список своих последних сообщений, то можно раскомментировать строку, начинающуюся с //$feed – там как раз используется параметр username.
Обновление 21.09.2010: С недавних пор при выводе последних сообщений из твиттера некорректно отображались ссылки в коде — к ним добавлялся адрес текущей страницы, что, конечно вызывало ошибку. Для исправления в код выше была добавлена еще одна строка замены str_replace.
В таком случае получается у нас есть 2 варианта – через виджет твиттера или вставкой php кода.
Результат неоднозначен. Мне показалось, что применение функции через wordpress слегка тормозит отображение страницы, хотя с другой стороны использование стороннего javascript тоже чревато — не уверен, что он работает когда твиттер испытывает проблемы с нагрузкой. Кроме того, как уже было сказано, выборка по языку твиттов (lang) доступна только через функцию WordPress. Кстати, чуть более обширный пример кода для вывода последних постов твиттера опубликовал также Дмитрий Донченко — там настроек для кода побольше. В итоге не совсем понимаю хочу ли я выводить список последних сообщений из твиттера, нужен ли он вообще для блога. Пока что попробую, а там будет видно.
P.S. Постовой. Информация про город Обнинск на сайте АЙК Обнинск – городской информационный портал.
Ищешь хороший отель? То лучше бронировать отель киев. Рекомендуем отель «Русь».
Интернет магазин Linzmaster предлагает контактные линзы, а также другие аксессуары для вас.
комментариев 8 к статье “Последние сообщения twitter в wordpress блоге”
Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!
Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:
- Як сховати відсутні товари в Woocommerce шорткодах та схожих товарах
- Сервіс AdMaven + плагін для монетизації трафіка на WordPress сайтах
- Плагіни для створення стрічки новин з біжучим рядком в WordPress
- Як змінити розміщення кнопки оформлення замовлення в WooCommerce
- Плагін WHWS Display In Stock Products First – відображення товарів в наявності першими
- Підписка MonsterONE: чи варто використовувати цей сервіс у 2023 році? (+5 продуктів, які треба скачати в першу чергу)
- Онлайн генератор ссылок на мессенджеры для WordPress и не только
- WooCommerce (46)
- Безопасность (12)
- Видео (6)
- Виджеты (28)
- Возможности (141)
- Вопрос-ответ (6)
- Начинающим (52)
- Новости (46)
- Оптимизация (23)
- Плагины (246)
- Сервисы (87)
- Хаки и секреты (87)
- Шаблоны (45)
- Оптимизируем WordPress header и удаляем лишний код (5,19 из 7, голосов - 43)
- Как создать пункт меню без ссылки в wordpress (6,39 из 7, голосов - 23)
- Добавление кнопки Вконтакте, Facebook и Twitter в wordpress блог (6,14 из 7, голосов - 21)
- Хаки для вариаций товаров в WooCommerce (4,88 из 7, голосов - 24)
- Выполнение jQuery скриптов при выборе вариаций товаров в WooCommerce (3,96 из 7, голосов - 26)
- Размеры изображений в WordPress — как изменить, добавить свои и удалить лишние (3,48 из 7, голосов - 27)
- Вывод текста в блоге только на главной (6,85 из 7, голосов - 13)
- Дизайн Мания - о веб-дизайне и не только.
- Tod's Blog - все про заработок онлайн.
- Вебдванольные заметки - обзоры веб-сервисов.
- Найбільш очікувані новинки MMORPG ігор в 2025 році
- Советы по выбору холодильника LG с технологией No Frost
- Зачем нужны Wi-Fi ретрансляторы и как выбрать подходящую модель
- Введение в онлайн-казино Slotor777: многообразие игр и привлекательные бонусы
- Необходимость использования облачного хранилища в наше время, что важно и как выгодно?
- Спрощення процесу звітності за допомогою програми BAS Бухгалтерія
- Технологія підключення інтернету GPON та її переваги
- За що гравці найбільше цінують Lineage 2
Я так понимаю, вам уже можно свой плагин написать на этой основе для отображения твитов)
Seo-steper, та смысла его сочинять нет, проще код добавить в шаблон и все:)
Как раз сейчас работаю над новым дизом, вывод постов из Twitter тоже планируется.
Спасибо за статью, переслал линк верстальщику..
Спасибо за информацию Очень подробно и интересно расписано. А то я как-то ковырялся в этих виджетах и толком, как следует, не разобрался.
Тема от web2feel) Florance, там же встроен виджет твита…
«Там же на странице увидите ссылку «Feed for this query»»
Сейчас в поиске нет такой ссылки, как быть? Помогите, пожалуйста.
Владимир, зашел в поиск и действительно в новом дизайне ссылку не обнаружил, хотя при этом на моем сайте старый код все еще работает (что странно). Поэтому вижу 2 варианта — составить ссылку на rss самостоятельно по примеру той, что есть в коде:
То есть указываете язык и ключевое слово для поиска и пробуете у себя. Второй способ — все же использовать виджет от твиттера или другой плагин, который реализует эту функцию.
Твиттер не так популярен в России как Вконтакте, но для информации сохраню