詳しくコードを精査する時間的余裕はないので、ヒントだけになります。
ヒントなので、自分で動作確認はしていないのですが、以下のコード部分の後に
//YouTubeのサムネイルを取得(画像がなかった場合)
if (empty($matches[0])) {
preg_match('%(?:youtube\.com/(?:user/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/ ]{11})%i', $post[0]->post_content, $match);
if (!empty($match[1])) {
$matches=array(); $matches[0]=$matches[1]=array('http://img.youtube.com/vi/'.$match[1].'/mqdefault.jpg');
}
}
以下のコードを追加すればいけるのかなと思います。
//YouTubeでも画像が見つからなかった場合
if (empty($matches[0])) {
$matches=array(); $matches[0]=$matches[1]=array('画像のURL');
}
「画像のURL」部分はNO IMAGEの画像ファイルのURLを指定してください。
※動作は保証できませんので、PHPカスタマイズ部分をいつでも元に戻せる体制にして試してみてください。