2016-02-06 2 views
0

Я новичок в Jekyll и не могу настроить его так, как я хочу. У меня есть сайт со стандартной структурой каталогов: каталоги css, img и js, а также файлы индексов и html страниц на одном уровне. До сих пор так нормально.Структура каталога jekyll/изменение index.html на другую страницу

Если я запустил jekyll new blog, он настроит файлы, которые ему нужны, в блоге subdir. Но затем, когда я перехожу в этот каталог, чтобы изменить основные файлы макета и сделаю jekyll serve, он строит отлично, он не может найти файлы css, действительные для всего моего сайта, потому что он не может «видеть» что-либо в каталоге Дальше по. Я пробовал испортить путь к css, но я, похоже, не могу его показать. Я попытался переместить все из поддиалога «блог» на один уровень, так что папка _layoutsb и т. Д. Находятся на том же уровне, что и каталоги css и img, но тогда у меня есть проблема, что Jekyll создает только файл index.html - Я не хочу этого, у меня уже есть индексный файл, и это .php, а не .html.

Как я могу либо: а) получить Джекил работает в подкаталог, но использовать стили CSS, изображения и т.д. из основного CSS директории

или

б) получить Джекил, чтобы жить на.. топ-уровень, но постройте что-то, что не является «index.html» ??

Спасибо за любую помощь. Я продолжаю строить, удалять и настраивать и вообще не добиваться прогресса.

ответ

0

Ну, Jekyll is a static website generator и не поддерживает php. Но вы можете делать почти все с Liquid Templating Language, например includes, и вы можете использовать множество функций, фильтров и других features, которые позволяют динамически писать и публиковать статические страницы.

Хорошие новости: хотя я нашел обходное решение для включения php-файлов! ;)

  1. Создать папку на сайте root. Скажем, это имя php (без подчеркивания). Добавьте туда столько php-файлов, сколько хотите. Предположим, вы включили index.php в директорию php.

  2. В вас _config.yml, добавьте следующую строку:

    keep_files: [php] 
    

Это позволит папку phpuntouched, когда Джекилла построить сайт.

  1. Запустить jekyll serve как обычно.

  2. Когда вы добавляете ссылку на таблицы стилей (и другие ссылки), не забывайте о том, что папка, содержащая ваши PHP-файлы будут находиться на том же уровне, что и папку CSS, так что, что в вашем index.php:

    <link rel="stylesheet" href="../css/main.css"> 
    
  3. Чтобы увидеть файлы php, вступающие в силу, вам нужно будет создать сайт в вашем localhost root. Например, если вы используете Xampp, он будет находиться внутри htdocs.Чтобы просмотреть файлы, вам необходимо включить Apache и ввести в браузере: http://localhost/test/_site/php/ - где test - это корневая папка проекта, и вы увидите, что ваш index.php работает так, как должен. Другие файлы будут доступны через _site, а также через localhost:4000.

  4. Загрузите на свой веб-сервер только контент _site, если только ваш сервер не построит Jekyll автоматически.

Откройте папку _site, чтобы проверить, как ваш сайт был построен.

Не забывайте: не будет разрешено разместить сайт на GitHub Pages, как это не предлагает поддержку PHP. Я бы рекомендовал разместить ваш сайт в полнофункциональном хостинг-провайдере.

Надеюсь, что помогли!

Смежные вопросы