The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Template::Plugin::Meta::Interpolate - Allow evaluation of META parameters

SYNOPSIS

  [% USE Meta::Interpolate %]
  [% META title =  '-"${user.username} at Our Site"'  %]

Show username in title

  [% META title='-"404 - " _ loc("File not found")' %]

The value is enclosed in ''. The initial - tells us to interpolate the rest as if it said:

  [% title = "404 - " _ loc("File not found") %]

The _ is a concatenation operator. And "loc" in Para::Frame::L10N is the translation function.

DESCRIPTION

It is common to wrap Template Toolkit templates in a base template, then use the meta function to set a page tittle.

  [% META title = 'Book List' %]

Unfortunately the tittle can only contain static text. This plugin allow you to also use variables and expressions.

If value starts with a '-', the rest of value will be evaluated as a TT expression. (No expressions are normally allowed in META.)

If value starts with a '~', the rest of value will be evaluated as a TT string with variable interpolation. It's the same as for '-' but with the extra "" around the value.

It does not sets the variable if it's already true. That enables you to set it in another way.

Example

  [* META otitle = '-otitle=["[_1]s administration pages", site.name]' *]

The normal use is to set the variable with the result of the template output. But to give complex values to a variable, like a list, you can do it as above.

In wrapper

In your wrapper set your title like this.

  <title>[% template.title or "My site name!" %]</title>

AUTHOR

    Jonas Liljegren
    jonas@paranormal.se

COPYRIGHT

    Copyright (C) 2004-2009 Jonas Liljegren.  All Rights Reserved.

    This module is free software; you can redistribute it and/or
    modify it under the same terms as Perl itself.

CPAN maintainer

    Runar Buvik
    CPAN ID: RUNARB
    runarb@gmail.com
    http://www.runarb.com

Git

https://github.com/runarbu/Template-Plugin-Meta-Interpolate

SEE ALSO

Dynamic META tags in Template Toolkit