Я пытаюсь загрузить файл CSS в пользовательский блок для моего сайта Concrete5, но у меня проблемы. Импорта для моего CSS выглядит следующим образом:PHP | как получить путь к файлу без включения папок вне корня моего проекта
$layout_dir = dirname(__FILE__) . '/';
<link href="<?php echo $layout_dir; ?>form.css" rel="stylesheet" type="text/css">
Что будет пытаться импортировать мои стили с этим URL:
http://pragmatic.dev/Users/brady/Code/pragmatic/public/packages/theme_caboodle/blocks/hero_block/form.css
Этот вопрос мне нужно путь, чтобы исключить:
/Users/brady/Code/pragmatic/public
часть моего пути, поэтому основание пути - это корень моего проекта:
/packages/theme_caboodle/blocks/hero_block/form.css
Как настроить мой импорт, чтобы включить только путь из корня проекта?
/packages/theme_caboodle/blocks/hero_block/form.css
Мне также нужен этот путь, чтобы не сломаться при установке на сервер или локальную машину другого пользователя. Таким образом, у другого пользователя, использующего этот блок, у меня есть другая структура папок, потому что они загружали его с рынка, поэтому мне нужно помнить об этом.
Это мое решение до сих пор, но его довольно грубо я считаю:
$baseDir = getcwd() . '/';
$fullDir = dirname(__FILE__) . '/';
//use this path for importing
$blockDir = str_replace("$baseDir","",$fullDir);
$ layout_after = explode ("/ public", $ layout_dir) [1]. "/"; –
Ваше решение в порядке. – yivi