***************************************** * MASTER LIST OF TEMPLATE VARIABLES * * for * *. FRIENDICA THEMES * ***************************************** Friendica uses Smarty3 for all of its templates. However it does NOT use "assign" for the template variables! Normally in Smarty3 you would "assign" variables something like this within a template: {assign var="name" value="Bob"} (or shorthand: {assign "name" "Bob"} ) or it is done as a class object like this: $smarty->assign('name', 'Bob'); Friendica, however, assigns template variables as regular PHP variables. First within some function it gets the relevante template: $tpl = Renderer::getMarkupTemplate('name_of_template.tpl'); Then it does sort of a find & replace on all the variable names as key => value pairs of an array: $return = Renderer::replaceMacros( $tpl, [ '$name' => 'Bob', '$l10n' => [ 'pagetitle' => $l10n->t('Page Title'), ], '$things' => $things, ]); Then that PHP variable name that is the key is what you put in the .tpl file:

Name: {{$name}}

If the value is an array you can put it in the .tpl file using dot notation:

{{$l10n.pagetitle}}

And if the value is an object to iterate through: {{if $things}}