Возможен ли динамический путь в файлах php для ресурсов в разработке WordPack для веб-пакетов? - PullRequest
2 голосов
/ 02 мая 2019

У меня есть папка для разработки WordPress темы ( theme / resources / assets ) для разработки и theme / assets для производства.Когда я создаю header.php и добавляю:

img src=”?php echo get_template_directory_uri();
?>/assets/images/code.png”

В режиме разработки изображения не отображаются.Работает только после сборки.В режиме разработки путь должен быть / resources / assets / images / code.png

Как я могу это исправить?Как я могу динамически изменять пути в PHP-файлах Wordpress?Возможно ли это?

Ответы [ 2 ]

1 голос
/ 02 мая 2019

Вы, вероятно, должны исправить код от

img src=”?php echo get_template_directory_uri();
?>/assets/images/code.png”

Кому:

<img src="<?php echo get_template_directory_uri();?>/assets/images/code.png" />

Для обнаружения окружающей среды вы можете использовать встроенную WP_DEBUG константу и при необходимости скорректировать путь:

<img src="<?php
  echo get_template_directory_uri() . (WP_DEBUG ? '/resources' : '');
?>/assets/images/code.png" />
0 голосов
/ 02 мая 2019

Вы можете использовать URL-адрес сайта, чтобы проверить, является ли он рабочим или разрабатываемым сайтом, и возвратить URL-адрес активов на основе этого:

<?php

$site_url = get_site_url();
if($site_url == 'http://http://stage.example.com'){
    // Staging site assets url
    $assets_url = get_template_directory_uri() . '/resources/assets';
}else{
    // Live site assets url
    $assets_url = get_template_directory_uri() . '/assets';
}

?>

<img src="<?php echo $assets_url; ?>/images/code.png" />

Один и тот же код можно использовать по-разному, изменив условие, если у вас естьлучший способ сравнения вместо URL сайта - вы можете изменить оператор if, и результат будет таким же.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...