Собственная кнопка Retweet с счетчиком без плагинов

Сегодня я расскажу как сделать кнопку Retweet с счетчиком и с собственным оформлением, по сути, какую захотите такая и будет. Для этого мы будет использовать  Topsy’s Otter API.

Для начала вам нужно иметь представление как именно будет выглядеть кнопка, т.е. иметь ее дизайн. После этого можно приступать. Для примера я возьму кнопку, которую нарисовал мой друг webmozg, а я ее для него сделал.

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

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

Обратите внимание, что кнопка обязательно должна размещаться в пределах Loop

Разместим в нужном месте следующий php-код:

Ниже вставьте html-код:

И, наконец, css-код:

Вот и все. Кнопка полностью сохраняет функциональность оригинального плагина. Разметка очень простая и ее легко изменить, создавая свои уникальные кнопки.

Если возникли вопросы, задавайте в комментариях, буду рад на них ответить.

  • А где же rel=»nofollow» 🙂

    • Это уже на ваше усмотрение. Я лишь указал путь 🙂

  • Как на блоге вебмозга 🙂 спасибо 🙂 интересно было, как так сделать можно 🙂

  • А не правильней использовать Twitter API? Или он не позволяет делать подобные ретвиты?. Кстати, а что считает кнопка? Все ретвиты или количество нажатий?

    • Через Twitter API можно, я привел пример реализации через Topsy. Кнопка считает все ретвиты.

  • max

    начинаю изучать php, не подскажете что означает запись $post->post_title и в частности что делает значок стрелки?

    • Это относится к теме ООП (объектно-ориентированного программирования). Стрелка означает обращение к данным, в данном случае к заголовку в глобальной переменной $post.

      • max

        то есть должен быть какой-то файл с описанием этих переменных, а где он прописан?
        спасибо заранее 🙂

  • Там бы поправить код возле «response->all» 🙂

    • Спасибо, поправил. Редактор рубит php-символы, приходится по 100 раз проверять.

      • Заметил, потому что себе как раз ворую код 🙂

        • Затем и выложен 🙂 Сейчас вроде точно должно работать.

          • Да я сам подправил уже.

  • Вчера пытался сделать тоже самое для своего сайта, получилось определять количество только для уже ранее опубликованных постов, для новых он почему-то выводил знак вопроса и ошибку. Выводил URL с помощью PHP переменных серверных — решил сделать как проще. =) Не вышло! Попробую Ваш вариант.

  • спасибо, довольно интересно
    в закладки заберу, а там может на досуге и к себе куда-нибудь пристрою 😉

  • Полезно! Подписался на обновления блога:)

  • спасибо что плагин ставить не нужно

  • Здравствуйте, спасибо за мануал, раньше искал и не мог найти что-то подобное, а тут случайно увидел и аж обрадовался! 🙂
    Вопрос таков, а можно также сделать с Фейсбуком? Заранее спасибо!

  • всё работает. замечательно, но вот подскажите. у меня виден код на странице. как мне его спрятать? и что значит в пределах Loop? может в моём шаблоне в файле single.php нет функции loop? сразу хочу извиниться за может быть дилетантский вопрос.

  • поиск помог мне. всё получилось. теперь у меня вместо тяжёлого (так везде пишут) плагина, быстрый retweet twitter`а
    спб

  • а как сделать rel=»nofollow» вот сюда $retweetInfo = json_decode(file_get_contents(‘http://otter.topsy.com/stats.json?url=’.$shareUrl));
    ?>

  • Спасибо, красиво получилось…)