WordPress包含SVG文件错误

时间:2014-02-20 13:11:15

标签: php wordpress svg include

我使用PHP和WordPress。

在localhost上,我可以包含一个没有问题的SVG文件,但是在实时服务器上。我尝试包含一个SVG文件,以便能够用CSS设置它。

我收到了此错误消息

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

我在文件上运行file_exists并返回true,但include不起作用。为什么不?为什么在localhost而不是实时服务器?

3 个答案:

答案 0 :(得分:5)

我的托管允许<?并且包括thougt它是一个PHP文件,而不是XML文件。

我必须在XML之前运行echo。

<?php echo '<?xml version="1.0" encoding="utf8"?>'; ?>

它使WordPress无法读取此图像,它会阻止良好的图像预览。其他聪明的解决方案仍然受到欢迎......

答案 1 :(得分:3)

你可能很久以前对它进行了排序,但我遇到了问题,这与apache的short_open_tag设置有关。

您可以在.htaccess

中包含以下内容,在每个网站的基础上对其进行修改
 # .htaccess
 <IfModule mod_php5.c>
   php_value short_open_tag 0
 </IfModule>

或者您可以通过编辑php.ini文件并查找短开标签设置并将其设置为关闭来修复所有网站。

# php.ini
short_open_tag: Off

答案 2 :(得分:0)

它对我有用-只需从您的SVG文件中完全删除xml标头标记,因为浏览器不需要。诸如基于Web的SVGOMG工具之类的SVG优化工具会自动为您完成此操作。