非常に画像が多いワードプレスのテーマがあります。画像は、ファイルに直接リンクする必要があるアンカー タグでラップされています。画像のマークアップの例を次に示します。
<a href="Link_to_attachment_page" ><img src="Direct_link_to_file"></a>
必要なのは、次のようにフォーマットすることです。
<a href="Direct_link_to_file" rel="shadowbox"><img src="Direct_link_to_file"></a>
編集:これを書き終えずに誤って公開しました。
これまでのところ、ページ上の各画像の src を取得して配列に格納する preg_match_all があります。このような:
preg_match_all("/<img .*?(?=src)src=\"([^\"]+)\"/si", $content, $m);
次に、ループ内で preg_replace を使用して、各アンカー タグの href を配列内の対応する src に変更しました。
for($k = 0; $k <$length; $k++){
$pattern ="/<a(.*?)href=('|\")(.*?).(bmp|gif|jpeg|jpg|png)('|\")(.*?)>/i";
$replacement = '<a$1 rel="shadowbox" href="'.$m[1][$k].'"$2$3.$4$5>';
$content = preg_replace($pattern, $replacement, $content);
}
これで、href が配列に格納されている値に正常に設定されます。ただし、各 href を同じ画像 (最後の画像) に設定します。だから、私が立ち往生しているところです。今何?