2009-04-05 18 views
8

Tumblr utilizza un semplice linguaggio di template per la sua temi:Quale linguaggio template utilizza Tumblr?

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

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

Start.io inoltre usa lo stesso formato:

<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> 

è IT realizzati su misura, oppure lo fa usare un linguaggio modello esistente?

Se è su misura, puoi suggerire alcuni riferimenti per creare qualcosa di simile?

risposta

2

Hmm ... Penso che sia personalizzato, dal momento che non è menzionato in the tumblr docs, che suppongo sarebbe se usassero un linguaggio modello esistente.

JSON Template sembra essere un linguaggio modello abbastanza simile, però. Prova :)

+0

+1 per JSON Template –

3

Questi motori di template appaiono su misura, anche se sembrano estremamente simili a Smarty.

+1

Penso che il linguaggio template di Tumbler sia abbastanza diverso da Smarty perché utilizza blocchi anziché istruzioni if ​​/ else e non ha quasi nessuna logica di programmazione (a differenza di Smarty). Penso che il linguaggio template assomigli più a una versione semplificata del linguaggio template di [ExpressionEngine] (http://expressionengine.com/user_guide/overview/tags.html) e [CodeIgniter] (http://codeigniter.com/user_guide /libraries/parser.html), che è anche su misura e abbastanza limitato. – Blaise

1

Ho recentemente pubblicato un motore di template PHP che fa esattamente questo. Scarica da: https://www.ohloh.net/p/pheme

+0

Penso che questo sia l'idea di un linguaggio di template sul lato client. Non penso che Tumblr voglia eseguire codice generato dagli utenti sui loro server. – Deviljho

1

Tumblr ha sicuramente un parser personalizzato. Controlla my answer on Quora per un paio di esempi sul motivo per cui questo è.

Mentre JSONTemplate e Smarty utilizzano la stessa sintassi di parentesi graffa per le variabili, non sono compatibili. Inoltre, si può dire che Start.io utilizza un parser diverso in quanto consente di custom conditionals. Il formato condizionale Start.io è {if:Var} o {if:Var < Num}. In Tumblr questo sarebbe scritto come un singolo blocco di elementi se la variabile è ufficiale ({block:Var}) altrimenti, se la variabile è specificata dall'utente in un tag <meta>, userebbe la sintassi {block:IfUserVar}.

Problemi correlati