{"id":26881,"date":"2021-05-02T12:33:00","date_gmt":"2021-05-02T09:33:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=26881"},"modified":"2021-10-18T04:19:52","modified_gmt":"2021-10-18T01:19:52","slug":"como-criar-um-plugin-de-feed-do-twitter-para-wordpress","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/pt-pt\/como-criar-um-plugin-de-feed-do-twitter-para-wordpress\/","title":{"rendered":"Como criar um plugin de feed do Twitter para WordPress"},"content":{"rendered":"<p>Nem \u00e9 preciso dizer o quanto o Twitter \u00e9 popular? Muitos sites est\u00e3o exibindo seus tweets mais recentes para os usu\u00e1rios. Normalmente, esses tweets s\u00e3o colocados na barra lateral ou no rodap\u00e9. No post de hoje, criaremos um plugin simples para WordPress que exibe os \u00faltimos tweets onde voc\u00ea quiser. Vamos criar um shortcode que pode ser colocado em qualquer lugar do seu site.<\/p>\n<h3>Como criar um plugin<\/h3>\n<p>Criar um plugin para WordPress n\u00e3o \u00e9 uma ci\u00eancia espacial. Um homem que conhece PHP e WordPress pode criar facilmente o plugin. Para nossa tarefa, estou criando uma pasta chamada &#8216;twitter-api&#8217; no diret\u00f3rio &#8216;wp-content \/ plugins&#8217;.<\/p>\n<p>Em seguida, crio &#8216;twitter-api.php&#8217; e coloco na pasta &#8216;plugins \/ twitter-api&#8217;. Nosso arquivo de plugin &#8216;twitter-api.php&#8217; precisa de alguns coment\u00e1rios, ent\u00e3o eu o adiciono no formato abaixo.<\/p>\n<pre><code>\/*\nPlugin Name: Twitter API\nPlugin URI: https:\/\/artisansweb.net\nDescription: This plugin will fetch your latest tweets and display it using shortcode [tweets]\nVersion: 1.0\nAuthor: Sajid\nAuthor URI: https:\/\/artisansweb.net\nLicense: GPLv2 or later\nText Domain: artisansweb\n*\/<\/code><\/pre>\n<p>Ap\u00f3s adicionar o coment\u00e1rio acima, nosso plugin aparecer\u00e1 na p\u00e1gina de plugins de onde podemos ativ\u00e1-lo. Mas como n\u00e3o escrevemos nenhum c\u00f3digo, ele apenas \u00e9 ativado, mas n\u00e3o faz nada. Vamos adicionar muito c\u00f3digo em nosso plugin. Mas, por enquanto, apenas criamos a estrutura b\u00e1sica do nosso plugin.<\/p>\n<pre><code>class Twitter_API {\n\u00a0\u00a0\u00a0\u00a0public function __construct() {\n\u00a0\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Para evitar o acesso direto aos arquivos PHP de nosso plugin, devemos adicionar a linha abaixo ap\u00f3s o coment\u00e1rio do plugin.<\/p>\n<pre><code>defined( 'ABSPATH') or die( 'No script kiddies please!' );<\/code><\/pre>\n<h3>Instale a biblioteca PHP do Twitter<\/h3>\n<p>O Twitter fornece APIs REST para desenvolvedores. Para nosso plugin, estamos usando uma biblioteca popular para Twitter que \u00e9 constru\u00edda em PHP. Aqui est\u00e1 o URL do git-hub para a biblioteca &#8211;<a href=\"https:\/\/github.com\/abraham\/twitteroauth\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external\"><\/a><a href=\"https:\/\/github.com\/abraham\/twitteroauth\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/github.com\/abraham\/twitteroauth<\/a><\/p>\n<p>Para instalar esta biblioteca, irei abrir um prompt de comando na minha pasta &#8216;plugins \/ twitter-api&#8217; e executar o comando abaixo.<\/p>\n<pre><code>composer require abraham\/twitteroauth<\/code><\/pre>\n<p>Depois de instalar a biblioteca, colocarei as linhas abaixo em nosso arquivo &#8216;twitter-api.php&#8217;.<\/p>\n<pre><code>require('vendor\/autoload.php');\nuse AbrahamTwitterOAuthTwitterOAuth;<\/code><\/pre>\n<p>Agora \u00e9 a hora de registrar nosso aplicativo do Twitter. Para criar o aplicativo, v\u00e1 para <a href=\"https:\/\/apps.twitter.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Aplicativos do Twitter<\/a> e siga as etapas abaixo.<\/p>\n<ul>\n<li>Clique no bot\u00e3o &#8216;Criar novo aplicativo&#8217;.<\/li>\n<li>Preencha os campos Nome, Descri\u00e7\u00e3o e Site.<\/li>\n<li>Aceite o acordo e clique no bot\u00e3o &#8216;Criar seu aplicativo Twitter&#8217;.<\/li>\n<li>Na p\u00e1gina seguinte, clique na aba &#8216;Chaves e Tokens de Acesso&#8217;. Nessa guia, voc\u00ea encontrar\u00e1 sua Chave e Segredo do consumidor. Copie esses detalhes e guarde-os em local seguro.<\/li>\n<li>Na mesma guia, voc\u00ea ver\u00e1 a se\u00e7\u00e3o &#8216;Seu token de acesso&#8217;. Clique no bot\u00e3o &#8216;Criar Token de Acesso&#8217;.<\/li>\n<li>Nesta etapa, copie seu token de acesso e o segredo do token de acesso. Mantenha esses detalhes seguros.<\/li>\n<\/ul>\n<p>Criamos nosso aplicativo Twitter e tamb\u00e9m estamos prontos com nossas chaves de API. Para usar esses detalhes em nosso plugin, primeiro precisamos armazen\u00e1-lo. Para isso, estamos criando p\u00e1gina de op\u00e7\u00f5es para nosso plugin. Ent\u00e3o, adiciono o c\u00f3digo abaixo em nosso arquivo.<\/p>\n<pre><code>function __construct() {\n\u00a0\u00a0\u00a0\u00a0add_action( 'admin_menu', array($this, 'ta_plugin_menu') );\n}\n\u00a0\nfunction ta_plugin_menu() {\n\u00a0\u00a0\u00a0\u00a0add_options_page('Twitter API', 'Twitter API', 'manage_options', 'twitter_api', array($this, 'ta_settings_page'));\n}\n\u00a0\nfunction ta_settings_page() {\n\u00a0\u00a0\u00a0\u00a0require_once('inc\/ta-settings.php');\u00a0\u00a0\u00a0 \n}<\/code><\/pre>\n<p>O c\u00f3digo acima adicionar\u00e1 nosso menu chamado &#8216;API do Twitter&#8217; em Configura\u00e7\u00f5es em um painel. Neste est\u00e1gio, precisamos criar o diret\u00f3rio &#8216;inc&#8217; e colocar o arquivo &#8216;ta-setting.php&#8217; nele.<\/p>\n<p>No arquivo &#8216;ta-setting.php&#8217;, daremos a op\u00e7\u00e3o de armazenar os detalhes da API do Twitter. Estou adicionando o c\u00f3digo abaixo neste arquivo. Estamos buscando valor (que armazenaremos na pr\u00f3xima etapa) para cada campo do banco de dados.<\/p>\n<pre><code>&lt;h1&gt;&lt;?php _e('Twitter Information', 'artisansweb'); ?&gt;&lt;\/h1&gt;\n&lt;form method=\"post\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;table class=\"form-table\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tbody&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th scope=\"row\"&gt;&lt;label for=\"blogname\"&gt;&lt;?php _e('Consumer Key', 'artisansweb'); ?&gt;&lt;\/label&gt;&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;input name=\"ta_consumer_key\" id=\"ta_consumer_key\" value=\"&lt;?php if(get_option('ta_consumer_key')) echo get_option('ta_consumer_key'); ?&gt;\" class=\"regular-text\" type=\"text\"&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th scope=\"row\"&gt;&lt;label for=\"blogname\"&gt;&lt;?php _e('Consumer Secret', 'artisansweb'); ?&gt;&lt;\/label&gt;&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;input name=\"ta_consumer_secret\" id=\"ta_consumer_secret\" value=\"&lt;?php if(get_option('ta_consumer_secret')) echo get_option('ta_consumer_secret'); ?&gt;\" class=\"regular-text\" type=\"text\"&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th scope=\"row\"&gt;&lt;label for=\"blogname\"&gt;&lt;?php _e('Access Token', 'artisansweb'); ?&gt;&lt;\/label&gt;&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;input name=\"ta_access_token\" id=\"ta_access_token\" value=\"&lt;?php if(get_option('ta_access_token')) echo get_option('ta_access_token'); ?&gt;\" class=\"regular-text\" type=\"text\"&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th scope=\"row\"&gt;&lt;label for=\"blogname\"&gt;&lt;?php _e('Access Token Secret', 'artisansweb'); ?&gt;&lt;\/label&gt;&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;input name=\"ta_access_token_secret\" id=\"ta_access_token_secret\" value=\"&lt;?php if(get_option('ta_access_token_secret')) echo get_option('ta_access_token_secret'); ?&gt;\" class=\"regular-text\" type=\"text\"&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;th scope=\"row\"&gt;&lt;label for=\"blogname\"&gt;&lt;?php _e('Number of Tweets', 'artisansweb'); ?&gt;&lt;\/label&gt;&lt;\/th&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;td&gt;&lt;input name=\"ta_no_of_tweets\" id=\"ta_no_of_tweets\" value=\"&lt;?php if(get_option('ta_no_of_tweets')) echo get_option('ta_no_of_tweets'); ?&gt;\" class=\"regular-text\" type=\"number\"&gt;&lt;\/td&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tr&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/tbody&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/table&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p class=\"submit\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input name=\"ta-submit\" id=\"submit\" class=\"button button-primary\" value=\"&lt;?php _e('Save Changes', 'artisansweb'); ?&gt;\" type=\"submit\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/p&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<p>Nesta p\u00e1gina, inserimos os detalhes da API que precisamos salvar no banco de dados. Portanto, usei a a\u00e7\u00e3o &#8216;init&#8217; e adicionei a l\u00f3gica de envio na fun\u00e7\u00e3o de retorno de chamada.<\/p>\n<pre><code>add_action('init', array($this, 'ta_submit_callback')); \/\/add this code in constructor\n\u00a0\nfunction submit_callback() {\n\u00a0\u00a0\u00a0\u00a0if (isset($_POST['ta-submit'])) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0update_option( 'ta_consumer_key', $_POST['ta_consumer_key'] );\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0update_option( 'ta_consumer_secret', $_POST['ta_consumer_secret'] );\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0update_option( 'ta_access_token', $_POST['ta_access_token'] );\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0update_option( 'ta_access_token_secret', $_POST['ta_access_token_secret'] );\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0update_option( 'ta_no_of_tweets', $_POST['ta_no_of_tweets'] );\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Neste est\u00e1gio, conclu\u00edmos as configura\u00e7\u00f5es de back-end necess\u00e1rias para nosso plug-in. Agora, vamos para o front-end, onde precisamos exibir os tweets mais recentes. Estamos criando shortcode para que possamos exibir tweets onde quisermos, apenas colocando nosso shortcode. No construtor, colocarei abaixo da linha de c\u00f3digo.<\/p>\n<pre><code>\/\/add this code in constructor\nadd_shortcode('tweets', array($this, 'ta_latest_tweets'));\n\u00a0\nif(get_option('ta_consumer_key')) {\n\u00a0\u00a0\u00a0\u00a0$this-&gt;consumer_key = get_option('ta_consumer_key');\n}\nif(get_option('ta_consumer_secret')) {\n\u00a0\u00a0\u00a0\u00a0$this-&gt;consumer_secret = get_option('ta_consumer_secret');\n}\nif(get_option('ta_access_token')) {\n\u00a0\u00a0\u00a0\u00a0$this-&gt;access_token = get_option('ta_access_token');\n}\nif(get_option('ta_access_token_secret')) {\n\u00a0\u00a0\u00a0\u00a0$this-&gt;access_token_secret = get_option('ta_access_token_secret');\n}\n$this-&gt;ta_no_of_tweets = get_option('ta_no_of_tweets')? get_option('ta_no_of_tweets'): 3;<\/code><\/pre>\n<p>Tamb\u00e9m estamos buscando detalhes da API no construtor. Devemos declarar vari\u00e1veis \u200b\u200bde classe como abaixo.<\/p>\n<pre><code>protected $consumer_key = '', $consumer_secret = '', $access_token = '', $access_token_secret = '', $ta_no_of_tweets;<\/code><\/pre>\n<p>A seguir, devemos definir nossa fun\u00e7\u00e3o de retorno de chamada de c\u00f3digo de acesso.<\/p>\n<pre><code>function ta_latest_tweets() {\n\u00a0\u00a0\u00a0\u00a0$connection = new TwitterOAuth($this-&gt;consumer_key, $this-&gt;consumer_secret, $this-&gt;access_token, $this-&gt;access_token_secret);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$arr_tweets = $connection-&gt;get(\"statuses\/user_timeline\", [\"count\" =&gt; ($this-&gt;ta_no_of_tweets), \"exclude_replies\" =&gt; true]);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0if ($arr_tweets &amp;&amp; !empty($arr_tweets)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;ul class=\"tweet-wrap\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0foreach ($arr_tweets as $tweet) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;li&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;img src=\"&lt;?php echo $tweet-&gt;user-&gt;profile_image_url; ?&gt;\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;strong&gt;&lt;?php echo $tweet-&gt;user-&gt;name ?&gt;&lt;\/strong&gt; @&lt;span&gt;&lt;?php echo $tweet-&gt;user-&gt;screen_name; ?&gt;&lt;\/span&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;p&gt;&lt;?php echo $tweet-&gt;text; ?&gt;&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/li&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0?&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/ul&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;?php\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Estamos adicionando um pouco de GUI para nossa lista de tweets. Ent\u00e3o, adiciono o arquivo CSS da seguinte maneira.<\/p>\n<pre><code>add_action('wp_enqueue_scripts', array($this, 'ta_include_css')); \/\/add it in constructor\n\u00a0\nfunction ta_include_css() {\n\u00a0\u00a0\u00a0\u00a0wp_register_style( \"ta-custom-style\", plugins_url('\/twitter-api'). \"\/css\/custom.css\", array(), false, \"all\" );\n\u00a0\u00a0\u00a0\u00a0wp_enqueue_style( \"ta-custom-style\" );\n}<\/code><\/pre>\n<p>No meu arquivo CSS, adiciono as propriedades abaixo para a classe &#8216;tweet-wrap&#8217;. Se desejar, voc\u00ea pode adicionar mais CSS de acordo com sua necessidade.<\/p>\n<pre><code>.tweet-wrap{\n\u00a0\u00a0\u00a0\u00a0width: 300px;\n\u00a0\u00a0\u00a0\u00a0list-style-type: none;\n}<\/code><\/pre>\n<p>Isso \u00e9 tudo, conclu\u00edmos nosso plugin que exibe os tweets mais recentes. Voc\u00ea pode baixar um zip de um plug-in clicando no link &#8216;Obter c\u00f3digo do plug-in&#8217; abaixo.<\/p>\n<p><a href=\"https:\/\/artisansweb.net\/wp-content\/uploads\/twitter-api.zip\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Obtenha o c\u00f3digo do plugin<\/a><\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Neste post, mostramos como criar o plugin de feed do Twitter para WordPress. Criamos um shortcode para que voc\u00ea possa exibir o feed do Twitter em qualquer lugar do site.<\/p>\n","protected":false},"author":1,"featured_media":21672,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[417,613],"tags":[848],"class_list":["post-26881","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-diversos","category-uncategorized-9","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/26881","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/comments?post=26881"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/posts\/26881\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media\/21672"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/media?parent=26881"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/categories?post=26881"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/pt-pt\/wp-json\/wp\/v2\/tags?post=26881"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}