Jaa viesti LinkedInissä LinkedIn API: n ja PHP: n avulla
Haluatko tietää kuinka jakaa viestejä LinkedInissä PHP: n avulla? Tässä artikkelissa näytän sinulle, miten lähetetään viesti LinkedIniin LinkedIn API: n ja PHP: n avulla.
Viestien jakaminen sosiaalisissa verkostoissa auttaa sinua tuomaan lisää liikennettä ja yleisöjä verkkosivustoosi. LinkedIn on ammattimainen verkosto, joten sillä olisi suuret mahdollisuudet saada aitoja lukijoita.
Jos sinulla on verkkosivusto, linkin lähettäminen manuaalisesti LinkedIniin ei ole viisas valinta. On aina parempi olla automaattinen järjestelmä, joka lähettää viestin syötteesi ohjelmallisesti.
LinkedIn tarjoaa Share API: n, jonka avulla voit lähettää linkin otsikon, kuvauksen ja kuvan kanssa syötteeseesi.
Tässä opetusohjelmassa käydään läpi kaikki vaiheet, joita tarvitaan viestin jakamiseen LinkedInissä. Tähän sisältyy muun muassa LinkedIn-sovelluksen luominen, käyttöoikeustunnuksen luominen, LinkedIn-profiilin tunnuksen hankkiminen ja lopuksi viestin lähettäminen LinkedIniin.
Luo LinkedIn-sovellus
Aloittaaksesi LinkedIn share API: lla sinun on ensin luotava sovellus LinkedIn-tililläsi. LinkedIn-sovellusliittymien integrointi vaatii asiakastunnuksen ja asiakassalaisuuden. Sinun on myös määritettävä valtuutettu uudelleenohjauksen URL-osoite sovelluksessasi.
Testaustarkoituksiin aion käyttää paikallisen palvelimen URL-osoitetta. Sinun tulisi säätää tämä URL-osoite virtauksesi mukaan.
- Siirry LinkedIn-kehittäjäverkostoon.
- Napsauta Luo sovellus -painiketta.
- Suorita asennus LinkedIn-ohjeiden mukaisesti.
- Lisää http: //localhost/linkedin/callback.php Valtuutetut uudelleenohjaus-URL-osoitteet -kenttään.
- Valitse Tuotteet-välilehdestä Tuote Kirjaudu sisään LinkedInillä.
- Kopioi asiakastunnus ja asiakassalaisuudet.
Luo LinkedIn-tilin käyttöoikeustunnus
Käyttöoikeustunnus on tunniste, jota tarvitaan API-operaatioiden suorittamiseen käyttäjän tilillä. Viestien jakaminen ohjelmallisesti LinkedInissä vaatii käyttöoikeustunnuksen.
Jotta voit luoda käyttöoikeustunnuksen, sinun on valtuutettava tilisi. Tämän prosessin aikana meidän on lähetettävä HTTP-pyynnöt API-päätepisteelle. Aiomme asentaa Guzzle-kirjaston, jonka avulla voimme lähettää HTTP-pyyntöjä ja vastaanottaa vastauksen.
Asenna Guzzle-kirjasto suorittamalla alla oleva komento projektin juurihakemistossa.
composer require guzzlehttp/guzzle
Luo sitten config.php
tiedosto ja välitä tiedostossa olevat tunnistetiedot alla esitetyllä tavalla.
<?php
define('CLIENT_ID', 'YOUR_CLIENT_ID');
define('CLIENT_SECRET', 'YOUR_CLIENT_SECRET');
define('REDIRECT_URL', 'http://localhost/linkedin/callback.php');
define('SCOPES', 'r_emailaddress,r_liteprofile,w_member_social');
Muista korvata paikkamerkit todellisilla arvoilla. Tässä määritin paikallisen palvelimen URL-osoitteeksi REDIRECT_URL. Sinun URL-osoitteesi on erilainen. ‘SCOPES’ -vakioon olen siirtänyt oletusoikeudet, jotka ovat riittäviä lopulliseen tavoitteeseemme.
Luo valtuutus-URL
Saadakseen käyttöoikeustunnuksesi sen on rakennettava valtuutus-URL. Tämä URL-osoite vaatii client_id ja redirect_uri lisäparametrina. Valtuutus-URL vie sinut LinkedIn-verkkosivustolle, jossa sinun on suoritettava todennus. Kun todennus on suoritettu, sinut ohjataan takaisin takaisinsoitto-URL-osoitteeseen.
Luodaan index.php
ja lisätään valtuutus-URL-koodi seuraavasti.
<?php
require_once 'config.php';
$url = "https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=".CLIENT_ID."&redirect_uri=".REDIRECT_URL."&scope=".SCOPES;
?>
<a href="<?php echo $url; ?>">Login with LinkedIn</a>
Vaihda käyttöoikeustunnuksen valtuutuskoodi
Kuten totesi valtuutuksen suorittamisen jälkeen, ohjaat takaisin uudelleenohjaus-URL-osoitteeseen valtuutuskoodin kanssa. Soittotiedostoon on kirjoitettava koodi, joka lähettää vaadittujen parametrien sisältävän POST-pyynnön LinkedIn-sovellusliittymään ja vastaanottaa käyttöoikeustunnuksen.
callback.php
<?php
require_once 'config.php';
require_once 'vendor/autoload.php';
use GuzzleHttpClient;
try {
$client = new Client(['base_uri' => 'https://www.linkedin.com']);
$response = $client->request('POST', '/oauth/v2/accessToken', [
'form_params' => [
"grant_type" => "authorization_code",
"code" => $_GET['code'],
"redirect_uri" => REDIRECT_URL,
"client_id" => CLIENT_ID,
"client_secret" => CLIENT_SECRET,
],
]);
$data = json_decode($response->getBody()->getContents(), true);
$access_token = $data['access_token']; // store this token somewhere
} catch(Exception $e) {
echo $e->getMessage();
}
Saatuasi käyttöoikeustunnuksen tallenna se turvalliseen paikkaan. Voit tallentaa sen tietokantaan. LinkedIn ei luo pitkäikäisiä käyttöoikeustunnuksia. Se on voimassa 60 päivää. Sinun on luotava käyttöoikeustunnus ennen vanhentumista seuraamalla yllä olevaa prosessia uudelleen. Se on eräänlainen ruma asia, mutta tällä hetkellä ohjelmalliset päivitystunnukset (joita käytetään pääsykoodien luomiseen taustalla) ovat käytettävissä vain rajoitetulle joukolle kumppaneita. Voit lukea lisää tästä LinkedIn-dokumentaatiosta.
Hanki LinkedIn-tunnuksesi API: n avulla
Sinulla on LinkedIn-tilisi käyttöoikeustunnus. Seuraava osa on saada LinkedIn-tunnuksesi. Tätä tunnusta tarvitaan jakamaan viesti LinkedInissä. Hanki tämä tunnus lähettämällä GET-pyyntö LinkedIn API -päätepisteelle / v2 / me.
<?php
require_once 'config.php';
require_once 'vendor/autoload.php';
use GuzzleHttpClient;
$access_token = 'YOUR_ACCESS_TOKEN';
try {
$client = new Client(['base_uri' => 'https://api.linkedin.com']);
$response = $client->request('GET', '/v2/me', [
'headers' => [
"Authorization" => "Bearer ". $access_token,
],
]);
$data = json_decode($response->getBody()->getContents(), true);
$linkedin_profile_id = $data['id']; // store this id somewhere
} catch(Exception $e) {
echo $e->getMessage();
}
Kuten käyttöoikeustunnus, sinun tulisi tallentaa tämä LinkedIn-tunnus. Tarvitsemme sekä käyttöoikeustunnuksen että LinkedIn ID: n seuraavassa vaiheessa.
Lähetä viesti LinkedIniin LinkedIn API: n ja PHP: n avulla
Viimeinen vaihe on lähettää viesti LinkedIniin. Jaa API dokumentaatio kertoo pyynnön muodossa tarvitaan. Ottaen siitä viitteen PHP-koodimme olisi seuraava:
<?php
require_once 'vendor/autoload.php';
use GuzzleHttpClient;
$link = 'YOUR_LINK_TO_SHARE';
$access_token = 'YOUR_ACCESS_TOKEN';
$linkedin_id = 'YOUR_LINKEDIN_ID';
$body = new stdClass();
$body->content = new stdClass();
$body->content->contentEntities[0] = new stdClass();
$body->text = new stdClass();
$body->content->contentEntities[0]->thumbnails[0] = new stdClass();
$body->content->contentEntities[0]->entityLocation = $link;
$body->content->contentEntities[0]->thumbnails[0]->resolvedUrl = "THUMBNAIL_URL_TO_POST";
$body->content->title = 'YOUR_POST_TITLE';
$body->owner = 'urn:li:person:'.$linkedin_id;
$body->text->text = 'YOUR_POST_SHORT_SUMMARY';
$body_json = json_encode($body, true);
try {
$client = new Client(['base_uri' => 'https://api.linkedin.com']);
$response = $client->request('POST', '/v2/shares', [
'headers' => [
"Authorization" => "Bearer ". $access_token,
"Content-Type" => "application/json",
"x-li-format" => "json"
],
'body' => $body_json,
]);
if ($response->getStatusCode() !== 201) {
echo 'Error: '. $response->getLastBody()->errors[0]->message;
}
echo 'Post is shared on LinkedIn successfully.';
} catch(Exception $e) {
echo $e->getMessage(). ' for link '. $link;
}
Yllä olevassa koodissa sinun on korvattava paikkamerkit todellisilla arvoilla. Kun olet soittanut API-päätepisteelle / v2 / jako, saat ‘201’ HTTP-koodin. Se tarkoittaa, että viesti on luotu (jaettu) LinkedInissä.