在PHP中解析CFML标签

背景:

在过去的5年中,我一直在Blogger平台上运行a site.我曾使用将站点托管在自己的服务器上的选项,通过FTP发布.我的服务器正在运行ColdFusion,因此我决定利用它.我创建了Coldfusion自定义标签,该标签提供了其他功能,并且在许多may帖子中都包含了这些标签-显然,这些帖子的正文. Google决定关闭对该FTP发布选项的访问.我以那个消息为借口转向了wordpress.现在,我必须弄清楚如何处理我帖子中的所有ColdFusion标签.

问题:

我不想失去嵌入到帖子中的自定义标签所提供的功能.我的主要问题是使用自定义标签PHP网站添加功能的最佳方法是什么?我最初的计划是尝试解析页面以找到标签,然后编写一个PHP类来基本上模仿Coldfusion文件提供的功能.我对PHP不太了解,所以我不确定有哪些工具或库可以促进这一工作.或者,如果这只是一个愚蠢的想法.这些不是格式正确的XML文件,因此我需要一些功能强大的文件.

例:

我使用以下标签

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

生成一系列的< a ..> Tag#< / a>链接到technorati或我决定的内容的元素(因此拥有自定义标签的好处-非常容易更改行为).该问题的解决方案实际上可以处理任何链接,因此如果我有< stackoverflowLink post =“ 3944091” />标签,我应该可以将其翻译成

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

解决方法:

现在,我倾向于Custom Tagsmentioned in this post作为答案.最好的功能之一是支持埋藏或嵌套标签,例如下面的代码块:

<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文件并浏览其中包含的示例.

相关文章

我们有时候在定制WORDPRESS主题的时候,由于菜单样式的要求我...
很多朋友在做wordpree主题制作的时候会经常遇到一个问题,那...
wordpress后台的模块很多,但并不是每个都经常用到。介绍几段...
从WordPress4.2版本开始,如果我们在MYSQL5.1版本数据中导出...
很多网友会遇到这样一个问题,就是WordPress网站上传图片、附...
对于经常要在文章中出现代码的IT相关博客,安装一个代码高亮...