Domanda

Ho questo codice sul mio functions.php per ottenere SHORTURL oltre bit.ly

function bitly() {
global $post;
$bitly = file_get_contents('http://api.bit.ly/v3/shorten?login=USER&apiKey=KEY&longUrl='.urlencode(get_permalink($post->ID)).'&format=txt');
echo $bitly;
}

, ma, a volte ho avuto errore come questo "Function.file-get-contents]: non è riuscito a flusso aperto: HTTP richiesta non riuscita HTTP / 1.1 403 Forbidden in functions.php on line 614"

Linea 614 è il codice dall'alto. Quello che voglio è quello di gestire tale errore e non mostrarlo agli utenti. Ma invece di mostrare bit.ly url breve, se l'errore 404 è lì, voglio mostrarvi url wp.me predefinita per gli utenti o se non è possibile, allora wp.me intero URL.

EDIT Ho fissato questo con questo codice

function bitly() {
global $post;
$bitly = wp_remote_retrieve_body (wp_remote_get('http://api.bit.ly/v3/shorten?login=USERNAME&apiKey=APIKEY&longUrl='.urlencode(get_permalink($post->ID)).'&format=txt'));
if( is_wp_error( $bitly ) ) {
echo wp_get_shortlink($post->ID); }
else { echo $bitly; }
}
È stato utile?

Soluzione

Sono d'accordo che questo è il PHP piuttosto che WP domanda.

Per renderla più vicina al WP Vi suggerisco di dare un'occhiata alle seguenti funzionalità:

  • HTTP API è altamente consigliato per effettuare richieste HTTP;
  • add_post_meta() e meta relative funzioni alle informazioni post-specifiche negozio;
  • the_shortlink() funzione, che viene suggerito tag modello da utilizzare per la funzionalità di collegamento corto natvie (e gancio in per terze parti).
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange
scroll top