Вопрос

У меня есть этот код на моих функциях.

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;
}

Но иногда я получал ошибку, подобную этой, "function.file-get-contents]: не удалось открыть поток: http-запрос не удался!

Строка 614 - это код сверху. Я хочу обрабатывать эту ошибку и не показывать ее для пользователей. Но вместо того, чтобы показывать Bit.ly Short URL -адрес, если есть ошибка 404, я хочу показать URL -адрес wp.me по умолчанию для пользователей или, если это невозможно wp.me, то весь URL.

Изменить я исправил это с помощью этого кода

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; }
}
Это было полезно?

Решение

Я согласен, что это PHP, а не WP.

Чтобы приблизить его к WP, я предлагаю взглянуть на следующую функциональность:

  • Http api очень предлагается для выполнения HTTP -запросов;
  • add_post_meta() и связанные с ними мета-функции для хранения пост-специфической информации;
  • the_shortlink() Функция, это предлагаемый тег шаблона для использования для Fortvie Funduality (и для третьей стороны).
Лицензировано под: CC-BY-SA с атрибуция
Не связан с wordpress.stackexchange
scroll top