纯代码实现WordPress自动生成网站截图
我们看到很多分享类网站或者模板类网站上,会有很多网站的截图,如果数量很大的情况下,会比较麻烦。对于我们自己做网站时,完全可以使用代码生成的方法,自动生成网站缩略图,这样可以节省很多时间和精力。
下面我们分享 wordpress 文章中自动获取网站截图的两种纯代码方法:
方法一、短代码实现的方法
将下面的代码添加到当前主题模板函数 functions.php 中:
function wp_screenshot($atts, $content=null){
extract(
shortcode_atts(
array(
"shots" => "https://s0.wordpress.com/mshots/v1/",
"url" => "https://www.wpbeginner.com",
"width" => "600",
"height" => "450",
"alt" => "screenshot"
),
$atts
)
);
$img = '<div class="wp-shot"><a href="' . $url . '" rel="external nofollow noopener noreferrer" target="_blank"><img src="' . $shots . '' . urlencode($url) . '?w=' . $width . '&h=' . $height . '" alt="' . $alt . '" /></a></div>';
return $img;
}
add_shortcode("shot", "wp_screenshot");
发表文章时,添加短代码:
[shot url="https://www.xuewangzhan.net/"]
或者自定义截图大小
[shot url="https://www.xuewangzhan.net/" width="600" height="450"]
修改其中的网址链接链接即可。
方法二、直接添加链接的方法
这个方法使用更加方便,获取截图的基本格式:
https://s0.wordpress.com/mshots/v1/http://xuewangzhan.net/?w=600&h=450
也可以直接将上述地址链接格式像正常插入图片(从 URL 插入)一样添加到文章中,上面的截图就是这么加的,并没有用短代码。
温馨提示:因需要即时生成截图,第一次打开可能看不到图片,刷新一下就可以了,不行就多刷新几次。生成的截图存储在 WordPress.com 服务器上,不会占用自己的网站空间,不过加载可能有些慢。