Мне нужно создать собственный шаблон для PhpDocumentor. Проблема в том, что пути, определенные в template.xml
даже если они определены как абсолютные, они не разрешаются правильно. PhpDocumentor ищет их в каталоге поставщиков.
<template>
<author>Code Mine</author>
<email>[email protected]</email>
<description>Template for Confluence API</description>
<version>1.0.0</version>
<transformations>
<transformation writer="twig" source="./index.html.twig" artifact="index.html"/>
<transformation query="indexes.namespaces" writer="twig" source="./namespace.html.twig" />
<transformation query="indexes.classes" writer="twig" source="./class.html.twig" />
</transformations>
</template>
Несмотря на то, что шаблоны веток расположены в пути, на который ссылается xml, я получаю сообщение об ошибке, что файлы не существуют.
РЕДАКТИРОВАТЬ:
Я также попытался с настройкой всех деталей конфигурации в phpdoc.xml
в надежде, что пути будут считаться относительно файла конфигурации, но безуспешно.
Если вы указываете пользовательский шаблон с --template="..."
это будет (по какой-то странной причине) копия весь этот шаблон в папку поставщика вместе с исходными шаблонами и, следовательно, структуру пути в template.xml
должен оставаться прежним. Вам нужно только изменить, например. templates/clean/
в templates/yourtemplatename/
,
У меня есть проблема с кэшированием, хотя. Я не могу заставить его перечитывать мой шаблон каждый раз. Это где-то кешируется, и я не могу понять, где. Документация действительно плохая, а источник хуже.
Обновить:
Наконец выяснил, что он кеширует мой шаблон во временной папке моего компьютера. Для Windows, например: c:\Users\<username>\AppData\Local\Temp\phpdoc-twig-cache\
, Поэтому я просто удаляю всю эту папку.
Поправьте меня, если я ошибаюсь, но кажется, что вы можете просто передать путь к файлу в CLI
https://www.phpdoc.org/docs/latest/getting-started/changing-the-look-and-feel.html
Использование пользовательского шаблона Если у вас есть шаблон компании или проекта, вы также можете использовать его с phpDocumentor, указав расположение папки вашего шаблона:
$ phpdoc -d "./src" -t "./docs/api" --template="data/templates/my_template"
вам может потребоваться выйти из каталога поставщиков с несколькими ..
вот так
--template="../../data/templates/my_template"
или пройти абсолютный путь
--template="/var/scratch/foo/data/templates/my_template"