I have image tag <img src="path_to_file.png">
but I want that the image tag be converted to link in mobile site.
So I want img to be converted to an href:
<a href="path_to_file.png" target="_blank">Click here to open in new tab</a>
I am getting started with php dom. I could get all the attribute listed.
$newdocument = new DOMDocument();
$newdocument->loadHTML();
$getimagetag = $doc->getElementsByTagName('img');
foreach($getimagetag as $tag) {
echo $src=$tag->getAttribute('src');
}
But how do we get the src attribute , then remove the img tag completely because it contains other parameter like height and length and then create new tag of link?
Hi guys I could get it done from php dom using following code
$input="<img src='path_to_file.png' height='50'>";
$doc = new DOMDocument();
$doc->loadHTML($input);
$imageTags = $doc->getElementsByTagName('img');
foreach($imageTags as $tag) {
$src=$tag->getAttribute('src');
$a=$doc->createElement('a','click here to open in new tab');
$a->setAttribute('href',$src);
$a->setAttribute('style','color:red;');
$tag->parentNode->replaceChild($a,$tag);
}
$input=$doc->saveHTML();
echo $input;
The create element can also be used to put text between <a></a>
ie Click...new tab.
replacechild is used to remove $tag i.e. img
and replace it with a
tag.
By setting attribute, we can add other parameters like style,target etc.
I used php dom in the end because I only wanted the data that I get from mysql to be converted and not the other elements like logo of website. Ofcourse it can be possible using javascript too.
Thanks
@dave chen for javascript way and pointing to detecting mobile link.
@nate for pointing me to a answer.