I use PHP and WordPress.
On localhost I can include a SVG file without problems, but on the live server. I try to include an SVG file to be able to style it with CSS.
I got this error message
Parse error: syntax error, unexpected T_STRING in
/www/webvol1/34q/h6njx/mysite.com/public_html/wp-content/uploads/2014/02/fish_icon.svg on line 1
I run a file_exists on the file and it returns true but the include does not work. Why not? Why on the localhost and not the live server?
My hosting allowed <? and the include thougt it was a PHP file, not an XML file.
I had to run echo before the XML.
It makes WordPress not be able to read this image, it prevents a good image preview. Other clever solutions are still welcome…
You probably sorted this long ago but I’ve just had the problem and it’s to do with apache’s
short_open_tag
setting.You can modify this on a per site basis by including the following in your .htaccess
Or you can fix for all sites by editing your php.ini file and finding the short open tag setting and setting it to off.
It works for me – just remove xml header tag from your SVG file completely, as this is not needed by the browser. SVG optimization tools like the web-based SVGOMG tool do this automatically for you.