できた。まあ、return null
してたところにボードの画像取得メソッド入れるだけだけど。
public function getImage(): ?string
{
if (!preg_match_all('/!\[[^\]]*\]\(([^ \)]+)[^\)]*\)/', $this->body, $matches)) {
return $this->board->getImage();
}
foreach ($matches[1] as $url) {
$host = parse_url($url, PHP_URL_HOST);
if ($host == 'storage.googleapis.com') {
return $url;
}
}
return $this->board->getImage();
}