Open2

OpenGraph.phpを使って外部リンクをブログカードにする

Ryota|CRAFT BOXRyota|CRAFT BOX
functions.php

//OGP情報を取得
require_once 'OpenGraph.php';
$graph = OpenGraph::fetch($url);

//OGPタグからタイトルを取得
$Link_title = wp_trim_words($graph->title, 32, '…');

//OGPタグからdescriptionを取得(抜粋文として利用)
$Link_description = wp_trim_words($graph->description, 60, '…'); //文字数は任意で変更

// アイキャッチを取得
$image = $graph->image;
if (!empty($image)) {
	$xLink_img = '<img src="' . $image . '"  width="' . $img_width . '" />';
} else {
	// wordpress.comのAPIを利用してスクリーンショットを取得
	$image = 'https://s.wordpress.com/mshots/v1/' . urlencode(esc_url(rtrim($url, '/'))) . '?w=' . $img_width . '&h=' . $img_height . '';
	$xLink_img = '<img src="' . $image . '" width="' . $img_width . '" />';
}

$content .= '<div class="m--blogcard-box"><a href="' . $url . '" target="_blank ><div class="c--blogcard-contents"><div class="a--title -blogcard">' . $Link_title . '</div><div class="a--text -blogcard">' . $Link_description . '</div></div><div class="c--blogcard-thumbnail">' . $xLink_img . '</div></a></div>';