it-swarm.xyz

какой лучший способ включить изображения из папки изображений шаблона?

какой лучший способ включить изображения из папки изображений шаблона? это с помощью get_bloginfo('template_url')? Я понял, что лучше жестко закодировать путь к папке с изображениями, так как таким образом вы сохраняете вызовы функций в PHP ..

какие-нибудь мысли?

5
Amit

Самый простой и простой способ сделать это - определить уникальную переменную в файле functions.php вашей темы.

Такие как:

<?php
$theme_name_images = get_bloginfo('stylesheet_directory') . '/images/';
?>

Нет необходимости в занятиях, как предложено предыдущим ответом.

Правка: это должно быть get_bloginfo, а не bloginfo (), как любезно указал Viper007Bond.

6
john010117

Я понял, что лучше жестко закодировать путь к папке с изображениями, так как таким образом вы сохраняете вызовы функций в PHP ..

Я определенно не буду беспокоиться о вызовах функций, кеш объектов WordPress будет обрабатывать кеш все это для вас. Вы можете определить путь как константу, если хотите, но я, как правило, не стал бы беспокоиться.

Я бы просто сделал:

<img src="<?php bloginfo('stylesheet_directory')"?>/images/image.png" />

я отредактировал это

<img src="<?php bloginfo('stylesheet_directory');?>/images/image.png" /> (выше дает ошибки)

7
Joe Hoyle

@Amit: это зависит. Большинство вызовов функций выполняются довольно быстро в PHP, поэтому если вы ищете производительность, я бы не стал сильно беспокоиться об этом. Однако я знаю, что ты чувствуешь, видя все эти звонки. Тем не менее, я бы никогда не хотел жестко кодировать пути.

Если вы собираетесь многократно использовать get_bloginfo('template_url') в своей теме, почему бы не присвоить ее глобальной переменной в вашем файле functions.php, а затем ссылаться на нее везде, где вы обычно ссылаетесь на вызов функции? Убедитесь, что вы назвали его чем-то маловероятным, например amits_template_url. Так что сделайте это в functions.php:

global $amits_template_url;
$amits_template_url = get_bloginfo('template_url');

И затем в вашей теме ссылка на нее везде, где вы бы ссылались get_bloginfo('template_url').

2
MikeSchinkel

Просто свяжите ваши файлы изображений из вашего файла CSS, это означает, что вы можете использовать относительный путь от файла CSS к изображениям. Это решение только для CSS. Код PHP не требуется. Работа выполняется браузером.

0
hakre

Ну, это зависит от того, какое развитие вы делаете. Если вы занимаетесь разработкой плагинов, вам нужно использовать функции, потому что вы никогда не будете точно знать, какой будет структура URL. Если вы выполняете конкретную работу на конкретном веб-сайте, технически нормально кодировать его жестко, но это все еще нецелесообразно, поскольку исключает возможность того, что структура URL-адреса когда-либо может измениться.

Всякий раз, когда я разрабатываю плагины или темы, я структурирую программу в классе; таким образом, я могу сохранить повторяющиеся значения в качестве свойств объекта (например, WP URL и template_url). Таким образом, я могу использовать их быстро, без повторного вызова функций.

0
John P Bloch