Templating:Variables

Från Vendre Help
Hoppa till: navigering, sök

See also Templating:Emails.

Innehåll

Variables

Templates get variables containing all necessary data passed from the back end. This is a complete reference of all available variables.

Types

string

URL

HTML

The raw filter should be applied when displaying these variables.

integer

decimal

boolean

list

dictionary

manufacturer

Key Type Description
id integer
name string
image URL
address string
postcode string
postal_address string
visitational_address string
country string
telephone1 string
telephone2 string
fax string
email_address string
orgno string
vat string
note string
postgiro string
plusgiro string
bankgiro string
contact string
payment_conditions string
customers_no string
video_1 string
video_2 string
extra1 string
extra2 string
extra3 string
href URL
url URL
description string
meta_title string
meta_keywords string
meta_description string
extra4 string
extra5 string
images list of URLs
pdfs list
Key Type Description
path URL PDF link.
name string PDF label.

pagination

Key Type Description
page integer The current page.
prev integer The previous page.
next integer The next page.
pages list of integers The pages in the current set.
set_prev integer The last page in the previous set of pages.
set_next integer The first page in the next set of pages.
from_row integer The first row displayed.
to_row integer The last row displayed.
row_count integer The number of rows paginated.

product

Key Type Description
id string Products internal ID
delivery_time string
description HTML
description_short HTML
href_buy URL
href URL
image URL
images dictionary Additional product images.
Key Type Description
href URL Image thumbnail link.
image URL Image path.
description string Image description.
is_package boolean True when the product has packaged products.
has_attributes boolean True when the product has any attributes.
manufacturer_image URL
manufacturer_name string
model string
name string
price_discount_percentage HTML
price HTML
price_raw HTML
price_recommended HTML
price_recommended_raw HTML
price_special HTML
price_special_raw HTML
price_special_expires date
quantity integer
seo_link string
tax decimal Product tax rate.
tax_class_id integer
type string
parent_id integer The products parent
child_count integer Counts amount of child products
rating decimal Average review rating in increments of 0.5.
price_per_unit decimal Product price per unit
unit string Product unit. ex. st/cm/m
price_per_unit_recommended decimal Recommended price in unit
price_per_unit_special decimal Special price in unit
price_klarna_account decimal Klarna account price
tags list of tags
extra1 HTML Custom product field.
extra2 HTML Custom product field.
extra3 HTML Custom product field.
extra4 HTML Custom product field.
extra5 HTML Custom product field.

tag

Key Type Description
id integer ID.
parent_id integer Parent ID, 0 when there is no parent tag.
name string Name.
description HTML Description.
image URL Image URL.
meta_title HTML Meta title.
meta_keywords HTML Meta keywords.
meta_description HTML Meta description.
children list of tags Child tags.
used boolean Indicates if the tag is used by any product in a category listing.

custom field

Key Type Description
fields_id integer ID.
require_in_checkout boolean Is the field required in the checkout?
type string What was entered in the administration.
name string Field label.
value string Entered value (not always available).

discount

Key Type Description
id integer The unique ID generated for the discount.
name string The name selected for the discount.

Depending on the type field, there are additional fields:

Key Type Description
type string "bogo", for buy one get one free discounts.
required integer If at least required products are in the shopping cart,
free integer free of the products will have their prices set to 0 when added to the shopping cart.
products list of products Products which count for this discount.
manufacturers list of manufacturers Manufacturers for which products count for this discount.
categories list of categories Categories for which products count for this discount.
cart_matches integer Total count of products in the shopping cart that matches the products, manufacturers, or categories.
current_matches integer Set to 1 on the product page if the current product matches one of the products, manufacturers, or categories; otherwise 0.
Key Type Description
type string "total", for discounts based on the total cost of the shopping cart.
product product The product to which this discount is applied.
price decimal The new price for the selected product.
total_required decimal The required cost of the shopping cart, not including tax.
total_current decimal The current cost of the shopping cart, not including tax.
current_matches integer Set to 1 on the product page for the selected product, otherwise 0.

partner

Key Type Description
partners_id integer ID.
company_name string Official company name.
working_title string Used name.
cin string Registered company number.
address string Address.
zip string Zip code.
city string City.
countries_id integer Country ID.
phone string Phone number.
fax string Fax number.
email string Email address.
comments string Internal comments.
status boolean Enabled or disabled.
pickup boolean Pickup of products.
reseller boolean Is a reseller.
display boolean Is displayed.
preferred boolean The distance in distance calculations will be decreased by a configurable amount, see Inställningar - Leverans/Packning.
description string Description.
contacts list of dictionaries
Key Type Description
first_name string Name.
last_name string Name.
email string Email address.
images list of strings Images.
open_hours dictionary of days to dictionaries
Key Type Description
opens integer Opening hour.
closes integer Closing hour.

date

Method Type Description
(treat object as string) string A string representation of the date, most of the time this is date_long(), otherwise date_short().
timestamp() integer Returns the timestamp represented by this date.
date_short() string A string representation of the date, formatted using the language string DATE_FORMAT.
date_long() string A string representation of the date, formatted using the language string DATE_FORMAT_LONG.

Globals

Globals are accessible anywhere in the templates, including macros.

Variable name Type Description Format
template string Path to active template directory N/A
current_page string Contains URL after domain name and before ?, for example storedomain.com/p/digital-fotoram/nextbase-photomil-8wi-fi-fotoram.html?vat_disp=0 returns /p/digital-fotoram/nextbase-photomil-8wi-fi-fotoram.html N/A
current_script string Contains filename of current page index.php
request dictionary A dictionary of recieved GET and POST data
Key Type Description
get dictionary Data received from the GET query string
post dictionary Received POST data
current_customer_id integer Returns customer ID if customer is logged in, else None N/A
customer dictionary Contains information about the logged in customer, or null.
Key Type Description
id integer
email string
personnummer string
first_name string
last_name string
company string
telephone string
mobile string
country_id integer
postcode string
street_address string
custom list of custom field Custom fields.
user_agent string The client's user agent string. N/A
meta dictionary Header meta information for current page.
Key Type Description
title HTML Page title.
keywords string Page meta keywords.
description HTML Page meta description.
language string Page language code.
generator string Startabutik E-handel.
canonical URL Canonical URL for current page. Not always available.
session dictionary Configurable session variables.
Key Type Description
market_id integer ID of current market.
currency string Code of selected currency.
country_id integer ID of selected country.
language string Code of selected language.
language_id integer ID of selected language.
vat boolean Display prices with or without VAT. .
settings dictionary Contains some of the settings defined in the administration
Key Type Description
ACCOUNT_COMPANY, ACCOUNT_DOB, ACCOUNT_GENDER, ACCOUNT_PERSONNUMMER, ACCOUNT_STATE, ACCOUNT_SUBURB boolean Account fields can be enabled and disabled
API_ID_FACEBOOK string General APP id for Facebook
API_ID_GOOGLE_VERIFICATION string Google verification
CHARSET string Charset of page.
CREATE_ACCOUNT_LAYOUT integer Internal
DOWNLOAD_ENABLED boolean Is the download module enabled
ENTRY_CITY_MIN_LENGTH, ENTRY_DOB_MIN_LENGTH, ENTRY_EMAIL_ADDRESS_MIN_LENGTH, ENTRY_FIRST_NAME_MIN_LENGTH, ENTRY_LAST_NAME_MIN_LENGTH, ENTRY_PASSWORD_MIN_LENGTH, ENTRY_POSTCODE_MIN_LENGTH, ENTRY_STATE_MIN_LENGTH, ENTRY_STREET_ADDRESS_MIN_LENGTH, ENTRY_TELEPHONE_MIN_LENGTH integer Used in form validation
ENTRY_PASSWORD_IN_REGISTRATION boolean Is the user allowed to specify a password when registering
FORMS_USE_CAPTCHA boolean Is captcha used for forms
FACEBOOK_PROFILE_URL string URL in format http://url.se/subfolder/
GOOGLEPLUS_PROFILE_URL string URL in format http://url.se/subfolder/
HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT integer Width and height of heading images
MAX_ADDRESS_BOOK_ENTRIES integer Maximum entries in the address book
PREV_NEXT_BAR_LOCATION integer Internal
SMALL_IMAGE_WIDTH integer Width of small thumbnails in pixels
SMALL_IMAGE_HEIGHT integer Height of small thumbnails in pixels
STATISTICS_GOOGLE_ANALYTICS string Google analytics tracking code, if specified
SHOP_HEADER_TEXT string Alt text for logo
SHOP_LOGO string Shop logo in /images/
STORE_NAME string
POPUP_IMAGE_WIDTH, POPUP_IMAGE_HEIGHT integer
PRODUCT_PAGE_DESIGN integer Internal
YOUTUBE_PROFILE_URL string URL in format http://url.se/subfolder/
TWITTER_PROFILE_URL string URL in format http://url.se/subfolder/
shoppingcart_amount string Amount of products in shopping cart N/A
shoppingcart_total string Total sum of the content in shopping cart N/A

Boxes

Boxes are variables used for the side boxes. They are all prefixed with boxes.

Category menu

Variable name Type Description Format
boxes.categories.tree list of dictionaries Contains a tree of displayed categories in menu
Key Type Description
id integer Id of category
name string Name of category in current language
image string Path to category image if such exists
href string Link to category's product listing page
child_count integer Number of open child categories
children list of dictionaries List of visible child categories. See boxes.categories.tree for format
description string
open boolean Returns true if the category (or one of its children) is the currently selected one
selected boolean Returns true if the category is the currently selected one

Category full menu

Variable name Type Description Format
boxes.categories_full.tree list of dictionaries Contains a full tree of all available categories in menu
Key Type Description
id integer Id of category
name string Name of category in current language
image string Path to category image if such exists
href string Link to category's product listing page
child_count integer Number of open child categories
children list of dictionaries List of visible child categories. See boxes.categories.tree for format
description string
open boolean Returns true if the category (or one of its children) is the currently selected one
selected boolean Returns true if the category is the currently selected one

Best selling products

Lists the most sold products.

Variable name Type Description
boxes.bestsellers.list list of product The most sold products, the most sold first.

Manufacturer select

Variable name Type Description Format
boxes.manufacturers.list list of dictionaries Lists all available manufacturers
Key Type Description
id integer Manufacturer ID.
name string Name of manufacturer
href string Link to manufacturer page
link URL Full link to manufacturer page
selected boolean True if the manufacturer_id GET variable is equal to the ID of this manufacturer.

Country selection

Variable name Type Description Format
boxes.countries.list list of dictionaries Lists all available countries
Key Type Description
id integer Country ID.
name string Name of country.
href string Link to current page with country added as a request parameter.
image URL A flag for the country.

Market selection

Variable name Type Description Format
boxes.markets.list list of dictionaries Lists all available markets
Key Type Description
id integer Market ID.
name string Name of market.
href string Link to current page with market_id added as a request parameter.
domain_name_href string Link to current page at the market domain.
image URL An image for the market.

Search box

Variable name Type Description Format
boxes.search.advanced_href string URL to advanced search page N/A
boxes.search.advanced_result_href string Action URL for search form N/A

Information page list

Variable name Type Description Format
boxes.information_pages.list list of dictionaries Lists all active information pages
Key Type Description
id integer ID.
name string Name of information page
href string Link to information page
active boolean Is user currently on this page?
target boolean True if information page expects the attribute target="_blank"
boxes.information_pages.tree dictionaries A tree of *all* information pages.

This field consists of an entry with the same format as the entries in the information page list, with the addition of two fields:

Key Type Description
open boolean True if one of the children is active or open.
children list of dictionaries A list of child galleries, each with the same format as this entry.

Language list

Variable name Type Description Format
boxes.languages.list list of dictionaries Lists all languages
Key Type Description
name string Language name
href string Link to page that sets language to this one
image string Image (flag) for language if available

Login box

Variable name Type Description Format
boxes.login.form_href string Action link for login form N/A
boxes.login.password_forgotten_href string Link to retrieve forgotten password page N/A
boxes.login.account_history_href string Link to current customer's account history page. Contains orders and such N/A
boxes.login.account_href string Link to current customer's account page N/A
boxes.login.account_password_href string Unknown N/A
boxes.login.logoff_href string Link to log off current customer N/A
boxes.login.customer_first_name string Current customer's first name N/A
boxes.login.customer_last_name string Current customer's last name N/A

New products list

Lists the most recently added products.

Variable name Type Description
boxes.products_new.list list of product The most recently added products, the most recent first.

News list

Variable name Type Description Format
boxes.news.list list of dictionaries Lists recent news. Limit set in administration
Key Type Description
image URL Assigned image
name string News name
href string Link to news page
date date Date posted.
summary string News summary

Hierarchical news list

Variable name Type Description Format
boxes.news_archive.year_min integer Year with first news post. N/A
boxes.news_archive.year_max integer Year with last news post. N/A
boxes.news_archive.month_min integer Month of first news post. N/A
boxes.news_archive.month_max integer Month of last news post. N/A
boxes.news_archive.news list of dictionaries News grouped first by year and then by month, the final array keys have this format:
Key Type Description
image URL Assigned image
title string News name
href string Link to news page
date date Date posted.
short string News summary

Review

Variable name Type Description Format
boxes.reviews.write_review_href string Link to write review page. Only set if customer is viewing a product page N/A
boxes.reviews.product dictionary Product and review data
Key Type Description
product_name string Name of product
product_image string Link to product image
review_href string Link to full review
review_rating string Rating
review_text string Text of review

Shopping cart

Variable name Type Description Format
boxes.shopping_cart.list list of dictionaries List of products in shopping cart
Key Type Description
id integer ID of product
model string Model number for product
name string Name of product
image string Link to image of product
quantity string Number of this product in shopping cart
unit
type string
price string Price per product before discounts represented as a string with currency symbol
final_price string Price per product after discounts represented as a string with currency symbol
total_price string Total price for all products of this kind before discounts represented as a string with currency symbol
total_final_price string Total price for all products of this kind after discounts represented as a string with currency symbol
href string Link to product's page
new boolean True if product was just added to the shopping cart
discounts list of discounts
boxes.shopping_cart.total string Total value of contents of shopping cart represented as a string with currency symbol N/A
boxes.shopping_cart.total_items integer Sum of product quantities. N/A

Random special offer

Contains a random special offer.

Variable name Type Description Format
boxes.special_offers.product dictionary True if prices are displayed including VAT, else false.
Key Type Description
name string Name of product
href string Link to product page
image string Link to product image
price string Product standard price represented with currency symbol
special_price string Product price after discounts represented with currency symbol

VAT select box

Variable name Type Description Format
boxes.vat_select.display_with_vat boolean True if prices are displayed including VAT, else false. N/A
boxes.vat_select.with_href string URL to page where VAT display is set to true. N/A
boxes.vat_select.without_href string URL to page where VAT display is set to false. N/A

Custom boxes

Variable name Type Description Format
boxes.custom.boxes dictionary of lists Dictionary of boxes, indexed by the box name.
Key Type Description
type integer Type of box.
class string CSS classes
extra_field_1 string
extra_field_2 string
extra_field_3 string

If type is 0:

Key Type Description
title string Box title.
product product Product displayed.

If type is 1:

Key Type Description
text HTML Box contents.

If type is 2:

Key Type Description
image URL Box image.

Modules

last_viewed_products

Variable name Type Description
modules.last_viewed_products.register HTML Contains either the empty string, or a script element with code for updating the cookie containing the list of the last viewed products. Should be included on product pages.
modules.last_viewed_products.products list of products The products the customer last viewed, the most recently viewed product first, the current product is excluded. Contains up to 30 products.

product_parent

Variable name Type Description Format
modules.product_parent.name string Parent product name. N/A
modules.product_parent.description string Parent product description. N/A
modules.product_parent.image string Parent product image. N/A
modules.product_parent.images string Parent product additional images. N/A

associated_products.html

Variable name Type Description Format
modules.associated_products.products list of products Associated products. N/A

random_products.html

Variable name Type Description Format
modules.random_products.products list of products Random products. N/A

product_attributes.html

Variable name Type Description Format
modules.product_attributes.attributes list of dictionaries Product attributes.
Key Type Description
value string Attribute value.
id integer Attribute index.
name string Attribute name.
type integer Attribute type.
selected integer Selected attribute.
options list of index to value mappings Attribute options.

product_specifications.html

Variable name Type Description Format
modules.product_specifications.grouped list of categories Specifications with multiple values per specification grouped into a values variable.
modules.product_specifications.hierarchy list of categories The hierarchy of specifications used for this product.
modules.product_specifications.specifications list of dictionaries Product specifications.
Key Type Description
name string Specification name.
value string Specification value.

products_in_package.html

Variable name Type Description Format
modules.products_in_package.products list of products Products in product package. N/A

products_reviews.html

Variable name Type Description Format
modules.products_reviews.captcha_href URL Link to the captcha image. N/A
modules.products_reviews.error string Error message. N/A
modules.products_reviews.customer dictionary Customer information.
Key Type Description
firstname string First name.
lastname string Last name.
modules.products_reviews.reviews list of dictionaries Product reviews.
Key Type Description
rating integer Review rating, 1-5.
author string Review author.
date string Review date.
text HTML Review text.

products_variants.html

Variable name Type Description Format
modules.products_variants.category integer Category index. N/A
modules.products_variants.variants list of dictionaries Variants.
Key Type Description
name string Variant name
selected integer Selected variant.
options list of integer to value mappings Variants.
modules.products_variants.products list of products Variant products. N/A
modules.products_variants.combinations list of lists of integers Available combinations of options. N/A
modules.products_variants.combination list of integers Currently selected combination. N/A
modules.products_variants.combined list of dictionaries Variant choices associated with products.
Key Type Description
combination dictionary Keys are variant types and values are variant choices.
product integer Product ID, or null.

tell_a_friend.html

Variable name Type Description Format
modules.tell_a_friend.form_action URL Form handler. N/A

Page specific

Most variables are not available on a global scale. They are page specific variables. They are always prefixed with the same name as the included template. So contact.html variables are prefixed with contact.

Account edit page (account_edit.html)

Variable name Type Description Format
account_edit.form_action URL A link to the page which handles the form N/A
account_edit.back_href URL A link back to the account page N/A
account_edit.account dictionary Account data
Key Type Description
firstname string Account first name
lastname string Account last name
personnummer string Account personnummer
dob string Account date of birth
email_address string Account email address
telephone string Account telephone number
mobile string Account mobile telephone number
fax string Account fax number
gender string Account gender ('m' or 'f')
custom list of custom field Custom fields.

Account history page (account_history.html)

Variable name Type Description Format
account_history.account_href URL A link back to the account page N/A
account_history.pagination pagination Pagination info N/A
account_history.page_href_format URL Pagination link format N/A
account_history.order_history list of dictionaries Order history
Key Type Description
id integer Order ID
status string Order status
date string Order date
type string Order type
name string Order delivery name
product_count integer Product count
total string Order total
href URL A link to the description of the order

Order info page (account_history_info.html)

Variable name Type Description Format
account_history_info.back_href URL Link back to the account order history N/A
account_history_info.order dictionary Order info
Key Type Description
id_formatted string Order ID
status string Order status
date date Order date
total string Order total
shipping_method string Order shipping method
payment_method string Order payment method
tax_group_count integer Number of different tax groups
billing_address string Order billing address
delivery_address string Order delivery address
delivery boolean
partner partner
products list of dictionaries Products in order
Key Type Description
qty integer Product quantity
id integer Product ID
name string Product name
model string Product model
tax decimal Product tax
price decimal Product price
final_price decimal Final product price
image string Address to image
href string Link address to product
status string Products status. 0 = inactive, 1 = active
totals list of dictionaries Order parts of total
Key Type Description
title string Total part label
text HTML Total part value
statuses list of dictionaries Order statuses
Key Type Description
name string Status name
date date (short) Status date
comments string Status comments
events list of dictionaries Order delivery events
Key Type Description
date date Event date
location string Event location
description string Event description

Account page (account.html)

Variable name Type Description Format
account.account_history_href URL A link to the account history page N/A
account.account_edit_href URL A link to the edit account page N/A
account.address_book_href URL A link to the address book page N/A
account.account_password_href URL A link to the password change page N/A
account.logoff_href URL A link to the logoff page N/A
account.account_newsletters_href URL A link to the newsletters page N/A
account.account_notifications_href URL A link to the notifications page N/A
account.order_history_enabled boolean Is the order history enabled? N/A
account.order_history list of dictionaries Order history
Key Type Description
href URL A link to the order description page
date date (short) The date the order was placed
id integer Order ID
country string Order delivery name and country
status string Order status
total HTML Order total

Account newsletter subscription page (account_newsletters.html)

Variable name Type Description Format
account_newsletters.form_action URL A link to the page which handles the form N/A
account_newsletters.back_href URL Link back to the account page N/A
account_newsletters.subscribed boolean Is the user subscribed to the newsletter N/A

Account notifications page (account_notifications.html)

Variable name Type Description Format
account_notifications.form_action URL A link to the page which handles the form N/A
account_notifications.account_href URL A link back to the account page N/A
account_notifications.products list of dictionaries The products subscribed to
Key Type Description
id integer Product ID
name string Product name
counter integer List index
account_notifications.global_product_notifications boolean Has the user enabled the global product notification setting N/A

Change account password page (account_password.html)

Variable name Type Description Format
account_password.form_action URL A link to the page which handles the form N/A
account_password.back_href URL Link back to the account page N/A

Address book page (address_book.html)

Variable name Type Description Format
address_book.back_href URL A link back to the account page N/A
address_book.add_href URL A link to a form which adds a new entry to the address book N/A
address_book.entries_count integer Number of entries N/A
address_book.address_label HTML Address label N/A
address_book.addresses list of dictionaries The addresses in the address book
Key Type Description
default boolean Is this the default address book entry
edit_href URL A link to edit the entry
delete_href URL A link to delete the entry
name string Associated name
address HTML The address

Address book modification page (address_book_process.html)

Variable name Type Description Format
address_book_process.editing boolean Is the page in the editing mode? N/A
address_book_process.deleting boolean Is the page in the deletion mode? N/A
address_book_process.edit_form_action URL A link to a page which handles the editing form N/A
address_book_process.delete_form_action URL A link to a page which handles the deletion form N/A
address_book_process.address_label HTML The address N/A
address_book_process.back_href URL A back link N/A
address_book_process.address_book_href URL A link to the address_book N/A
address_book_process.process boolean Is the page in the processing mode? N/A
address_book_process.default_address boolean Is this the default address? N/A
address_book_process.entry dictionary The fields in the current entry
Key Type Description
male boolean Male gender?
firstname string First name
lastname string Last name
company string Company
street_address string Street address
suburb string Suburb
postcode string Post code
city string City
country_list HTML A drop-down list with countries
state_has_zones boolean Does the state have zones?
state string State
states association list A list of zones in the state

Advanced search page (advanced_search.html)

Variable name Type Description Format
advanced_search.form_action string A link to the page which handles the form. N/A
advanced_search.categories association list A list of category names mapped to their indices. dictionary of string to integer mappings.
advanced_search.manufacturers association list A list of manufacturer names mapped to their indices. dictionary of string to integer mappings.

Search results page (advanced_search_results.html)

Variable name Type Description Format
advanced_search_results.results list of products The search results. N/A
advanced_search_results.num_results integer The number of search results. N/A
advanced_search_results.back_href URL A link for returning to the search page. N/A
advanced_search_results.page_limit integer Maximum number of products per page N/A
advanced_search_results.page_limits list of integers List of available page limits. 0 means all products on one page N/A
advanced_search_results.page_index integer Current page number N/A
advanced_search_results.page_count integer Number of pages N/A
advanced_search_results.sort_by string Current sorting key. N/A
advanced_search_results.sort_order string Current sorting order, "ASC" or "DESC". N/A
index.featured_products list of products A list of featured products. N/A

Campaign page (campaign.html)

Variable name Type Description Format
campaign.campaign_name HTML Title of campaign. N/A
campaign.campaign_description HTML Description of campaign. N/A
campaign.campaign_image URL Selected campaign image. N/A
campaign.products list of products Products included in campaign. N/A

Product list (categories_listing.html)

GET variables

Variable name Type Description Format

Available data

Variable name Type Description Format
categories_listing.header dictionary Attributes for the top of the page. It is either a manufacturer or a category
Key Type Description
name string Name of category/manufacturer
alternative_name string An alternative category name. (SEO name.)
image string Image URL for category/manufacturer
images list of URLs The additional images for the category.
text HTML Description of category/manufacturer
alternative_text HTML An alternative category description. (SEO text.)
template string Template name chosen for the category, empty by default.
extra1 string Category extra field.
extra2 string Category extra field.
extra3 string Category extra field.
extra4 string Category extra field.
extra5 string Category extra field.
categories_listing.header dictionary Page header attributes: image, description and title For manufacturer pages the dictionary is a manufacturer, it also has a parent key with another manufacturer dictionary, and a children key with a list of manufacturers.
categories_listing.cpath list of integers List of category IDs, where the last one is the current category, the second last the current category's parent and so on. The first element is the top level category. N/A
categories_listing.product_list list of dictionaries All products for current page Product list
categories_listing.product_count integer Total number of products using current filters N/A

Display variables

Variable name Type Description Format
categories_listing.default_list_style integer By default this layout for the listing is selected N/A
categories_listing.page_limit integer Maximum number of products per page N/A
categories_listing.page_limits list of integers List of available page limits. 0 means all product on one page N/A
categories_listing.page_index integer Current page number N/A
categories_listing.page_count integer Number of pages N/A
categories_listing.sort_by string Current sorting key. N/A
categories_listing.sort_order string Current sorting order, "ASC" or "DESC". N/A
categories_listing.sort_options dictionary Total number of products using current filters Identifier (model, price, etc) as key and name (Model, Price, etc) as values
categories_listing.sort_form_href string Link to the same page. N/A
categories_listing.sort_name_href string Link to the same page when sorting by name. If already sorting by name, this URL inverts the order N/A
categories_listing.sort_model_href string Link to the same page when sorting by model. If already sorting by model, this URL inverts the order N/A
categories_listing.sort_price_href string Link to the same page when sorting by price. If already sorting by price, this URL inverts the order N/A
categories_listing.pagination_uri_format string Format string for pagination. It contains a %d that the pagination macro replaces by page number N/A

Filtering variables

Variable name Type Description Format
categories_listing.tags list of tags Root tags for which at least one subtag is used by one of the listed products. N/A
categories_listing.used_tag_ids list of integers The tags used by at least one product in the filtered set of products. N/A
categories_listing.used_spec_values dictionary of integers to lists of integers The specification values used by the value specifications for the filtered products. N/A
categories_listing.used_spec_texts dictionary of integers to lists of strings The specification values used by the text specifications for the filtered products. N/A
categories_listing.used_manufacturers_ids list of integers The manufacturers used by at least one product in the filtered set of products. N/A
categories_listing.manufacturers list of dictionaries Manufacturers used by products in current category tree.
Key Type Description
id string Manufacturer ID.
name string Manufacturer name.
image URL Manufacturer image.
categories_listing.filters list of dictionaries Configured filters for this category.

For the price filter and value specifications:

Key Type Description
id string "price" or a specification ID.
name string Filter name.
type integer 2
min float Minimum price/value for a product in this category.
max float Maximum price/value for a product in this category.
unit string Currency name or specification unit.

For the manufacturers filter:

Key Type Description
id string "manufacturers"
name string Manufacturer name.
image URL Manufacturer image.
children dictionary Manufacturer collections, same format as this dictionary, excluding children.

For the category, tag, and specification category filters:

Key Type Description
id integer ID.
name string Name.
type integer 0 for categories, 1 for tags, 3 for specification categories.
children dictionary Manufacturer collections, same format as this dictionary, excluding children.
options list of dictionaries Subcategories, keys are id and name.

For the text specification filters:

Key Type Description
id integer ID.
name string Name.
type integer 4
options list of dictionaries Subcategories, the dictionaries only have the key name.

Checkout success (checkout_success.html)

Variable name Type Description Format
checkout_success.update_action URL A link to the page which handles the form N/A
checkout_success.heading string Page heading N/A
checkout_success.text HTML Page content N/A
checkout_success.order_id integer Order ID N/A
checkout_success.survey_questions list of dictionaries Survey questions
Key Type Description
id integer Question ID
question string Question
alternatives list of dictionaries Question alternatives
Key Type Description
type integer Alternative type, 1 for a radio button, an input field otherwise
id integer Alternative ID
answer string Alternative text

Contact us page (contact.html)

Variable name Type Description Format
contact.form_href string URL with target of form for handling user input data N/A
contact.captcha boolean Determines whether Captcha should be used or not N/A
contact.name String Contains customer name if customer is logged in or validation if validation of a field failed N/A
contact.email string Contains customer e-mail if customer is logged in or validation if validation of a field failed N/A
contact.heading string Contains heading text N/A
contact.text string Contains a descriptive text of what the contact us page is. It most certainly contains HTML so the raw filter may be appropriate to use N/A

Cookie usage page (cookie_usage.html)

Variable name Type Description Format
cookie_usage.continue_href string A link to the next page (index.php) N/A

Gallery pages (gallery.html, galleries/)

Variable name Type Description Format
gallery.id integer Gallery ID. N/A
gallery.title string Gallery title. N/A
gallery.description string Gallery description or content. N/A
gallery.date string Last modification date. N/A
gallery.type string Type of gallery. N/A
gallery.upload_data_action URL Form action for uploading. N/A
gallery.upload_data_check boolean True. N/A
gallery.upload_data_type HTML Form field. N/A
gallery.page_title string Edited page title. N/A
gallery.page_description HTML Edited page description. N/A
gallery.meta_title N/A
gallery.meta_description N/A
gallery.meta_keywords N/A
gallery.form_page_description string Edited page description, escaped. N/A
gallery.gallery_owned boolean Set if the gallery is owned by the logged-in user. N/A
gallery.edit_content_link URL Link for editing the gallery. N/A
gallery.remove_content_link URL Link for removing the gallery. N/A
gallery.edit_mode boolean Set when editing, otherwise adding. N/A
gallery.gallery_fields list of dictionaries Gallery fields.
Key Type Description
label string Field label.
output HTML Form field.
gallery.children list of string to dictionary mappings Child galleries indexed by gallery type.
Key Type Description
title string Gallery title.
description HTML Gallery description.
link URL Child gallery link.
date string Last modification date.
gallery.siblings list of string to dictionary mappings Sibling galleries indexed by gallery type. See gallery.children.
gallery.parents list of dictionaries Parent galleries with the bottommost first.
Key Type Description
id integer Gallery ID.
title string Gallery title.

Index page (index.html)

Variable name Type Description Format
index.text HTML Page text N/A
index.header_products products A random selection of products. list of products
index.featured_products products A list of featured products. list of products
index.new_products products A list of recently added products. list of products
index.specials_products products A list of products with special prices. list of products

Kolli page (kolli.html)

Variable name Type Description Format
kolli.heading string Page heading N/A
kolli.text HTML Page text N/A

Login page (create_account.html, login.html, password_forgotten.html)

Variable name Type Description Format
create_account.form_action URL A link to the page which handles the form N/A
create_account.heading string Page heading. N/A
create_account.text string Page text. N/A
create_account.generated_password string A randomly generated password suitable for the new account. N/A
create_account.customers_personnummer string N/A
create_account.countries association list A list of country indices mapped to their names. dictionary of integer to string mappings.
Variable name Type Description Format
login.form_action URL A link to the page which handles the form N/A
login.heading string Page heading N/A
login.page_name string N/A
Variable name Type Description Format
password_forgotten.form_action string A link to the page which handles the form N/A
password_forgotten.back_href string A link to the parent page (login.php) N/A


Create account box (containboxes/create_account.html)

Variable name Type Description Format
containboxes.create_account.form_action URL A link to the page which handles the form N/A
containboxes.create_account.text HTML Box text N/A
containboxes.create_account.generated_password string A randomly generated password suitable for the new account. N/A
containboxes.create_account.customers_personnummer string The customer's personnummer N/A
containboxes.create_account.countries association list A list of country indices mapped to their names. dictionary of integer to string mappings.

Login box (containboxes/login_box.html)

Variable name Type Description Format
containboxes.login_box.form_action URL A link to the page which handles the form N/A

Password forgotten box (containboxes/password_forgotten_box.html)

Variable name Type Description Format
containboxes.password_forgotten_box.form_action URL A link to the page which handles the form N/A

Log off page (logoff.html)

Variable name Type Description Format
logoff.continue_href string Link presented to the user after logging off. N/A

Manufacturers page (manufacturers.html)

manufacturers.list is a list of dictionaries with these fields:

Variable name Type Description Format
id integer N/A N/A
name string N/A N/A
image URL N/A N/A
address string N/A N/A
postcode string N/A N/A
postal_address string N/A N/A
visitational_address string N/A N/A
country string N/A N/A
telephone1 string N/A N/A
telephone2 string N/A N/A
fax string N/A N/A
email_address string N/A N/A
orgno string N/A N/A
vat string N/A N/A
note string N/A N/A
plusgiro string N/A N/A
bankgiro string N/A N/A
postgiro string N/A N/A
contact string N/A N/A
payment_conditions string N/A N/A
customers_no string N/A N/A
video_1 string N/A N/A
video_2 string N/A N/A
extra1 string N/A N/A
extra2 string N/A N/A
extra3 string N/A N/A
homepage string N/A N/A
link string N/A N/A
seo_link string N/A N/A
url string N/A N/A
description string N/A N/A
meta_title string N/A N/A
meta_keywords string N/A N/A
meta_description string N/A N/A
extra4 string N/A N/A
extra5 string N/A N/A
date_added string N/A N/A
last_modified string N/A N/A
parent_id integer N/A N/A
children list of manufacturers

News archive page (news_archive.html)

Variable name Type Description Format
news_archive.news list of dictionaries News articles
Key Type Description
id integer News article ID
image URL Assigned image
title string News article title
date string News article publishing date
content string News article content
short string News article content, short version
href string Link to news page

News article page (news.html)

Variable name Type Description Format
image URL Assigned image N/A
news.title string News article title N/A
news.date string Date of publishing N/A
news.content string News article content N/A
news.short string News article content, short version N/A

Newsletter page (newsletter.html)

Variable name Type Description Format
newsletter.text HTML The newsletter. N/A

Product page (product.html)

Variable name Type Description Format
product.form_href URL Add to cart handler. N/A
product.reviews_href URL Link to product reviews. N/A
product.invalid_name string Invalid product name page title. N/A
product.invalid_text string Invalid product name page text. N/A
product.inactive_name string Inactive product name page title. N/A
product.inactive_text string Inactive product name page text. N/A
product.product_prev

product.product_next

dictionary Previous and next products in the current category.
Key Type Description
id integer Product index.
image URL Product image.
name string Product name.
href URL Product link
product.category_path list of dictionaries Information about the current category path.
Key Type Description
id integer Category index.
name string Category name.
image URL Category image.
seo_link URL Category link.
product.product dictionary Product information
Key Type Description
id integer Product index.
parent_id integer Parent product index.
category category Product main category.
categories list of lists of dictionaries Information for all product categories. See product.category_path.
tags list of tags Tags set for this product.
attributes dictionary with attribute options and choices. The key is the option ID.
Key Type Description
id integer Type ID.
type integer Attribute option type.
name string Option name.
values dictionary of attribute values. The key is the value ID.
Key Type Description
id integer Choice ID.
text string Choice name including price.
text_clean string Choice name without price.
image URL Choice image.
selected boolean True is the attribute is selected for the current product.
price string Attribute price.
price_raw string Attribute price without currency formatting.
price_prefix string Price prefix (+ or -).
date_added date Date product was added.
date_available date Date product will be available.
delivery_time string Product delivery time.
description HTML Product description.
description_short HTML Short product description.
disabled boolean Product disabled status.
ean1 string Product EAN.
external_url URL Product link.
extra1 HTML Custom product field.
extra2 HTML Custom product field.
extra3 HTML Custom product field.
extra4 HTML Custom product field.
extra5 HTML Custom product field.
featured boolean Featured product.
file URL Product file 1.
file2 URL Product file 2.
full_products_id integer Requested product ID (including attributes).
image URL Product image.
image_href URL Link to full product image.
additional_images Additional product images.
Key Type Description
href URL Image thumbnail link.
image URL Image path.
description string Image description.
files Attached files.
Key Type Description
name string File name.
path URL File link.
size integer Size in bytes.
last_modified date Product last modified date.
lowest_number integer Minimum required order size.
manufacturer_model string Product manufacturer model.
model string Product model.
name string Product name.
next_delivery_date date Next delivery date.
next_delivery_quantity string Next delivery quantity.
tax decimal Product tax rate.
price string Product price.
price_raw string Product price without currency formatting.
price_recommended string Recommended product price.
price_recommended string Recommended product price without currency formatting.
price_special string Special product price.
price_special string Special product price without currency formatting.
price_special_expires date Expire date of the special product price.
price_discount_percentage integer Discount in percent for product.
rating decimal Average review rating in increments of 0.5.
seo_link URL Product link.
stock integer Products in stock.
type string Product quantity type.
weight string Product weight.
reorder_stock string
stock_place string Product location.
viewed integer Product view count.
ordered integer Product order count.
note string Product note.
lead_time string
price_in string
shipping_class int Product shipping class. 1-10
discounts list of discounts All discounts, with current_matches set.
product.manufacturer manufacturer Product brand information The manufacturer dictionary has an additional key named 'model' containing the manufacturer model for the product.
product.collection manufacturer Product collection information The collection dictionary has an additional key named 'model' containing the manufacturer model for the product.

Product added to shopping cart page (product_added.html)

Variable name Type Description Format
product_added.checkout_href URL A link to the checkout page. N/A
product_added.product product The product added. The product has two additional keys.
Key Type Description
quantity_added integer The quantity of the product added to the shopping cart
cart dictionary The data for a product in the shopping cart (see box or page).

New products page (products_new.html)

Variable name Type Description Format
products_new.pagination pagination Pagination info N/A
products_new.page_href_format URL Pagination link format N/A
products_new.products products A list of recently added products. list of products

Product reviews page (product_reviews.html)

Variable name Type Description Format
product_reviews.back_href URL Link to the product page. N/A
product_reviews.write_href URL Link to the write review page. N/A
product_reviews.product product The product. N/A
product_reviews.pagination pagination Pagination object for the reviews. N/A
product_reviews.page_href_format URL Page format for the pagination. N/A
product_reviews.reviews list of dictionaries The displayed reviews.
Key Type Description
href URL Link to the review page
author string Author of the review
date date The date the review was written
text string The first 100 characters of the review text, lines broken at every 40 characters
full_text string The first 100 characters of the review text
rating integer Review rating, 1-5.

Review page (product_reviews_info.html)

Variable name Type Description Format
product_reviews_info.back_href URL Link to the product reviews page. N/A
product_reviews_info.write_href URL Link to the write review page. N/A
product_reviews_info.product product The product. N/A
product_reviews_info.review dictionary The displayed review.
Key Type Description
author string Author of the review
date date The date the review was written
text string The review text, lines broken at every 60 characters
rating integer Review rating, 1-5.

Write review page (product_reviews_write.html)

Variable name Type Description Format
product_reviews_write.form_href URL Form handler. N/A
product_reviews_write.back_href URL Link to the product reviews page. N/A
product_reviews_write.product product The product. N/A
product_reviews_write.customer dictionary Customer information.
Key Type Description
firstname string First name of the customer writing the review.
lastname string Last name of the customer writing the review.

Question about product page (question_about_product.html)

Variable name Type Description Format
question_about_product.form_action URL A link to the page which handles the form N/A
question_about_product.back_href URL Link back to the product page N/A
question_about_product.product product Product information. N/A

Product reviews page (reviews.html)

Variable name Type Description Format
reviews.pagination pagination Pagination info N/A
reviews.page_href_format URL Pagination link format N/A
reviews.reviews list of dictionaries Product reviews
Key Type Description
href URL A link to the review page
product string Product name
author string Review author
date date Review date
image string Product image
text HTML Abbreviated review text
full_text string Unabbreviated review text
rating HTML Product rating

Shopping cart page (shopping_cart.html)

These variables are available on shopping_cart.php only.

Variable name Type Description
shopping_cart.title
shopping_cart.description
shopping_cart.update_products_href
shopping_cart.checkout_href
shopping_cart.referer_url
shopping_cart.cart_count
shopping_cart.cart_total

These variables are available in pages/checkout/shopping_cart.html through ajax_include.php?page=loadcart, pages/checkout.html through checkout.php and pages/shopping_cart.html through shopping_cart.php:

Variable name Type Description
shopping_cart.list list of dictionaries Products in the shopping cart.
shopping_cart.products list of dictionaries Same as shopping_cart.list.
shopping_cart.any_out_of_stock integer 1 if any product in the shopping cart is out of stock, 0 otherwise.
shopping_cart.total string The currency formatted total cost of the shopping cart, tax included unless tax display inactivated.
shopping_cart.discounts list of discounts

Each product has the following format:

Variable name Type Description
id
parent_id
final_price
final_price_raw
image
manufacturers_id
collection_id
model
name
package_content
price
price_raw
quantity
weight
href
unit
type
total_price
total_price_raw
total_final_price
total_final_price_raw
final_price_difference
final_price_difference_raw
total_final_price_difference
total_final_price_difference_raw
final_price_discount_percent
price_per_unit
final_price_per_unit
quantity_in_unit
stock_quantity
discounts list
Variable name Type Description
id
required_count_min
required_count_max
required_total_min
required_total_max
discount_percent
discount_price
discount_count
variants list
Key Type Description
id
name
choice dictionary
Key Description
id
name
attributes dictionary
Variable name Type Description
type
id
name
value_id
value
price
price_prefix

Specials page (specials.html)

Variable name Type Description Format
specials.pagination pagination Pagination info N/A
specials.page_href_format URL Pagination link format N/A
specials.specials products A list of products with special prices. list of products

Tell a friend page (tell_a_friend.html)

Variable name Type Description Format
tell_a_friend.form_action URL A link to the page which handles the form N/A
tell_a_friend.back_href URL Link back to the product page N/A
tell_a_friend.product product Product information. N/A

Extensions

Functions

build(string, array, array)

Creates the target file as the concatenation of the list of source files. SCSS-files are compiled to CSS. The target file is updated when any of the source files have a modified date later than that of the target file.

Relative paths in CSS-files are not updated, take care that the information referenced is reachable from the output directory. If the generated file is put in the same directory as the source files, it should work as paths relative to the generated URL will still work.

JavaScript-files can also be built.

<link rel="stylesheet" href="{{ build('output/out.css',
  ['input/a.css', 'input/b.css', 'input/test.scss']) }}">

The returned string could look like this:

/static/9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08/template/output/out.css

The third parameter is an optional list of options. The currently supported options are "dry-run" and "force". "dry-run" causes the function to return the URL to the output file without generating or regerenrating it. "force" causes the function to always regenerate the output file.

<link rel="stylesheet" href="{{ build('output/out.css',
  ['input/a.css', 'input/b.css', 'input/test.scss'],
  ['dry-run', 'force']) }}">

get_associated_products(products_id, [type])

Returns a product listing of associated products for the given product.

{% import 'helpers/html.html' as html %}
{% for p in get_associated_products(product.product.id) %}
  {{ html.listed_product(p) }}
{% endfor %}

get_categories(products_id)

Returns the categories for the given product.

<ul>
{% for c in get_categories(product.product.id) %}
  <li><a href="{{ c.id }}">{{ c.name }}</a></li>
{% endfor %}
</ul>

get_category_tree(categories_id, [options])

Returns a category tree starting from the requested ID. Using 0 for the ID is not possible.

{{ get_category_tree(123, ['inactive']) }}

get_discounts()

Returns the active discounts.

{{ get_discounts() | json_encode }}

get_information_page_tree(page_id, [options])

Returns a page tree starting from the requested page_id. Using 0 for the ID *is* possible and returns a tree of all pages. Omitting the page_id will yield the same result as setting page_id to 0. The only options supported are "inactive" (include inactive pages) and "hidden" (include hidden pages).

{{ get_information_page_tree() }}
{{ get_information_page_tree(30) }}
{{ get_information_page_tree(30, ['inactive']) }}

get_manufacturer(manufacturers_id)

Returns a specific manufacturer.

{{ get_manufacturer(123) }}

get_product(search, mode)

Returns a single product. Search should be products id (default) or model.

{{ get_product(10) }}
{{ get_product("ve4875", "model") }}

get_product_variants(id)

Returns information about variants for the given product. The information returned is the same as is stored in modules.products_variants, except that category is not included.

get_products(limit, [search], order_by, mode)

Returns all products which match the values in the search array.

{{ get_products(6, [157, 164, 182]) }}
{{ get_products(6, [157, 164, 182], "rand") }}
{{ get_products(6, ["ve4875", "ve5299", "ve6988"], "sort_order", "model")  }}

Limit is the maximum amount of products to return, search should be an array of product id (default) or an array of model (when mode is set to model), order_by controls how products are sorted and mode sets whether to search by id or model.

Order_by can have two values, "rand", for which products are sorted randomly and "sort_order" to use the sort order configured for the products. "sort_order" is the default if no value is provided. Mode can be left out (in which case the function searches by id) or set to "model" (in which case the function searches by id). Order_by needs to be provided if mode is set to "model".

get_store_design_button_class

Returns the standard (and configured) CSS classes for buttons used in the standard templates.

langimg(image, width, height)

If the image exists, returns the HTML needed to display it.

{{ langimg("imagename.jpg") }}

langstr(name)

Returns a language string.

{{ langstr("LANGUAGE_STRING") }}

Plugins

getByTags(limit, tags, fill, order_by)

Get products by categories or tags.

{% set products = get_plugin('product_query').getByTags(4, [120, 130, 140]) %}

Limit is the maximum amount of products to return, tags are the tags from which products are selected, fill controls if products which do not match any of the tags are also returned, and order_by controls how the products are sorted.

order_by can have two values, "rand", for which products are sorted by the number of tags that match and randomly where the number of matches is the same, and "sort_order" to use the sort order configured for the products. "rand" is the default if no value is provided.

getAllByTags(limit, tags, fill order_by)

Get products by categories or tags, this includes subcategories and subtags.

{% set products = get_plugin('product_query').getAllByTags(12, [164], false, "sort_order") %}

Filters

chain(array)

Chain two iterable values.

[1, 2]|chain([3, 4])

choose(number)

Choose random entries from an array or dictionary.

[1, 2, 3, 4, 5]|choose(3)

image_button_url

Looks up an image button image for the current language.

"filename.jpg"|image_button_url

link(query_string)

Create a link.

"filename.php"|link(query_string)

query_string

Converts a dictionary to a valid query string.

dict|query_string

strip

Strips whitespace from the begnning and end of strings.

string|strip

strip_tags(allowed_tags)

Strips tags.

|strip_tags("<allowed><tags>")

thumbnail(width, height)

Return thumbnail path, width and height for thumbnailed image.

image|thumbnail([width[, height]])

truncate(limit, append)

Truncate string to given limit and append string

string|truncate(limit[, append = "..."])

truncate_html(limit, append)

Truncate string to given limit and append string after stripping HTML and expanding HTML entities.

string|truncate(limit[, append = "..."])

currency_session

Formats raw number with store currency.

float|currency_session