Generate a list of content based on the type specified


[%thumb_list type:'products' template:'' filter_category:'' limit:'10'%]
    [%param *header%]
        All Products
    [%param *footer%]
    [%param *ifempty%]
        No Results Found


A thumb_list tag is a versatile tag that will generate a list of content based on the parameters specified, from products to content. The wide variety of results and options are dictated by the parameters selected for the tag, see below for more samples of common thumb_list configurations or inspect the full list further down.

Splitting out parameters

What do you do if you want to do something fancy like use logic to determine a body template or a custom config to filter sku's? Split out your parameter! This can be done on most Neto tags and is something we already do for params like header & footer.

To do this, simply take the param you want to split out from the tag and format like in this example where we perform so logic to determine our if statement:

[%thumb_list type:'products' filter_category:'' limit:'10'%]
    [%param template%]
        [%if [@name@] eq 'Shirts'%]

Template parameter

If you use the body parameter to define what each product or page does in your list you won't need to use this, however best use is relying on a template file here so you can easily modify things like product and content site-wide.

There are two types of templates this loads based on content type. If the thumb_list calls product data via something like products, it will load the template.html default located via Skeletal/thumbs/product/template.html. Everything else is considered a content type, so will load Skeletal/thumbs/content/template.html.

If you want to use a custom template, you'll need to first name your template using our traditional convention, mycustomthumb.template.html then call it using just the name of your template in the template param, template:'mycustomthumb'.

Types & Content Types

What's the difference? Types specify an overall table in neto, such as products, orders or content. Content types specify the individual content type under the content specific. So just like our blog example, first you need to select the type:'content' then specifically the blogs, content_type:'blog' based on the ID.


The pagination tag will automatically set a number of pages based on the total results of the thumb list divided by the limit parameter. The paging tag needs to either be placed in the header or footer parameters.

    [%paging limit:'3'%]
        [%param *previous_page%]
            <li><a href="[@URL@]">Previous Page</a></li>
        [%param *goback_pages%]
            <li><a href="[@URL@]">[@page@]</a></li>
        [%param *current_page%]
            <li class="active"><a href="[@URL@]">[@page@]</a></li>
        [%param *gonext_pages%]
            <li><a href="[@URL@]">[@page@]</a></li>
        [%param *next_page%]
            <li><a href="[@URL@]">Next Page</a></li>

Frequent issues

Your list not displaying the results you anticipated? Here's a few little things you can double check :

  • For some thumb_list types, having a limit is mandatory. Ensure there is a limit param.
  • Even if you are printing a thumb_list that isn't for a specific content type or category, you may still need to include an empty version of this parameter such as limit_category:'' or content_type:''.
  • Does the list you are requesting have content that's valid to show? You can always use the ifempty param to print content is your list doesn't return results.

Common use scenarios

Order thumb list

The order thumb_list will list orders, but only in the context of a specific user session. So the user must be logged in before an order thumb list can be generated and is then generated based on specifically that user.

[%thumb_list type:'order' limit:'10' /%]

Content thumb list

The content thumb_list typically needs a few specifications such as the type and content_type tags. This is commonly used for things like blog, article & basic content indexes and lists. The following will output all blog posts within the parent of Blog (default ID of 72).

[%thumb_list type:'content' content_type:'blog' filter_content:'' filter_category:'72' template:'' limit:'10' /%]

Remember that for content to be related, you need to link both pages together on the "related" section.

[%thumb_list type:'content' content_type:'' template:'' filter_category:'' filter_content:'[@content_id@]' limit:'10' /%]

thumb_list Parameters

Name Options Description
limit:'' Integer Used to determine the max number of results to show before paging takes effect.
template:'' Name of template (without the "template.html") Used to determine the HTML template to use from the related thumbnails folder (eg: thumbs/product/demo.template.html). If left blank, the default template (template.html) file is called
global_counter:'' 1/0 Changes the count tag to run for all thumblists on the page with it set to 1
pgnum:'' Integer Load thumb_list on a specific page
show_empty:'' 1/0 Print results that have no content
content_type:'' Content type name Limits the thumblist to a specific content type
filter_inventory_id:'' SKUs Comma seperated list only for type "product" to identify specific SKUs to be loaded into thumb_list
filter_a2z:'' Single letter Filters by the starting character specified in the parameter
ignore_keywords:'' 1/0 Ignore any search query active on the page for the list
filter_sku:'' String For the type products, specifcy SKU's the print in the thumblist seperating with the , character
filter_sku#:'' SKU Adds a filter to a specific sku with each tag used, so filter_sku1:'PRODUCTSKU' would limit list to load that specific sku, then filter_sku2:'PRODUCTSKU2' would add another and so on. This works the same as filter_sku but has no support for comma seperation.
filter_exsku#:'' SKU This works the same as filter_sku# but excludes the SKU's included.
group_id:'' String Specificies a group for the thumblist. If not defined it will either use the current group_id or default group_id
show_all:'' 1/0 For type products, if defined filter_category is ignored
filter_category:'' String Specificy a category for type products, if not defined it will use the current_category
filter_content:'' String Specify a content page to filter, if not defined it will use the current page
filter_category_type:'' String Specificy a content type to generate a list from
filter_rcontent:'' Content ID Comma seperated filter by related content
filter_variations:'' Variation ID Comma seperated filter of variations
filter_instock:'' 1/0 For type products, will show or hide products that are out of stock
filter_wishlist:'' Wishlist ID Produces a list of products added to a wishlist based on ID
filter_wishlistpurchased:'' 1/0 When true, it only shows purchased items in the wishlist. Requires a filter_wishlist param. When undefined, it shows both purchased and unpurchased. When false, shows only unpurchased items.
filter_status:'' New,Pick,Pack,Dispatched,On Hold Only works with type:'orders', filters by the status of the order
filter_inpromo:'' 1/0 Shows only products with a valid promotion price when true
filter_warehouse:'' String Filter product list type by a specific warehouse ref
filter_itemgroup:'' Product group ID Comma seperated ID's for product groups
ignore_session_filter:'' 1/0 Ignores the current sessions filter
offset:'' Integer Offset the results by a determined number, can be used to split out content into unique sections.
show_child_products:'' 1/0 Works with type product, shows child products / variations in the list
show_child_products_parent:'' 1/0 Hides parent products from result, only works with type favourites
variation_specific:'' String Only works with the variations type, identifies a specific for the list
filter_parent_content:'' 1/0 Works with content type, identifies a specific parent content to generate a list from
header HTML & b@se tags Renders a single usable space above the body
body* HTML & b@se tags Runs an array for each option in the tag
footer HTML & b@se tags Renders a single usable space below the body
ifempty:'' HTML & b@se tags If the thumb_list returns no results, it'll load this block instead
ignorefilter:'' 1/0 When true on the type products it will print all results regardless of applied filters
sortby:'' name, SKU, brand, lowest_price, highest_price, largest_item, smallest_item, shortest_item, longest_item, sortorder, sortorder2, popular, top_sellers, new_arrivals, lowest_qty, highest_qty, random, trending, shippingweight, promo_end, sortbycol, wishlist, sortorder_price, sortorder2_price, sortorder_sortorder2, subtype_sortorder2, content_name, date_posted-desc, display_priority The sort option for the list contents. Adding -desc will reverse order in most cases.

display_priority will sort by the priority value in the product category for each product.

popular is based on search popularity.
trending quantity sold over a 7 day period.
top_sellers quantity sold over the store life time.
type:'' adverts, allbrands, articles, blog_reviews, blogs, brands, buying_guides, categories, child_products, content_reviews, content, count_products, customers, dispute_messages, dispute_orders, dispute_reasons, disputes, dispute_types, favourites, free_gifts, item_kitting, item, item_variations, list_reminders, list_wishlists, new_arrivals, orders, order_statement, product_adverts, product_filters, product_history, product_reviews, products, quotes, random_products, referred_users, standing_orders, storder_products, storelocation, top_sellers, upsell_products, view_dispute, view_order, view_proposal, view_rma, view_service, view_standing_order Defines the type of thumb_list that will be generated, refer to the table below for a description of what each type does. See underneath the parameter table for more information regarding each type.
show_level:'' Integer - Value of level Shows the level specified
show_next_level:'' Integer - Value of level Shows level after the selected level
hide_no_shipping:'' 1/0 Enables shipping calculation but hides items that don't have shipping options.
cal_shipping:'' 1/0 Enables shipping calculation on each item. Can cause massive slow-downs, caching will not work.
show_rating:'' 1/0 Enabled the review/rating tag to be printed in the thumb_list body
show_new_item:'' Integer Show tag as true if items created within the days specified in the paramater
filter_has_save:'' 1/0 Will only show products that have a value in the data tag, either via RRP or promotion price

thumb_list type parameter

Type Description
adverts Content based advertising campaigns
allbrands Deprecated - Alias for Brands
articles Deprecated - Article content type
blog_reviews Deprecated - Reviews for blogs
blogs Deprecated - Blog content type
brands Deprecated - Brands content type
buying_guides Deprecated - Buying guides content type
categories Default product category list
child_products Product list of child products based on parent SKU
content_reviews List of user reviews on specified content ID
content To be used with the content_type parameter to list content pages
count_products Lists total and quantity for product specified by SKU
customer Lists entire customer list, ideally used with the filter_misc# param
dispute_messages Contact messages between customer & site owner attached to a dispute
dispute_orders Orders engaged in an RMA dispute
dispute_reasons Reasons customers file a dispute on an order
disputes Current live disputes on a customer card
dispute_types Categories of order disputes
favourites Product "favourites" on a customer card, these are items that have been purchased on that account.
free_gifts Free products assigned to a SKU
item_kitting Returns a list of item information based on the filter_SKU param
item Prints information about one inventory item, given a inventory_id param
item_variations Variation product options based on SKU
list_reminders Provide a username and it will return reminders for checkout reminder system
list_wishlists User wishlists made against a customer card
new_arrivals Product list based on category filter and sorted by most recent additions
orders Orders against a customer card
order_statement Statement of orders against a customer card & date range
product_adverts Product advertisements based on ad group
product_filters List of filters based on product specifics and values
product_history List of products viewed by the customer in a session
product_reviews Approved customer reviews on a SKU
products All inventory products, typically filtered to narrow results
quotes List of order quotes against a customer card
random_products List of random products taken from entire inventory, can be limited with filters
referred_users Returns customer cards with a forced filter on the referall_username param
standing_orders Standing orders against a customer card
storder_products Products within a standing order
storelocation Stores in the "Store finder" feature.
top_sellers Products from inventory sorted by the top selling
upsell_products Upsell products stored against a SKU
view_dispute Provide a username and a dispute_id and see the dispute
view_order Provide a order_id and a username and it will get the order information. (No Orderlines)
view_proposal Provide a proposal_id and a username and it will get the proposal information (no orderlines)
view_rma Provide a rma_id and a username and it will get the RMA information (no orderlines)
view_service Provide a service_id and a username and it will get the asset-service information (no orderlines)
view_standing_order Provide a order_id and a username and it will get the standing order information (no orderlines)

thumb_list Data Tags

Name Description
[@acc_code@] Accounting Code
[@actual_height@], [@actual_length@], [@actual_width@] The assembled dimensions for the SKU. Prints as meters by default
[@allow_oversell@] Virtual product tag boolean
[@arrival_date@] Arrival date of SKU, recommended to use format tag
[@artist_author@] Artist/Author tag
[@availability_description@] Availability Description for the SKU, typically used to explain when product will become available.
[@available_preorder_quantity@] Pre-order QTY that is free for order
[@barcode@] The barcode tag, can be used with the barcode_url asset to generate an image
[@base_unit_qty@] Unit quantity description
[@brand@] Product brand, can be used with brand tag to load further information.
[@committed_quantity@] Quantity committed to orders
[@count@] Counts for every time the body param is run as a whole number integer
[@cubic@] Cubic weight calculated for the SKU
[@custom_label@] Custom label field
[@date_created@] Date the product was created in Neto, can be edited
[@display_template@] Body template selected for SKU
[@editable_bundle@] Boolean that when true indicates that a product is an editable kit/bundle
[@extra@] Boolean that when true indicates the product has "Extra Options" available
[@format@] Product Format field
[@free_gifts@] Boolean that when true has free gifts assigned to SKU
[@has_child@] Boolean that when true indicates the SKU has child items / variations
[@has_components@] Boolean that when true indicates the SKU has kit components
[@has_mlp@] If a product has multi level pricing it shows as true
[@height@], [@length@], [@width@] The Dimensions for the SKU and prints as meters by default
[@weight@] Item weight
[@inpromo@] Boolean that when true indicates the item has a promotional price that is valid
[@instock@] Boolean that when true indicates the item is in stock
[@inventory_id@] A unique ID assigned to the item, typically for internal use
[@itm_gp_id@] A unqiue id for kits/variations/parent items, typically for internal use
[@itm_sortorder@], [@itm_sortorder2@] Sort order integer, used to determine the sort order of the item depending on the thumblist sortby options
[@limited_stock@] Prints true when the stock is lower then the global configuration for "low stock"
[@manufacturer_model@] The model no. / Sku provided by the manufacturer
[@max_qty@],[@min_qty@] The maximum and minimum purchase quantity for that item in an order
[@misc#@] Where # indicates the misc number, this prints the misc field specified
[@model@],[@name@] The item name
[@multiplier_qty@] The quantity grouping the item must be purchased in, eg. Lots of 5
[@no_shipping@] When true there are no shipping options, requires cal_shipping param to be enabled
[@notax@] A boolean that when true indicates it is tax free
[@preorder@] A boolean that when true indicates that the item meets the conditions to be available for preorder
[@preorder_date@] The preorder date of which the item is expected to become in stock
[@preorder_quantity@] The anticipated quantity available for preorder
[@price@] The lowest available price
[@product_subtype@] The product subtype
[@product_type@] The product type
[@promo_end@], [@promo_start@] The promotional price start & end dates
[@promo_price@] The promotional price active during promo dates
[@promo_save@] The saving made on the item calculated by the difference between the promotional price & the RRP
[@rental_only@] A boolean that when true means it is a rental only item
[@retail@] Retail price
[@rndm@] Generates a random number each time it is printed in an array
[@save@] Save price percentage
[@save_price@] Save price
[@service_only@] A boolean that when true indicates a service item which has no delivery options required
[@sh_type_id@] The shipping ID of the shipping method that the item belongs to
[@short_description@] Item short description, has a character limit of 250 characters
[@single_price@] Single unit price
[@sku@] The items SKU, the unique identifier
[@start_date@] The date the product was created
[@store_price@] The price stored against the user group
[@store_quantity@] The quantity available for purchase
[@subtitle@] The items subtitle
[@swatch@] The colour code in hex on the product
[@tax_inc@] A boolean that when true indicates a tax inclusive product
[@thumb@], [@thumb#@] Where # represents a number, this is the image url
[@unit@] The unit of measure
[@url@] The URL used to reach the items product page

Was this article useful?

Be notified when this page is updated. Optional.