WordPress включает ошибку файла SVG

Я использую 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, но включение не работает. Почему бы и нет? Почему на локальном, а не на живом сервере?

3 ответа

Решение

Мой хостинг разрешен и включить, что это был файл PHP, а не файл XML.

Мне пришлось запустить эхо до XML.

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

Это делает WordPress не в состоянии читать это изображение, это предотвращает хороший предварительный просмотр изображения. Другие умные решения все еще приветствуются...

Вы, наверное, давно это разобрали, но у меня только что возникла проблема, и это связано с 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

Это работает для меня - просто полностью удалите тег заголовка xml из файла SVG, так как это не требуется браузеру. Инструменты оптимизации SVG, такие как веб-инструмент SVGOMG, делают это автоматически для вас.

Другие вопросы по тегам