Как эхо изображение с php

Я пытаюсь эхо изображения из моей папки «_images», но если я напишу следующий код, это будет только для моего сайта:

echo '<img src="http://mywebsite.com/mytheme/wp-content/themes/my theme/_images/project3image1.jpg">'; 

Я изменил его на это, поэтому, когда кто-то использует мою тему, он берет их в свой собственный каталог веб-сайта:

 echo '<img src="<?php bloginfo('stylesheet_directory'); ?>/_images/project3image1.jpg">'; 

Но, должно быть, что-то не так с этим кодом, когда я помещаю это и просматриваю свой сайт, он дает мне эту ошибку:

 Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/content/32/9825632/html/bomb/wp-content/themes/bomb/header.php on line 101 

Я php noob, так что это, наверное, очевидная ошибка!

Вы уже находитесь в php / echoing things, поэтому вам не нужно использовать теги php:

 echo '<img src="' . bloginfo('stylesheet_directory') . '/_images/project3image1.jpg">'; 

Не смешивайте разметку с кодом. Вы просите о проблемах, и все это потеряет читаемость. Используйте printf следующим образом:

 printf( '<img src="%s/_images/project3image1.jpg">', bloginfo('stylesheet_directory')); 

Но вашей реальной проблемой были вложенные кавычки. Если вы используете ' чтобы разграничить границы строк, например:

 'foo' 

то если строковое содержимое содержит ' тоже»:

 'foo'bar' 

его нужно избегать следующим образом:

 'foo\'bar' 

в противном случае ваш кавычек контента будет считаться закрывающей цитатой для строки. Или вы можете использовать " вместо этого:

 "foo'bar" 

но опять же – если содержимое вашей строки содержит " то оно должно быть экранировано:

 "foo\"bar" 

если строка содержит как " и ' тогда вам нужно избегать только того, который является разделителем строк, то есть:

 'foo"bar\'foo' 

или

 "foo'bar\"foo" 

Чтобы использовать второй стиль кода, вы должны сначала закрыть теги php:

  //...your php code before echoing the img //here you close the tag ?> <img src="<?=bloginfo('stylesheet_directory')?>/_images/project3image1.jpg" /> <?php //here you open it again //your rest php code... 

В любом месте вашего php-кода, если вы хотите откликнуться на какой-то html, просто закройте теги php, снова напишите html и откройте теги php. Но лучше не смешивать html и php. Попробуйте написать весь ваш php-код в начале ваших файлов и после всего этого html. В вашем php-коде введите переменные с динамическими значениями и введите PHP-код внутри html, чтобы выводить их внутри любого содержимого атрибута или тега.