1

PHPでこれを機能させるには、助けが必要です。

ワードプレスのさまざまな「ページ」に多くの情報と写真があります。今、私はこの問題をどのように解決するべきかを本当に理解できません。

「ページテキスト」に直接このような画像がたくさんあります

<img src="..." />

そして、私はそれを置き換える必要があるので、

<a href="content of img src" data-lightbox="image-1"><img src="..." /></a>

私がほとんど何も知らない正規表現でこれを修正する方法があると思います。

事前に感謝します。問題を解決できない場合でも、おそらく正しい方向に向けることができます。「ページ」には最大 4 ~ 5 個の画像を含めることができます。

4

2 に答える 2

0

これには PHP DOMDocument を使用できます。正規表現を使用することもできますが、この方法を使用した方がうまくいくでしょう。

$dom = new DOMDocument();
$dom->loadHTML($html); // $html is your "page text"

//Create new wrapper
$new_anchor = $dom->createElement('a');
$new_anchor->setAttribute('data-lightbox','image-1');

//Find all images
$images = $dom->getElementsByTagName('img');

//Iterate though images
foreach ($images AS $image) {
    //Clone our created anchor
    $new_anchor_clone = $new_anchor->cloneNode();
    //Add on the src
    $new_anchor_clone->setAttribute('href',$image->getAttribute('src'));
    //Replace image with this anchor
    $image->parentNode->replaceChild($new_anchor_clone,$image);
    //Append this image to wrapper anchor
    $new_anchor_clone->appendChild($image);
}
于 2013-11-05T22:33:35.843 に答える