...
✅ WEB ja WordPressi uudised, teemad, pistikprogrammid. Siin jagame näpunäiteid ja parimaid veebisaidi lahendusi.

Kuidas luua WordPressi Twitteri voo pistikprogrammi

14

Ütlematagi selge, kui populaarne on Twitter? Paljud veebisaidid näitavad kasutajatele oma viimaseid säutse. Tavaliselt paigutatakse see säuts kas külgribale või jalusse. Tänases postituses loome lihtsa WordPressi pistikprogrammi, mis kuvab uusimaid säutse, kuhu iganes soovite. Loome lühikoodi, mille saab paigutada kõikjal teie saidil.

Kuidas luua pistikprogrammi

WordPressi pistikprogrammi loomine pole raketiteadus. PHP-d ja WordPressi tundev mees saab pistikprogrammi hõlpsasti luua. Meie ülesandeks loon kataloogi ‘wp-content / plugins’ kausta nimi ‘twitter-api’.

Järgmisena loon ‘twitter-api.php’ ja asetan selle kausta ‘plugins / twitter-api’. Meie pistikprogrammifail ‘twitter-api.php’ vajab mõningaid kommentaare, nii et lisan selle allpool toodud vormingus.

/*
Plugin Name: Twitter API
Plugin URI: https://artisansweb.net
Description: This plugin will fetch your latest tweets and display it using shortcode [tweets]
Version: 1.0
Author: Sajid
Author URI: https://artisansweb.net
License: GPLv2 or later
Text Domain: artisansweb
*/

Pärast ülaltoodud kommentaari lisamist ilmub meie pistikprogramm pistikprogrammide lehele, kust saame selle aktiveerida. Kuid kuna me ei kirjutanud ühtegi koodi, siis see lihtsalt aktiveeritakse, kuid ei tee midagi. Lisame oma pistikprogrammi palju koodi. Kuid praegu loome lihtsalt oma pistikprogrammi põhistruktuuri.

class Twitter_API {
    public function __construct() {
 
    }
}

Otsese juurdepääsu vältimiseks meie pistikprogrammi PHP-failidele peaksime pärast pistikprogrammide kommentaari lisama rea ​​alla.

defined( 'ABSPATH') or die( 'No script kiddies please!' );

Installige Twitteri PHP kogu

Twitter pakub arendajatele REST API-sid. Pistikprogrammi jaoks kasutame Twitteris populaarset teeki, mis on sisse ehitatud PHP-s. Siin on raamatukogu git-hubi URL –https://github.com/abraham/twitteroauth

Selle teegi installimiseks avan oma kaustas plugins / twitter-api käsuviiba ja käivitan alloleva käsu.

composer require abraham/twitteroauth

Pärast teegi installimist asetan meie faili ‘twitter-api.php’ alla read.

require('vendor/autoload.php');
use AbrahamTwitterOAuthTwitterOAuth;

Nüüd on aeg registreerida meie Twitteri rakendus. Rakenduse loomiseks minge Twitteri rakendustesse ja järgige allolevaid samme.

  • Klõpsake nuppu ‘Loo uus rakendus’.
  • Täitke väljad Nimi, Kirjeldus, Veebisait.
  • Nõustuge lepinguga ja klõpsake nuppu "Loo oma Twitteri rakendus".
  • Järgmisel lehel klõpsake vahekaarti "Võtmed ja juurdepääsuload". Selle vahekaardi alt leiate oma tarbijavõtme ja kliendisaladuse. Kopeerige need üksikasjad ja hoidke neid kindlas kohas.
  • Sama vahekaardi all näete jaotist "Teie juurdepääsuluba". Klõpsake nuppu "Loo juurdepääsuluba".
  • Selles etapis kopeerige juurdepääsuluba ja pääsukoodi saladus. Hoidke neid üksikasju turvaliselt.

Oleme loonud oma Twitteri rakenduse ja oleme valmis ka oma API võtmetega. Nende üksikasjade kasutamiseks meie pistikprogrammis peame selle kõigepealt salvestama. Selleks loome oma pistikprogrammi jaoks valikulehe. Nii et lisan allpool oleva koodi meie faili.

function __construct() {
    add_action( 'admin_menu', array($this, 'ta_plugin_menu') );
}
 
function ta_plugin_menu() {
    add_options_page('Twitter API', 'Twitter API', 'manage_options', 'twitter_api', array($this, 'ta_settings_page'));
}
 
function ta_settings_page() {
    require_once('inc/ta-settings.php');    
}

Koodi kohal lisatakse armatuurlaual jaotises Seaded meie menüü nimega Twitter API. Selles etapis peame looma kataloogi "inc" ja asetama sellesse faili "ta-setting.php".

Failis ‘ta-setting.php’ anname võimaluse oma Twitteri API üksikasjad salvestada. Lisan selle faili allpool oleva koodi. Toome andmebaasi igale väljale väärtuse (mille salvestame järgmises etapis).

<h1><?php _e('Twitter Information', 'artisansweb'); ?></h1>
<form method="post">
    <table class="form-table">
        <tbody>
            <tr>
                <th scope="row"><label for="blogname"><?php _e('Consumer Key', 'artisansweb'); ?></label></th>
                <td><input name="ta_consumer_key" id="ta_consumer_key" value="<?php if(get_option('ta_consumer_key')) echo get_option('ta_consumer_key'); ?>" class="regular-text" type="text"></td>
            </tr>
            <tr>
                <th scope="row"><label for="blogname"><?php _e('Consumer Secret', 'artisansweb'); ?></label></th>
                <td><input name="ta_consumer_secret" id="ta_consumer_secret" value="<?php if(get_option('ta_consumer_secret')) echo get_option('ta_consumer_secret'); ?>" class="regular-text" type="text"></td>
            </tr>
            <tr>
                <th scope="row"><label for="blogname"><?php _e('Access Token', 'artisansweb'); ?></label></th>
                <td><input name="ta_access_token" id="ta_access_token" value="<?php if(get_option('ta_access_token')) echo get_option('ta_access_token'); ?>" class="regular-text" type="text"></td>
            </tr>
            <tr>
                <th scope="row"><label for="blogname"><?php _e('Access Token Secret', 'artisansweb'); ?></label></th>
                <td><input name="ta_access_token_secret" id="ta_access_token_secret" value="<?php if(get_option('ta_access_token_secret')) echo get_option('ta_access_token_secret'); ?>" class="regular-text" type="text"></td>
            </tr>
            <tr>
                <th scope="row"><label for="blogname"><?php _e('Number of Tweets', 'artisansweb'); ?></label></th>
                <td><input name="ta_no_of_tweets" id="ta_no_of_tweets" value="<?php if(get_option('ta_no_of_tweets')) echo get_option('ta_no_of_tweets'); ?>" class="regular-text" type="number"></td>
            </tr>
        </tbody>
    </table>
    <p class="submit">
        <input name="ta-submit" id="submit" class="button button-primary" value="<?php _e('Save Changes', 'artisansweb'); ?>" type="submit">
    </p>
</form>

Sellele lehele sisestame API üksikasjad, mille peame andmebaasi salvestama. Niisiis kasutasin toimingut init ja lisasin tagasihelistamisfunktsiooni saatmisloogika.

add_action('init', array($this, 'ta_submit_callback')); //add this code in constructor
 
function submit_callback() {
    if (isset($_POST['ta-submit'])) {
        update_option( 'ta_consumer_key', $_POST['ta_consumer_key'] );
        update_option( 'ta_consumer_secret', $_POST['ta_consumer_secret'] );
        update_option( 'ta_access_token', $_POST['ta_access_token'] );
        update_option( 'ta_access_token_secret', $_POST['ta_access_token_secret'] );
        update_option( 'ta_no_of_tweets', $_POST['ta_no_of_tweets'] );
    }
}

Selles etapis oleme lõpetanud pistikprogrammi jaoks vajalikud back-endi seaded. Nüüd läheme esiosa, kus peame kuvama uusimaid säutse. Loome lühinumbrit, et saaksime oma lühikoodi sisestades kuvada säutse kõikjal, kuhu tahame. Konstruktoris asetan koodirea alla.

//add this code in constructor
add_shortcode('tweets', array($this, 'ta_latest_tweets'));
 
if(get_option('ta_consumer_key')) {
    $this->consumer_key = get_option('ta_consumer_key');
}
if(get_option('ta_consumer_secret')) {
    $this->consumer_secret = get_option('ta_consumer_secret');
}
if(get_option('ta_access_token')) {
    $this->access_token = get_option('ta_access_token');
}
if(get_option('ta_access_token_secret')) {
    $this->access_token_secret = get_option('ta_access_token_secret');
}
$this->ta_no_of_tweets = get_option('ta_no_of_tweets')? get_option('ta_no_of_tweets'): 3;

Samuti toome konstruktorist api detaile. Peaksime deklareerima klassi muutujad nagu allpool.

protected $consumer_key = '', $consumer_secret = '', $access_token = '', $access_token_secret = '', $ta_no_of_tweets;

Järgmisena peaksime määratlema oma lühikoodi tagasihelistamisfunktsiooni.

function ta_latest_tweets() {
    $connection = new TwitterOAuth($this->consumer_key, $this->consumer_secret, $this->access_token, $this->access_token_secret);
 
    $arr_tweets = $connection->get("statuses/user_timeline", ["count" => ($this->ta_no_of_tweets), "exclude_replies" => true]);
 
    if ($arr_tweets && !empty($arr_tweets)) {
        ?>
        <ul class="tweet-wrap">
            <?php
            foreach ($arr_tweets as $tweet) {
                ?>
                <li>
                    <div>
                        <img src="<?php echo $tweet->user->profile_image_url; ?>">
                        <strong><?php echo $tweet->user->name ?></strong> @<span><?php echo $tweet->user->screen_name; ?></span>
                    </div>
                    <p><?php echo $tweet->text; ?></p>
                </li>
                <?php
            }
            ?>
        </ul>
        <?php
    }
}

Lisame oma säutsu loendi jaoks natuke GUI-d. Nii et lisan CSS-faili järgides.

add_action('wp_enqueue_scripts', array($this, 'ta_include_css')); //add it in constructor
 
function ta_include_css() {
    wp_register_style( "ta-custom-style", plugins_url('/twitter-api'). "/css/custom.css", array(), false, "all" );
    wp_enqueue_style( "ta-custom-style" );
}

Lisan oma CSS-faili allpool klassi ‘tweet-wrap’ atribuudid. Soovi korral saate vastavalt vajadusele lisada veel CSS-i.

.tweet-wrap{
    width: 300px;
    list-style-type: none;
}

See on kõik, oleme valmis oma pistikprogrammiga, mis kuvab uusimaid säutse. Pistikprogrammi ZIP-faili saate alla laadida, klõpsates alloleval lingil „Hangi pistikprogrammi kood".

Hankige pistikprogrammi kood

See veebisait kasutab teie kasutuskogemuse parandamiseks küpsiseid. Eeldame, et olete sellega rahul, kuid saate soovi korral loobuda. Nõustu Loe rohkem