{"id":23557,"date":"2021-05-02T12:48:00","date_gmt":"2021-05-02T09:48:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=23557"},"modified":"2021-10-18T02:24:07","modified_gmt":"2021-10-17T23:24:07","slug":"comment-creer-un-plugin-de-flux-twitter-wordpress","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/comment-creer-un-plugin-de-flux-twitter-wordpress\/","title":{"rendered":"Comment cr\u00e9er un plugin de flux Twitter WordPress"},"content":{"rendered":"<p>Inutile de dire \u00e0 quel point Twitter est-il populaire? De nombreux sites Web montrent leurs derniers tweets aux utilisateurs. Normalement, ces tweets sont plac\u00e9s dans la barre lat\u00e9rale ou dans un pied de page. Dans le post d&rsquo;aujourd&rsquo;hui, nous allons cr\u00e9er un plugin WordPress simple qui affiche les derniers tweets o\u00f9 vous le souhaitez. Nous allons cr\u00e9er un shortcode qui pourra \u00eatre plac\u00e9 n&rsquo;importe o\u00f9 sur votre site.<\/p>\n<h3>Comment cr\u00e9er un plugin<\/h3>\n<p>Cr\u00e9er un plugin pour WordPress n&rsquo;est pas sorcier. Un homme qui conna\u00eet PHP et WordPress peut facilement cr\u00e9er le plugin. Pour notre t\u00e2che, je cr\u00e9e un nom de dossier &lsquo;twitter-api&rsquo; sous le r\u00e9pertoire &lsquo;wp-content\/plugins&rsquo;.<\/p>\n<p>Ensuite, je cr\u00e9e &lsquo;twitter-api.php&rsquo; et le place dans le dossier &lsquo;plugins\/twitter-api&rsquo;. Notre fichier de plugin &lsquo;twitter-api.php&rsquo; a besoin de quelques commentaires, je l&rsquo;ajoute donc au format ci-dessous.<\/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>Apr\u00e8s avoir ajout\u00e9 le commentaire ci-dessus, notre plugin appara\u00eetra sur la page des plugins d&rsquo;o\u00f9 nous pourrons l&rsquo;activer. Mais comme nous n&rsquo;avons \u00e9crit aucun code, il est simplement activ\u00e9 mais ne fait rien. Nous allons ajouter beaucoup de code dans notre plugin. Mais pour l&rsquo;instant, nous cr\u00e9ons simplement la structure de base de notre 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>Pour \u00e9viter un acc\u00e8s direct aux fichiers PHP de notre plugin, nous devons ajouter la ligne ci-dessous apr\u00e8s le commentaire de nos plugins.<\/p>\n<pre><code>defined( 'ABSPATH') or die( 'No script kiddies please!' );<\/code><\/pre>\n<h3>Installer la biblioth\u00e8que PHP Twitter<\/h3>\n<p>Twitter fournit des API REST pour les d\u00e9veloppeurs. Pour notre plugin, nous utilisons une biblioth\u00e8que populaire pour Twitter qui est construite en PHP. Voici l&rsquo;URL git-hub de la biblioth\u00e8que &#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>Pour installer cette biblioth\u00e8que, je vais ouvrir une invite de commande dans mon dossier &quot;plugins\/twitter-api&quot; et ex\u00e9cuter la commande ci-dessous.<\/p>\n<pre><code>composer require abraham\/twitteroauth<\/code><\/pre>\n<p>Apr\u00e8s avoir install\u00e9 la biblioth\u00e8que, je placerai les lignes ci-dessous dans notre fichier &lsquo;twitter-api.php&rsquo;.<\/p>\n<pre><code>require('vendor\/autoload.php');\nuse AbrahamTwitterOAuthTwitterOAuth;<\/code><\/pre>\n<p>Maintenant, il est temps d&rsquo;enregistrer notre application Twitter. Pour cr\u00e9er une application, acc\u00e9dez aux <a href=\"https:\/\/apps.twitter.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">applications Twitter<\/a> et suivez les \u00e9tapes ci-dessous.<\/p>\n<ul>\n<li>Cliquez sur le bouton \u00ab\u00a0Cr\u00e9er une nouvelle application\u00a0\u00bb.<\/li>\n<li>Remplissez les champs Nom, Description, Site Web.<\/li>\n<li>Acceptez l&rsquo;accord et cliquez sur le bouton \u00ab\u00a0Cr\u00e9ez votre application Twitter\u00a0\u00bb.<\/li>\n<li>Sur la page suivante, cliquez sur l&rsquo;onglet &lsquo;Cl\u00e9s et jetons d&rsquo;acc\u00e8s&rsquo;. Sous cet onglet, vous trouverez votre cl\u00e9 client et votre secret client. Copiez ces informations et conservez-les en lieu s\u00fbr.<\/li>\n<li>Sous le m\u00eame onglet, vous verrez la section &lsquo;Votre jeton d&rsquo;acc\u00e8s&rsquo;. Cliquez sur le bouton &lsquo;Cr\u00e9er un jeton d&rsquo;acc\u00e8s&rsquo;.<\/li>\n<li>\u00c0 cette \u00e9tape, copiez votre jeton d&rsquo;acc\u00e8s et votre secret de jeton d&rsquo;acc\u00e8s. Gardez ces d\u00e9tails en s\u00e9curit\u00e9.<\/li>\n<\/ul>\n<p>Nous avons cr\u00e9\u00e9 notre application Twitter et nous sommes \u00e9galement pr\u00eats avec nos cl\u00e9s API. Pour utiliser ces d\u00e9tails dans notre plugin, nous devons d&rsquo;abord les stocker. Pour cela, nous cr\u00e9ons une page d&rsquo;options pour notre plugin. J&rsquo;ajoute donc ci-dessous le code dans notre fichier.<\/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>Le code ci-dessus ajoutera notre menu appel\u00e9 \u00ab\u00a0API Twitter\u00a0\u00bb sous Param\u00e8tres sur un tableau de bord. A ce stade, nous devons cr\u00e9er le r\u00e9pertoire &lsquo;inc&rsquo; et y placer le fichier &lsquo;ta-setting.php&rsquo;.<\/p>\n<p>Dans le fichier &lsquo;ta-setting.php&rsquo;, nous vous donnerons la possibilit\u00e9 de stocker les d\u00e9tails de notre API Twitter. J&rsquo;ajoute le code ci-dessous dans ce fichier. Nous r\u00e9cup\u00e9rons la valeur (que nous stockons \u00e0 l&rsquo;\u00e9tape suivante) pour chaque champ de la base de donn\u00e9es.<\/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>Sur cette page, nous entrons les d\u00e9tails de l&rsquo;API que nous devons enregistrer dans la base de donn\u00e9es. J&rsquo;ai donc utilis\u00e9 l&rsquo;action &lsquo;init&rsquo; et ajout\u00e9 une logique de soumission dans la fonction de rappel.<\/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>\u00c0 ce stade, nous avons termin\u00e9 avec les param\u00e8tres back-end requis pour notre plugin. Maintenant, nous allons au front end o\u00f9 nous devons afficher les derniers tweets. Nous cr\u00e9ons un shortcode afin que nous puissions afficher des tweets o\u00f9 nous voulons simplement en pla\u00e7ant notre shortcode. Dans le constructeur, je placerai en dessous la ligne de code.<\/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>Nous r\u00e9cup\u00e9rons \u00e9galement les d\u00e9tails de l&rsquo;API dans le constructeur. Nous devrions d\u00e9clarer des variables de classe comme ci-dessous.<\/p>\n<pre><code>protected $consumer_key = '', $consumer_secret = '', $access_token = '', $access_token_secret = '', $ta_no_of_tweets;<\/code><\/pre>\n<p>Ensuite, nous devons d\u00e9finir notre fonction de rappel de shortcode.<\/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>Nous ajoutons un peu d&rsquo;interface graphique pour notre liste de tweets. J&rsquo;ajoute donc un fichier CSS de la mani\u00e8re suivante.<\/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>Dans mon fichier CSS, j&rsquo;ajoute ci-dessous les propri\u00e9t\u00e9s de la classe &lsquo;tweet-wrap&rsquo;. Si vous le souhaitez, vous pouvez ajouter plus de CSS selon vos besoins.<\/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>C&rsquo;est tout, nous sommes compl\u00e9t\u00e9s par notre plugin qui affiche les derniers tweets. Vous pouvez t\u00e9l\u00e9charger un zip d&rsquo;un plugin en cliquant sur le lien &quot;Obtenir le code du plugin&quot; ci-dessous.<\/p>\n<p><a href=\"https:\/\/artisansweb.net\/wp-content\/uploads\/twitter-api.zip\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Obtenir le code du plugin<\/a><\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dans cet article, nous vous montrons comment cr\u00e9er un plugin de flux WordPress pour Twitter. Nous cr\u00e9ons un shortcode pour que vous puissiez afficher le fil Twitter n&rsquo;importe o\u00f9 sur le site Web.<\/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":[412,608],"tags":[844],"class_list":["post-23557","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-divers","category-uncategorized-4","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/23557","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=23557"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/23557\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/21672"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=23557"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=23557"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=23557"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}