如何在MovableType 5模板中嵌入/执行php代码?
发布于 2010-10-12 20:49:49
请注意,以下内容仅适用于使用静态发布的博客。
您在MT模板中编写的任何内容(模板标记本身除外)都将发布到它创建的静态文件中。在此基础上,我们可以确定,如果您的模板包含<?php echo 'Hello World'; ?>,则确切的代码将放置在最终用户访问的最终文件中。如果文件扩展名是PHP,或者您的服务器已配置为允许文件执行PHP (例如使用.html),则当用户访问页面时,将对.php代码进行评估,并将结果作为页面的一部分返回给用户。
例外情况是使用动态响应模板时,例如“搜索结果”或“评论响应”。这些模板是直接从Perl脚本(分别是mt-search.cgi和mt-comment.cgi )呈现的,因此根本不会解释.cgi。Pekka答案中的链接显示了一个可以用来解决这个问题的方法(为了方便起见,使用Using PHP inside Movable Type's Search Template)。
此外,由于MT静态地构建文件,并在创建文件时处理模板标记,因此您可以将模板标记与PHP代码混合,以动态更改PHP代码的结尾。
<?php
$blogURL = '<$mt:BlogURL$>';
$entryTitles = array();
<mt:Entries lastn="4">
$entryTitles[] = '<$mt:EntryTitle encode_php="q"$>';
</mt:Entries>
?>
May output the following PHP code:
<?php
$blogURL = 'http://example.com/';
$entryTitles = array();
$entryTitles[] = 'Title 1';
$entryTitles[] = 'Title 2';
$entryTitles[] = 'Title 3';
$entryTitles[] = 'Title 4';
?>我建议您在尝试混合使用MT和encode_php代码库之前,先阅读PHP标记修饰符。
发布于 2010-10-11 16:16:29
这里有一种方法:
Using PHP inside Movable Type's Search Template
https://stackoverflow.com/questions/3904471
复制相似问题