2009-04-05 5 views
8

Tumblrそれがテーマだために、非常に単純なテンプレート言語を使用しています。Tumblrではどのテンプレート言語を使用していますか?

{block:Text} 
    <li class="post text"> 
     {block:Title} 
      <h3><a href="{Permalink}">{Title}</a></h3> 
     {/block:Title} 

     {Body} 
    </li> 
{/block:Text} 

Start.ioも同じ形式使用しています:

<html> 
    <head> 
    <title>{Name} @ start.io</title> 
    </head> 
    <body> 
    {Groups} 
     <h1>{Name}</h1> 
     <ul> 
     {Links} 
     <li><a href="{Permalink}">{Title}</a></li> 
     {/Links} 
     </ul> 
    {/Groups} 
    </body> 
</html> 

をそれがカスタムメイドなのですか、それは、既存のテンプレート言語を使用していますか?

それがカスタムメイドだ場合は、同様のものを作成するためのいくつかの参照を提案することができますか?

答えて

2

は、うーん...私は私はそれは、彼らが既存のテンプレート言語を使用するならばと仮定した、in the tumblr docsに言及されていないので、それが習慣、作られていると思います。

JSON Templateはいえ、かなり類似したテンプレート言語のようです。それを試してみてください:)

+0

+1 JSONテンプレート –

3

これらのテンプレートエンジン、彼らはSmartyに非常に似ていますが、カスタムメイド表示されます。

+1

Tumblerのテンプレート言語は、if/else文の代わりにブロックを使用し、Smartyとは異なりプログラミングロジックがほとんどないため、Smartyとはかなり異なると思います。テンプレート言語は、[ExpressionEngine](http://expressionengine.com/user_guide/overview/tags.html)と[CodeIgniter](http://codeigniter.com/user_guide)のテンプレート言語の簡略化されたバージョンのように見えると思います/libraries/parser.html)、カスタムメイドであり、非常に限定されています。 – Blaise

1

私は最近、正確にそれを行うPHPテンプレートエンジンを公開しました。 から入手:https://www.ohloh.net/p/pheme

+0

私はこれがクライアント側のテンプレート言語のアイデアを打ち負かすと思います。私はTumblrが自分のサーバでユーザ生成のコードを実行したいとは思わない。 – Deviljho

1

Tumblrにはカスタムパーサーがあります。これがなぜであるかの例のカップルのためにmy answer on Quoraを点検しなさい。

JSONTemplateとSmartyの変数に同じ{}括弧構文を使用する一方で、彼らは互換性がありません。さらに、Start.ioはcustom conditionalsと異なるパーサーを使用していることがわかります。 Start.ioの条件付きフォーマットは{if:Var}または{if:Var < Num}です。変数は、変数が<meta>タグに、ユーザによって指定されている場合、それは{block:IfUserVar}構文を使用し、公式({block:Var})それ以外の場合はTumblrのでは、これは、単一の素子ブロックとして書き込まれます。

関連する問題