Templates

Templates are used to embed details of files in to a post or page. They are can also be used to create file lists. WP-Filebase includes a powerful template engine supporting IF-THEN-ELSE blocks. Templates are blocks of HTML code containing variables. There are three different types of templates:

  • File Templates are used to embed files
  • Category Templates are used for categories in file lists if file grouping is enabled
  • List Template consists of a Header, Footer and a File and Category Template.

Special templates that cannot be deleted:

  • Default: Default templates are used when there is no template specified, for example a shortcode without the tpl parameter. Its also used for file search results and attachments. Note that the default templates appears in the template management list as well as in settings. When resetting settings, the default template code is restored!
  • Filebrowser: template used for AJAX treeview
  • Filepage: This template is used to build the File Details Page (WP-Filebase Pro)

You can even place shortcodes into templates to build advanced file lists. Be careful: don’t nest a shortcode using the template itself!

Syntax

A template is a piece of HTML code containing “variables” that will be replaced with file specific properties. A variable is wrapped by two % characters, i.e. %file_name%. A very simple template:

<p>
<img src="%file_icon_url%" style="height:20px; vertical-align:middle;" />
<a href="%file_url%" title="Download %file_display_name%">%file_display_name%</a> (%file_size%)
</p>

This would output a HTML paragraph containing a small icon/thumbnail followed by the name and size of the file.

To omit the <img> tag for files without a thumbnail, an IF-block is added:

<p>
<!-- IF %file_thumbnail% -->
<img src="%file_icon_url%" style="height:20px; vertical-align:middle;" />
<!-- ENDIF -->
<a href="%file_url%" title="Download %file_display_name%">%file_display_name%</a> (%file_size%)
</p>

 

 

Inside an IF expression you can use the Boolean operators OR and AND. The following sample inserts a link to the associated post/page of the file if: 1. the file has an associated post and 2. the currently viewed post/page is not the associated one. So the link won’t appear in templates that are generated in the post/page of the file:

<!-- IF %file_post_id% AND %post_id% != %file_post_id% -->
<a href="%file_post_url%">%'View post'%</a>
<!-- ENDIF -->

Templates are internally parsed to PHP code, so all PHP and WordPress functions can be used in expression!

Template Variables

The following template variables are available for file and category templates:

NameDescriptionTypeExample Value
%uid%A unique ID number to identify elements within a templateNumber3
NameDescriptionTypeExample Value

Here’s a list of template variables for files, which can be selected from the Drop-Down when editing a template. Custom fields (see Settings) appear at the end of the Drop-Down box.

NameDescriptionTypeExample Value
%file_name%The name of the file (with extension)numberexample.pdf
%file_size%ID of the current post or pageFormatted size1.63 MiB
%file_date%Formatted date of the file (change in Settings)Formatted date time4. May 2011
%file_thumbnail%The name of the thumbnail fileStringexample-100×120.png
%file_display_name%The Title of the fileStringExample Document
%file_description%File DescriptionString
%file_version%File VersionString2.1
%file_author%File AuthorString
%file_languages%A comma-separated list of all supported languagesStringsEnglish, German
%file_platforms%A common-separated list of supported platformsStringsWindows 7, Ubuntu
%file_requirements%A commo-sperated list of requirementsStringsApache, MySQL
%file_license%File LicenseStringCreative Commons
Number-1
String (user role)Subscriber
%file_user_can_access%Boolean (0/1)0
%file_offline%Boolean (0/1)1
%file_direct_linking%Boolean (0/1)
%file_category%String
%file_post_idnumber

 

If ID3 detection is enabled, there are more variables available for each file. ID3 variables begin with the prefix %file_info/ . Example to get artist of an mp3 file:

%file_info/tags/id3v2/artist%

These variable can also be used in IF expressions. You’ll find a list of all available variables below the file form when editing a file.

Special template variables

%dl_countdown% Used in File Details Page template to display the countdown

%search_form% Used in list headers and footers to display a search form

%sort_link:file_sizeWill be replaced by a URL to sort the current file list. Example:
<a href="%sort_link:file_name%">Sort by Name</a>

%print_script:{script-name}% Used in list headers to include JavaScripts like the jQuery extension dataTables.

%print_style:{style_name}% Used in list headers to include CSS files.

Useful Expressions

Only display ads (or anything else) to non-registered users:
<!-- IF get_current_user_id() != 0 --> ..ad code.. <!-- ENDIF -->

PHP Code in Templates

WP-Filebase Pro supports PHP codeblocks inside the Template code. To use a template variable in PHP, use the following syntax (instead of %file_display_name%):
<?php echo $file->get_tpl_var('file_display_name'); ?>

43 thoughts on “Templates

  1. Tim says:
    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)

    I have 2 categories in which the files are uploaded into. Is there a way to add a new column that displays which of the 2 categories the file is under?

  2. StephenG says:
    VA:F [1.9.22_1171]
    Rating: 0 (from 0 votes)

    I have a question about embeded templates and downloads. When I click on WP-filebase>embeded templates I see the three selections I can make (file list, category, file) When I drill into a selection I see several pre-made templates (file browser, 3-col-row, etc…) I’m not understanding how to make a particular template active. For example if I make a template and call it template new it appears in the list with the rest and has a check box, but I dont see how I make that active for my category list

Leave a Reply

Your email address will not be published. Required fields are marked *