我对php编码和使用Google Books API很熟悉。由于Google Books API每天有1000个请求限制,我只是在启用计费之前确保我的代码不会笨重。以下是我目前如何在我的WordPress帖子中显示封面图片:
<?php
$url = get_post_meta($post->ID, 'URL', true);
if($url != '') { echo "<a href='$url' target='_blank'>"; } ?>
<div class="book-cover">
<?php
$isbn = get_post_meta($post->ID, 'ISBN', true);
$page = file_get_contents("https://www.googleapis.com/books/v1/volumes?q=isbn:$isbn&key=xxxx");
$data = json_decode($page, true);
$cover = $data['items'][0]['volumeInfo']['imageLinks']['thumbnail'];
echo "<img src='$cover' />"; ?>
</div><?php if($url != '') { echo "</a>"; }
?>
非常感谢您的帮助!
根据我从您的代码中了解到的,您需要在模板文件中打印书籍图像的URL。
理想情况下,这应该在一个插件中,或者至少在主题中的一个单独的类/函数中。将表示代码(HTML)与逻辑混合不是一个好的做法。
关于对API的请求数量,除非您的访问者数量非常少,否则您应该将从API获得的数据保存在本地,这样您就不会多次请求获得相同的数据。
既然你是从PHP开始的,你可能想寻找类似的插件并研究它们的代码。