skabe en twitter dims med sidste twitter api -

, skabe en twitter dims med sidste twitter api -,,,,, 33,,,,,,,,, 15,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, twitter flere ændringer, da de sendte 1.1 i deres api - grænseflade.en af de mest bemærkelsesværdige ændringer er indførelsen af godkendelse.det er,   ansøgninger skal være bekræftet, før de kan få lov til at sende anmodninger til api.,, autentificering er drevet af oauth - en åben protokol, således at opnå tilladelse i en enkel og ensartet metode, der gør det muligt for brugere til at godkende anvendelse til at handle på deres vegne, uden at deres kodeord.,, i denne forelæsning, vi vil lære at programmatically interagere med twitter er api, efterhånden som vi udvikler en twitter tidslinje wordpress dims, der viser en liste over de seneste tweets fra twitter.,, her er en forsmag på twitter tidslinje dims, der bygges i slutningen af denne forelæsning.,,,,, for at sende anmodninger til twitter api, du har brug for for at skabe en ansøgning med oauth tilladelse for uautoriseret ansøgningerdet vil ikke være tilladt, at skabe en twitter ansøgning, skal du logge ind på twitter udvikler instrumentbræt benytter twitter.   ideen med at oprette en ansøgning, er at give dig selv (og twitter) et sæt nøgler.  , omfatter disse:,, forbrugeren nøgle, forbrugeren hemmelighed, adgang eller adgang symbolsk hemmelighed, følg nedenstående punkter for at skabe en twitter anvendelse og til at generere nøgler.,,, login til twitter entreprenør - konto ved anvendelse af twitter og navigere for anvendelsen forvaltning konsol.,, klik, skabe nye app, knap til at indlede twitter anvendelse oprettelse. fyld form og klik den forelægge knap skabe anvendelse. klik på anvendelsen, sejle til, tilladelser, tab og chansæ adgang niveau til at læse og skrive.,, hvis du ønsker at foretage en ordentlig anvendelse af denne api, du bliver nødt til at ændre deres indstilling til at læse og skrive, hvis du gør noget andet end standard for indhentning af data ved hjælp af få anmodninger.,,,,,, - - for at få deres ansøgning forbrugernes centrale og hemmelige, sejle til, api - nøgler, tab. de api - nøgler og api hemmelighed er forbrugernes centrale og forbrugernes hemmelighed.,,,,,,,,, at få ansøgningen adgang tegn og adgang symbolsk hemmeligheder, stadig i, api - nøgler, tab, den nedadgående og klik på den lave min adgang eller knap for at skabe adgang poletter.,,,,,, opfriske den side og deres ansøgning adgang møntefterligninger vil blive ført til dig.,,,,,, vi nu har forbrugeren afgørende og hemmelige og også adgang tegn og sekret nøgler.   disse oauth akkreditiver er bekræftet af twitter, når de sender anmodninger til api.,, widget indstillinger af twitter tidslinje dims, vi er kodning består af form for områder, der vil indsamle og redde disse oauth akkreditiver til databasen for genbrug af widget.,, lad os komme igang kodning twitter tidslinje widget stik af, twitter tidslinje widget udvikling, hovedet er for det første at gå i den stik af fil er stik af header.,,, <?php /* stik af navn: twitter tweets widget stik af uri: http://code.tutsplus.com beskrivelse: udstillinger seneste tweets fra twitter.forfatter: agbonghama collins forfatter uri: http://tech4sky.com * /,,, skabe en klasse om, wp_widget,   forælder klasse.,,, klasse twitter_tweets_widget udvider wp_widget (//...,,, giv den dims navn og beskrivelse via, __construct(), magiske metode.,,, funktion __construct() (moder: __construct ("twitter tweets dims, __ (" twitter tweets dims "," twitter_tweets_widget) system ("beskrivelse" = > __ (') seneste tweets fra twitter. "," twitter_tweets_widget'));},,, form(), metode under skabe widget indstillinger form, der vil redde den oauth akkreditiver til databasen for genbrug og derefter af widget.,,, offentlige funktion form ($instans) (hvis (tom ($))) ($twitter_username = ". $update_count =". $oauth_access_token = ". $oauth_access_token_secret =". $consumer_key = ". $consumer_secret =". $afsnit = ";} andre ($twitter_username = $instans ['twitter_username '] $update_count = isset ($) ['update_count']).$instans ['update_count ']: 5 $oauth_access_token = $instans ['oauth_access_token'] $oauth_access_token_secret = $instans ['oauth_access_token_secret '] $consumer_key = $instans ['consumer_key'] $consumer_secret = $instans ['consumer_secret ']; hvis (isset ($) ['title'])) ($titel = $instans ['title ']} andre {$afsnit = __ ("twitter, twitter_tweets_widget)).> < p > < etiket til = "<?php echo $- > get_field_id ("').> "> <?php echo __ (afsnit "," twitter_tweets_widget ').: «?> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ("').> "navn =" <?php echo $- > get_field_name ("').> "type =" tekst "værdi =" <?php echo esc_attr ($afsnit).> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('twitter_username)?> "> <?php echo __ ("twitter brugernavn (uden @) «, twitter_tweets_widget ').: «?> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('twitter_username)?> "navn =" <?php echo $- > get_field_name ('twitter_username)?> "type =" tekst "værdi =" <?php echo esc_attr ($twitter_username)?> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('update_count)?> "> <?php echo __ (antal tweets viser, twitter_tweets_widget ').: «?> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('update_count)?> "navn =" <?php echo $- > get_field_name ('update_count)?> "type =" nummer "værdi =" <?php echo esc_attr ($update_count)?> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('oauth_access_token)?> "> <?php echo __ ('oauth adgang tegn, twitter_tweets_widget').: «?> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('oauth_access_token)?> "navn =" <?php echo $- > get_field_name ('oauth_access_token)?> "type =" tekst "værdi =" <?php echo esc_attr ($oauth_access_token)?> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('oauth_access_token_secret)?> "> <?php echo __ ('oauth adgang symbolsk secret "," twitter_tweets_widget').: «?> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('oauth_access_token_secret)?> "navn =" <?php echo $- > get_field_name ('oauth_access_token_secret)?> "type =" tekst "værdi =" <?php echo esc_attr ($oauth_access_token_secret)?> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('consumer_key)?> "> <?php echo __ (forbrugernes centrale "," twitter_tweets_widget ').: «?> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('consumer_key)?> "navn =" <?php echo $- > get_field_name ('consumer_key)?> "type =" tekst "værdi =" <?php echo esc_attr ($consumer_key)?> "/> < /p > < p > < etiket til =" <?php echo $- > get_field_id ('consumer_secret)?> "> <?php echo __ (forbrugernes secret "," twitter_tweets_widget ').: «?> < /etiketten > < input = "klasse widefat" id = "<?php echo $- > get_field_id ('consumer_secret)?> "navn =" <?php echo $- > get_field_name ('consumer_secret)?> "type =" tekst "værdi =" <?php echo esc_attr ($consumer_secret)?> "/> < /p > <?folkesundhedsprogrammet), nedenfor, er et skærmbillede af widget indstillinger, der er skabt af, form(), metode ovenfor.,,,,,, når værdierne er opført i forhold   form område, de har brug for at blive reddet til databasen.det, update(), metode og sterilisere widget form værdier ved at strippe ud ondsindede oplysninger og redde renses data til databasen.,,, offentlige funktion ajourføring ($new_instance, $old_instance) ($) = array(). $instans ['title '] = (!tom ($new_instance ['title '])?strip_tags ($new_instance ['title ']): "" $instans ['title'] = (!tom ($new_instance ['title '])?strip_tags ($new_instance ['title ']): "" $instans ['twitter_username'] = (!tom ($new_instance ['twitter_username '])?strip_tags ($new_instance ['twitter_username ']): "" $instans ['update_count'] = (!tom ($new_instance ['update_count '])?strip_tags ($new_instance ['update_count ']): "" $instans ['oauth_access_token'] = (!tom ($new_instance ['oauth_access_token '])?strip_tags ($new_instance ['oauth_access_token ']): "" $instans ['oauth_access_token_secret'] = (!tom ($new_instance ['oauth_access_token_secret '])?strip_tags ($new_instance ['oauth_access_token_secret ']): "" $instans ['consumer_key'] = (!tom ($new_instance ['consumer_key '])?strip_tags ($new_instance ['consumer_key ']): "" $instans ['consumer_secret'] = (!tom ($new_instance ['consumer_secret '])?strip_tags ($new_instance ['consumer_secret ']): "; tilbage $instans.}, fandt jeg en meget nyttig simpelt php papir for twitter api - det sender anmodning og modtage svar fra api smertefrit, som vil blive anvendt ved vores widget.,, downloade på papir i zip arkiv, det github repo, ekstrakt og omfatter, twitterapiexchange.php, fil, der indeholder en indpakning klasse.,,,, twitter_timeline(), metode under godkender som dens argumenter, som er nyttig i forbindelse med anmodning om, at twitter api -.,,, $brugernavn:,, twitter brugernavn,,,, $grænse: antal tweets fremlægges ved den dims, $oauth_access_token:,, twitter anvendelse oauth adgang tegn.,,,, $oauth_access_token_secret:,, anvendelsen oauth adgang tegn,ecrete.,,,, $consumer_key:,, twitter anvendelse forbrugernes centrale. $consumer_secret:,, anvendelsen forbruger udskiller. - offentlig funktion twitter_timeline ($brugernavn, $grænse, $oauth_access_token, $oauth_access_token_secret, $consumer_key, $consumer_secret) (require_once "twitterapiexchange. php '/* *, der - se: https://dev.twitter.com/apps/adgang møntefterligninger * $(= system (' oauth_access_token = > $oauth_access_token, oauth_access_token_secret = > $oauth_access_token_secret, consumer_key = > $consumer_key, consumer_secret = > $consumer_secret); $url = https: //api -. twitter. kom /1 /status /user_timeline. json. $getfield ="?screen_name = ".$brugernavn.& - = ".$grænse. $request_method = "får" $twitter_instance = nye twitterapiexchange ($indstillinger); $forespørgsel = $twitter_instance - > setgetfield ($getfield) - > buildoauth ($url, $request_method) - > performrequest(). $tidslinje = json_decode ($spørgsmål); tilbage $tidslinje.;), den metode, der anvender på papir til twitter api - at sende anmodning til twitter api -, save og returnere respons (json data for brugeren tidslinje).,, tiden tweets blev oprettet eller er reddet af api - i en engelsk tekst datetime.f.eks. thu jun 26 08:47:24 + 10.000 i 2014, for at gøre det tweet tid mere brugervenlig, jeg skabte den metode, tweet_time(), det viser tiden, på følgende måder:,, hvis det er mindre end tre sekunder, det vender tilbage, lige nu, mindre end minut tilbage, x sekunder siden..,, mindre end to minutter tilbage, om 1 minut siden.,, mindre end en time tilbage, n minutter siden, og så videre.,, her er koden til, tweet_time() metode.,,, offentlig funktion tweet_time ($) (//få nuværende klokkeslættet.- nu = strtotime ('"); //få timestamp når tweet skabt.$skabt = strtotime ($); //få forskel.$forskel = $. - $skabt; //beregne anden tid værdier.$øjeblik = 60 $time = $øjeblik * 60 $dag = $time * 24 $om ugen = $dag * 7; hvis (is_numeric (% forskel) & & $forskel > 0) (//, hvis der er færre end 3 sekunder.hvis ($forskel < 3) {tilbage __ ("lige nu", "twitter_tweets_widget)} //, hvis der er færre end øjeblik.hvis ($forskel < $minut) {tilbage. etage ($forskel). ". __ ("sekunder siden, twitter_tweets_widget);} //, hvis mindre end 2 minutter.hvis ($forskel < $øjeblik * 2 *) {tilbage __ (ca. 1 minut siden "," twitter_tweets_widget)} //om mindre end 1 time.hvis ($forskel < $time) (tilbage. etage ($forskel /$minut). ". __ (minutter siden, twitter_tweets_widget)} //, hvis mindre end 2 timer.hvis ($forskel < $time * 2 *) {tilbage __ (ca. 1 time siden, twitter_tweets_widget)} //, hvis der er færre end i dag.hvis ($forskel < $om dagen) {tilbage. etage ($forskel /$time). ". __ ("timer siden, twitter_tweets_widget)} //hvis mere end i dag, men mindre end 2 dage.hvis ($forskel > $dag & & $forskel < $dag * 2) {tilbage __ ("i går", "twitter_tweets_widget);} //, hvis der er færre end i år.hvis ($forskel < $dag * 365) {tilbage. etage ($forskel /$om dagen. ". __ ("dage", "twitter_tweets_widget)} //andet tilbage for mere end et år.tilbage __ (over et år siden, twitter_tweets_widget)}}, næste er, widget(), metode, der viser twitter tidsplan i wordpress undtagen.,, offentlige funktion widget ($args $instans) ($afsnit = apply_filters ('widget_title, $instans ['title']) og $brugernavn = $instans ['twitter_username '] $grænse = $instans ['update_count'] $oauth_access_token = $instans ['oauth_access_token '] $oauth_access_token_secret = $instans ['oauth_access_token_secret'] $consumer_key = $instans ['consumer_key '] $consumer_secret = $instans ['consumer_secret'] echo $args ['before_widget ']; hvis (!tom ($titel)) (echo $args ['before_title "].$titel.$args ['after_title ']) //- beskeder.$tidsfrister = $- > twitter_timeline ($brugernavn, $grænse, $oauth_access_token, $oauth_access_token_secret, $consumer_key, $consumer_secret); hvis ($tidsfrister) (//add forbindelser til url og brugernavn og beskeder.$mønstre = system ("@ https?: //([- \\ w \\.] +) + (:) d +)?(/([\\ w /_).] * ().\\ s +)?)?)?)@ "," /@ ([a-za-z0-9_] (1,15}) /'); $erstatte = system (< en href = "$" > $1 < /a > "," < en href = "http: //twitter. com $1" > @ $1 < /a >'); for hvert ($tidsfrister som $tidslinje) ($resultat = preg_replace ($), $i stedet for $tidslinje - > tekst), echo "< div > « echo $resultat."< br /> « echo $- > tweet_time ($tidslinje - > created_at); echo '< /div > « echo' < br /> «) andet (_e ("fejl hente næring.- kontrollere twitter indstillinger i widget. "," twitter_tweets_widget)} echo $args ['after_widget ']}, den dims klasse, twitter_tweets_widget, endelig er registreret ved hjælp af, widgets_init, klo, så det er let genkendelige ved wordpress.luk din klasse med en afslutning, og derefter tilsættes kode under at nulstille  ,,, funktion register_twitter_widget() {register_widget ('twitter_tweets_widget)} add_action (' widgets_init "," register_twitter_widget), endelig er vi færdige kodning twitter tidslinje widget.,,,, i denne artikel,   vi lærte at bruge twitter api - i den virkelige verden projekt for at opbygge vores egen twitter tidslinje wordpress widget.selv om de pædagogiske bør være forholdsvis ligetil, vi dækkede emner som oauth, nøgler, og andre emner, som kan være nyt for dem, som arbejder med en adi,.,, hvis du har spørgsmål, eller forslag til kode forbedringer, så lad mig vide det i bemærkningerne.,,,









Previous:
Next Page: