Разбирайте теги CFML в PHP

Предпосылки :

Я занимаюсь сайтом на платформе blogger в течение последних 5 лет. Я использовал вариант размещения сайта на своем собственном сервере, публикуя через FTP. На моем сервере работает ColdFusion, поэтому я решил воспользоваться этим. Я создал пользовательские теги Coldfusion, которые предоставили дополнительные функции, и включили те, что были на многих сообщениях с сообщениями, – чтобы быть ясным, тело моих сообщений. Google решил отключить доступ к этой опции публикации FTP. Я воспринял эту новость как предлог для перехода на WordPress. Теперь я должен выяснить, что делать со всеми этими тегами ColdFusion в моих сообщениях.

Проблема :

Я бы не потерял функциональность, предоставляемую пользовательскими тегами, которые я встроил в свои сообщения. Мой основной вопрос – это лучший способ добавить функциональность к сайту PHP с помощью пользовательских тегов? Мой первоначальный план состоял в том, чтобы попытаться разобрать страницу, чтобы найти теги, а затем написать класс PHP, чтобы в основном имитировать функциональность, предоставленную файлом Coldfusion. Я мало что знаю о PHP, поэтому я не уверен, какие инструменты или библиотеки существуют, чтобы облегчить это. Или если это просто глупая идея. Это не хорошо сформированные XML-файлы, поэтому мне нужно что-то достаточно надежное.

Пример :

Я использую следующий тег:

<cf_taglinks>Tag1, Tag2, Tag3</cf_taglinks> 

для генерации серии элементов <a ..> <a..>Tag#</a> которые ссылаются на технари или что бы я ни решила (таким образом, преимущество иметь собственный тег – очень легко изменить поведение). Решение этой проблемы действительно сможет обрабатывать любую ссылку, поэтому, если у меня есть <stackoverflowLink post="3944091"/> , я должен иметь возможность перевести это в

 <a href="http://stackoverflow.com/posts/3944091/" target="_blank">Stackoverflow Question: 3944091</a> 

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

 <ct:upper type="all"> This text is transformed by the custom tag.<br /> Using the default example all the characters should be made into uppercase characters.<br /> Try changing the type attribute to 'ucwords' or 'ucfirst'.<br /> <br /> <ct:lower> <strong>ct:lower</strong><br /> THIS IS LOWERCASE TEXT TRANSFORMED BY THE ct:lower CUSTOM TAG even though it's inside the ct:upper tag.<br /> <BR /> </ct:lower> </ct:upper> 

Я настоятельно рекомендую загрузить zip-файл и посмотреть примеры, которые он содержит.