Shortlist Documentation

Tags

These terms are used throughout the documentation:
required: This parameter/field is required for this tag to function.
form only: This can only be set as a field in the form and not as a parameter in the tag.
param only: This parameter can only be set in the tag and not as a field in the form.
fixed value: This field cannot be edited and is set with a fixed value.
recurring only: This parameter/field only applies to recurring charges.
one-time only: This parameter/field only applies to one-time charges.
added in X.X.X: This parameter/field is only available from this version forward.
logged in: This tag is only available if the user is logged in.
has the following front-end tags:
{exp:shortlist:stats}
A helper tag to let you pull in aggregated statistics about overall usage of Shortlist on the site. There are no parameters, the following variables are available :
{exp:shortlist:item}
This is the main tag pair for adding for removing items from a user's list. There are two usage options for it - Internal (native EE entries) and External Content.
{exp:shortlist:view}
The main tag pair for viewing the contents of a user's list. You can use this tag pair without any parameters to simply list a user's default list contents. All of the parameters are optional. Note: The :view tag is really a channel:entries loop in disguise. Most of the parameters available on the channel:entries tag are also available here.
{exp:shortlist:lists}
NEW IN 2.0! The :lists tag is a real workhorse (Jace's favorite!). You can use it to loop over a user's lists and display the contents of those lists.
{exp:shortlist:add_list}
The :add_list tag returns a link that will create a new list for the current user. Unless supplied as part of the tag, the list will be created with a default title and set to be the new default list. You can change that using the supplied tag parameters, also all these values are editable by the user after the list is created. New In 2.0 Note: Unless otherwise set, new lists will automatically become the default list for the user. A user can change their default list with the {make_default_url} variable in the :lists tag, and can directly add items to a non-default list at any point too.
{exp:shortlist:add}
The :add tag is a quick helper single tag that can be used to create a url to add an item to a user's list, without going into the tag pair as with the :item tag. Note: The same tags and parameters on the :item tag apply to the :add tag. In addition, there are four 'remove_from_' parameters that might come in handy. If specified, this item will be automatically removed from the matching list, in the same action as being added to a different list. You can specify the list to remove from using the 'list_id', 'list_url_title', 'list_url_title_start' and 'list_url_title_end'. The parameters follow a regular naming pattern to match :
{exp:shortlist:remove}
ADDED IN 3.1: The :remove tag is a quick helper single tag that can be used to create a url to remove an item from a user's list, without going into the tag pair as with the :item tag. Note: The exact same tags (and requirements) on the :item tag apply to the :remove tag.
{exp:shortlist:auto_add}
Added in 3.1 Works like the :add tag, but adds the item automatically in the background. This will only add the item if it doesn't already exist in the user's list. As well as all the standard params available on the :add tag, you can also optionally pass the following : Note: The exact same tags (and requirements) on the :add tag apply to the :auto_add tag.
{exp:shortlist:auto_remove}
Added in 3.1 Works like the :remove tag, but removes an item automatically adds the item automatically in the background. If the item doesn't exist in the list, nothing will happen. As well as all the standard params available on the :remove tag, you can also optionally pass the following : Note: The exact same tags (and requirements) on the :remove tag apply to the :auto_remove tag.
{exp:shortlist:auto_add_list}
Works like the :add_list tag, but adds the list automatically in the background. Only creates the list if a corresponding list for the user doesn't already exist.
{exp:shortlist:clear}
The :clear tag is a quick helper that can be used to create a url to totally clear all items from a user's list. Note: With the addition of multiple lists in 2.0 the clear tag will only clear items from the current default list, or the list for the supplied list_id. If you want to create a 'Clear All' link, use the new :clear_all tag. Note: The :clear tag works just like the :add or :remove tags and can be called via ajax. In that case it'll return a type value of 'cleared'
{exp:shortlist:clear_all}
NEW IN 2.0! The :clear_all tag is a quick helper that can be used to create a url to totally clear all items from all lists a user's lists. If you need to clear items from just a single list, use the :clear tag instead.
{exp:shortlist:remove_list}
NEW IN 2.0 The :remove_list is a standalone helper to create a url to delete a user's list. This will also remove all the contained items in the list. This is also available within the :lists and :view tags as {remove_list_url}.
{exp:shortlist:clear_list}
NEW IN 2.0 The :clear_list is a standalone helper to create a url to delete a user's list. This will also remove all the contained items in the list. This is also available within the :lists and :view tags as {clear_list_url}.
{exp:shortlist:clone_url}
The :clone_list tag is a quick helper single tag that can be used to create a url to clone a shared list. This is also available within the :view tag as {clone_url}.
{exp:shortlist:item_count}
The :item_count tag is a single tag that simply returns the current count of items within a user's list. If no list_id is passed, will return the count for the default list. For example
{exp:shortlist:edit_list_form}
NEW IN 2.0 Used to create a form to allow user's to edit the basic attributes of their lists. Specifically, they can update the {list_title}, {list_url_title}, {list_url_title_start} and {list_url_title_end}.
{exp:shortlist:auto_clear}
ADDED IN 2.2 Automatically clears a user's list as soon as parsed. Basically the same as if a user had visited the link generated using the {exp:shortlist:clear} tag. Useful if you need to automatically clear a list contents when a user visits a certain page. Can also optionally redirect the user after clearing. By default this tag will clear the current user's default list unless a 'list_id' param is passed. If you want to clear all lists for a user, use the {exp:shortlist:auto_clear_all} tag instead. This tag returns nothing, and can be placed anywhere in your template.
{exp:shortlist:auto_clear_all}
ADDED IN 2.2 Automatically clears all list as soon as parsed. Basically the same as if a user had visited the link generated using the {exp:shortlist:clear_all} tag. If you want to clear just a specific list for a user, use the {exp:shortlist:auto_clear} tag instead. This tag returns nothing, and can be placed anywhere in your template.
{exp:shortlist:item_in_list}
A useful helper tag to let you test to see if a specific item is in a specific list for the current user. Great if you're using Shortlist with a few automatic lists and want to change the behavior of your templates if an item is in certain lists. Note: Either the item_id or entry_id parameters are required to specify which entry to check. Also, at least one of the list_.. params is required to specify the list to check This tag return 'yes' if the item is the corresponding list, or 'no' in all other cases (including if the list or item is invalid)
{exp:shortlist:list_count}
added in 2.4 A useful helper tag to quick return the count of lists for the current user. Takes no parameters ADDED IN 2.4
{exp:shortlist:add_form}
ADDED in 2.5 A form version of the {exp:shortlist:add} tag. Great if you need to be able to set some values dynamically based on user input. Accepts 'form_class' and 'form_id' parameters to control class/ids on the form. Also you can pass arbitrary data attributes as params liks 'data:key=val' Where you'd set the values for the {exp:shortlist:add} tag as parameters, simply add them here as form inputs.
{exp:shortlist:remove_form}
added in 2.5 A form version of the {exp:shortlist:remove} tag. Great if you need to be able to set some values dynamically based on user input. Accepts 'form_class' and 'form_id' parameters to control class/ids on the form. Also you can pass arbitrary data attributes as params liks 'data:key=val'Where you'd set the values for the {exp:shortlist:remove} tag as parameters, simply add them here as form inputs.
{exp:shortlist:add_list_form}
ADDED IN 2.5 A form version of the {exp:shortlist:add_list} tag. Great if you need to be able to set some values dynamically based on user input. Accepts 'form_class' and 'form_id' parameters to control class/ids on the form. Also you can pass arbitrary data attributes as params liks 'data:key=val' Where you'd set the values for the {exp:shortlist:add_list} tag as parameters, simply add them here as form inputs.
{exp:shortlist:item_form}
ADDED IN 3.0 A form to let you set any additional content per list item. Simply named your extra details prefixed with 'extra:..'. For example, if you wanted to let your users keep per-item notes, you could have a field called 'extra:notes', or quantities with a field called 'extra:qty'. The values saved here will be available in the other shortlist tags with the same name, ie. {extra:notes} or {extra:qty} etc.. Note: Only the owner of a list item can change these values. Shortlist will reject any attempts to change the values by any one other than the list/item owner.
{exp:shortlist:store_track_item}
ADDED IN 3.4.0 A special tag to help integrate Shortlist with Expresso Store for using Shortlist as a product wishlist. Add this tag within a your {exp:store:product} tag pair to enable item tracking in baskets. When the item is added as a product to the user's cart we keep a marker and update the original item to show when it's been purchased. See full details on using Shortlist with Expresso Store Note: Also requires adding 'input:shortlist_track_item=WishlistID to the wrapping store:product tag
{exp:shortlist:stats}
A helper tag to let you pull in aggregated statistics about overall usage of Shortlist on the site. There are no parameters, the following variables are available :
Variables
total_items
The total number items that have been added to lists
{total_items}
total_unqiue_items
The total number unique items that have been added to lists
{total_unqiue_items}
total_lists
The total number lists that have been created and are not empty
{total_lists}
total_users
The total number of users that have lists, both members and guests
{total_users}
total_members
The total number of members that have lists
{total_members}
total_guests
The total number of guests that have lists
{total_guests}
Examples
example
Usage is very simple, and might look like this :
{ {exp:shortlist:stats} There are a total of {total_items} items in across {total_lists} lists. {total_users} total people using lists, of which {total_members} are members, and {total_guests} are guests. {total_unique_items} different items have been added to lists. {/exp:shortlist:stats}  }
{exp:shortlist:item}
This is the main tag pair for adding for removing items from a user's list. There are two usage options for it - Internal (native EE entries) and External Content.
Tag Parameters
entry_id
required
integer
The entry id of the entry. *Required for internal content
{exp:shortlist:item entry_id="8"}
is_external
required
yes/no
You must pass a value of 'yes' to indicate this is an external item
accepts: "y","n"
{exp:shortlist:item is_external="yes"}
title
required
string
The title for the item *Required for external content
{exp:shortlist:item title="your_title"}
unique_attr
required
string
The name of the 'attr:..' parameter to use as a unique identifier. *Required for external content
{exp:shortlist:item unique_attr="input"}
attr
Attribute parameters can be used to pass any content you'd like for an item. You can pass as many 'attr:..' style parameters and they will be recorded against this item.
{exp:shortlist:item attr="input"}
extra
Extra default item 'extra:..' values that can be set when the item is added to the a user's list using the {add_url} or {list_add_url} tag.
{exp:shortlist:item extra="input"}
Variables
in_list
Indicator if the current item is already in at least one of the user's lists.
{in_list}
add_url
The url to add the current item to a user's list.
{add_url}
remove_url
The url to remove the current item from a user's list.
{remove_url}
clear_url
The url to remove to clear out all items from this user's list.
{clear_url}
not_in_any_list
ndicator if this item isn't in any of the user's lists
{not_in_any_list}
in_default_list
boolean
(boolean) Indicates if this item is in the user's default list.
{in_default_list}
entry_real_date
The entry's real entry_date value, instead of the date it was added to the list (if it was added)
{entry_real_date}
lists
tag pair to loop over currently available user lists. Within this pair are extra variable for interacting with specific lists:
{lists}
lists_list_id
string
(string) The list_id of this list. Note: Do not use the {list_id} tag inside the {lists} tag pair as it may output an incorrect value.
{lists_list_id}
list_title
The list title for this list
{list_title}
list_name
The list name for this list
{list_name}
list_add_url
The same as {add_url} but directly adding to this list instead. (Useful if this list isn't default)
{list_add_url}
list_remove_url
The same as {remove_url} but directly removing from this list instead. (Useful if this list isn't default)
{list_remove_url}
list_clear_url
The same as {clear_url} but directly clearing this list instead. (Useful if this list isn't default)
{list_clear_url}
default_list
Marker for testing if this list is the default list
{default_list}
in_this_list
Marker for testing if this item is in this list
{in_this_list}
extra
Any extra data stored against the item. This is open-ended, so you can have variables like {extra:notes}, {extra:qty} or {extra:XXX} where XXX can be any value. Users can update these values using the {exp:shortlist:item_form} tag. NOTE: Shortlist will automatically parse out any variables that look like {extra:..} to protect the tag output. The upshot of this is that any variable like '{extra:test}' or '{extra:not_a_real_value}' will return a blank string, if the user hasn't explicitly set a value
{extra}
{exp:shortlist:view}
The main tag pair for viewing the contents of a user's list. You can use this tag pair without any parameters to simply list a user's default list contents. All of the parameters are optional. Note: The :view tag is really a channel:entries loop in disguise. Most of the parameters available on the channel:entries tag are also available here.
Tag Parameters
list_id
Optionally used to view lists other than the current user's list. Use in conjunction with the {list_id} variable to allow users to share lists
{exp:shortlist:view list_id="7"}
list_name
string
Optionally used to view lists other than the current user's list. Filtering by {list_name}
{exp:shortlist:view list_name="todos"}
list_url_title
Optionally used to view lists other than the current user's list, this time filtering by the user set list_url_title value.
{exp:shortlist:view list_url_title="url"}
list_url_title_start
Filter the returned lists to only those with matching 'list_url_title_start' values. Especially useful if you want to create a viewable page of a group of lists. Can be neatly paired with 'list_url_title_end' to view only a single list via neat url
{exp:shortlist:view list_url_title_start}
list_url_title_end
Filter the returned lists to only those with matching 'list_url_title_end' values. Especially useful if you want to create a viewable page of a group of lists. Pair up with 'list_url_title_start' too.
{exp:shortlist:view  list_url_title_end}
return
Optionally set the return link for any act link variables such as {add_url} and {remove_url}
{exp:shortlist:view return="put user here"}
list_orderby
Optionally set the order of the returned lists in the {lists}..{/lists} pair
{exp:shortlist:view list_orderby="date"}
list_sort
Optionally set the sort direction of the returned lists in the {lists}..{/lists} pair
{exp:shortlist:view list_sort="input"}
list_owner_id
Optionally specify a different list owner. If this is added shortlist will try to display the details of lists for the other member. Be aware of potential privacy issues when using this option.
{exp:shortlist:view list_owner_id="9"}
Variables
list_id
The shareable id for this list. Use this id to create links for sharing a list. Use in conjunction with the list_id parameter also available on this tag
{list_id}
list_name
The list_name for this list
{list_name}
list_description
The list_description for this list
{list_description}
item_id
The id of this item in a user's shortlist
{item_id}
is_external
Indicator if the current item is an externally sourced item
{is_external}
is_internal
The reverse of the is_external indicator. Just in-case.
{is_internal}
is_owner
A marker for use when a user is viewing a shared list
{is_owner}
in_list
A marker to see if this item is in the current user's list. Used when viewing a shared list
{in_list}
add_url
Url to allow a user to add an item to their list. Note: This is only of use if the list currently being viewed is not owned by this user (ie. {is_owner} is false)
{add_url}
remove_url
Url to allow a user to remove an item from their list. Note: If the list is owned by the current user this will let them remove it from their list. If the list is owned by a different user (ie. {is_owner} is false) this will allow them to remove it from their own list (assuming they have it in their own list. That can be checked with the {in_list} variable)
{remove_url}
clone_url
Url to allow a user to clone an entire list. This will copy every item in the current list to the user's list. Any duplicates (ie. entries already in a user's list will be skipped). Note: This will return an empty string if the current list is owned by the this user (ie. {is_owner} is true).
{clone_url}
remove_list_url
The url to remove this list (and with it all contained items). This is also available as {exp:shortlist:remove_list}.
{remove_list_url}
make_default_url
The url to set this list as the default list.
{make_default_url}
clear_list_url
The url to clear the entire contents of this list.
{clear_list_url}
is_default
Marker for testing if this list is the default list.
{is_default}
attr
Any 'attr:..' format parameters that were added on the :view or :add tag when the item was added to the user's list. Only available on external items
{attr}
shortlist_unique_val
The value indicated as a unique marker when the item was added to the list. This is the field shortlist uses to check if an item is already in a user's list. Only available on external items
{shortlist_unique_val}
{exp:shortlist:lists}
NEW IN 2.0! The :lists tag is a real workhorse (Jace's favorite!). You can use it to loop over a user's lists and display the contents of those lists.
Tag Parameters
list_id
integer
Specify a specific list to view by the list_id
{exp:shortlist:lists list_id="7"}
list_name
string
Specify a specific list to view by the list_name
{exp:shortlist:lists list_name="food list"}
list_url_title
string
Specify a specific list to view by the list_url_title
{exp:shortlist:lists list_url_title="url"}
list_url_title_start
Specify a group of lists to view by list_url_title_start
{exp:shortlist:lists}
list_url_title_end
Specify a group of lists to view by list_url_title_end
{exp:shortlist:lists list_url_title_end}
orderby
string
Order the returned lists by this variable. All the main variables on lists can be ordered by. This defaults to list_id_int, ie. chronological.
Default: list_id_int
{exp:shortlist:lists orderby="list_id_int"}
sort
string
Change the sort order. Pass 'desc' or 'asc'. Defaults to 'asc'
Default: asc
{exp:shortlist:lists sort="desc"}
return
Optionally set the return link for any act link variables such as {make_default_list} and also all act link variables in the sub {items}..{items} loop
{exp:shortlist:lists return"put user here"}
Variables
list_title
The user supplied title for the list. This will default to a standard value for new lists, but can be changed by the user using the {exp:shortlist:edit_list_form} tag form. If you never plan on allowing users to have multiple lists, you can skip this tag entirely, and Shortlist will behave perfectly well.
{list_title}
list_description
The user supplied description for this list. Editable using the {exp:shortlist:edit_list_form} tag form.
{list_description}
list_count
The number of lists a user currently has. If a user has never interacted with Shortlist, this will be zero, otherwise any value 1+. If the user has any items, this will be 1+.
{list_count}
list_id
The list_id for the current list. Great for building up a link to view a single list.
{list_id}
list_name
The developer supplied list_name for the list (if specified)
{list_name}
list_url_title
The list_url_title for the current list. Only set if the user has gone through and edited the title of the list via the :edit_list_form. Great for creating simple sharing urls. Pair this with the parameter of the same name to filter down the lists to display later.
{list_url_title}
list_url_title_start
An advanced option for creating shareable urls. Paired with the list_url_title_end variable, you can create neater sharing urls that don't require such stringent uniqueness. Checkout the examples on sharing to see their usage.
{list_url_title_start}
list_url_title_end
The list_url_title_end for the current list. Works with list_url_title_start as explained above.
{list_url_title_end}
is_default
An indicator for testing if the current list is the default. There will always be a default list. If a list is the default, as a user adds new items (ie. using the {exp:shortlist:add} tag) and a specific list_id is not specified, items will be added to this list. A user can change the default list using the {make_default_url} variable.
{is_default}
make_default_url
Returns a url to allow the user to set this list as their default. If the list is already default, will return an empty string.
{make_default_url}
remove_list_url
The url to remove this list (and with it all contained items). This is also available as {exp:shortlist:remove_list}.
{remove_list_url}
clear_list_url
Url to empty out a list of it's items. This is also available as {exp:shortlist:clear_list}.
{clear_list_url}
items
The items tag pair lists the actual items from within the list. This has all the same variables available as the direct {exp:shortlist:view} tag for this list.
{items}
{exp:shortlist:add_list}
The :add_list tag returns a link that will create a new list for the current user. Unless supplied as part of the tag, the list will be created with a default title and set to be the new default list. You can change that using the supplied tag parameters, also all these values are editable by the user after the list is created. New In 2.0 Note: Unless otherwise set, new lists will automatically become the default list for the user. A user can change their default list with the {make_default_url} variable in the :lists tag, and can directly add items to a non-default list at any point too.
Tag Parameters
list_name
string
An optional name for the list. List names are different than list_titles in that they're specified by the developer, and can be used to filter and act on lists. It's especially good if you're setting up lists automatically using the :auto_add tag. List names can't be changed by the user, and always match exactly what was passed during list creation
{exp:shortlist:add_list list_name="name given by developer unchangable to user"}
make_default
yes/no
Param to decide whether to set this new list as default. Defaults to 'yes'. Pass 'no' to flip.
accepts: "y","n"
Default: y
{exp:shortlist:add_list make_default="no"}
list_title
string
A default title for the new list. If none is passed this will default to 'New List'. Also if there is already a list of the same name, a number will in brackets will be appended. ie. 'New List (2)', 'New List(3)'. The list title can be updated later by the user.
{exp:shortlist:add_list list_title="title"}
list_url_title
Optional param to set a default {list_url_title} value directly on list creation. This value will be cleaned using the standard url clean up methods for uniqueness
{exp:shortlist:add_list list_url_title="input"}
list_url_title_start
Optional param to set a default {list_url_title_start} value directly on list creation. This value will be cleaned using the standard url clean up methods, duplicates are allowed
{exp:shortlist:add_list list_url_title_start=""}
list_url_title_end
Optional method to set a default {list_url_title_end} value directly on list creation. This value will be cleaned using the standard url clean up methods, duplicates are allowed
{exp:shortlist:add_list list_url_title_end}
return
An optional url to return to after the action is complete. If none is supplied, will return to the current page.
{exp:shortlist:add_list return="where to put user when activity completes"}
{exp:shortlist:add}
The :add tag is a quick helper single tag that can be used to create a url to add an item to a user's list, without going into the tag pair as with the :item tag. Note: The same tags and parameters on the :item tag apply to the :add tag. In addition, there are four 'remove_from_' parameters that might come in handy. If specified, this item will be automatically removed from the matching list, in the same action as being added to a different list. You can specify the list to remove from using the 'list_id', 'list_url_title', 'list_url_title_start' and 'list_url_title_end'. The parameters follow a regular naming pattern to match :
Tag Parameters
remove_from_list_name
string
Specify the list to remove from by list_name
{exp:shortlist:add remove_from_list_name="name"}
remove_from_list_id
integer
Specify the list to remove from by list_id
{exp:shortlist:add remove_from_list_id="7"}
remove_from_list_url_title
Specify the list to remove from by list_url_title
{exp:shortlist:add remove_from_list_url_title}
remove_from_list_url_title_start
Specify the list to remove from by list_url_title_start
{exp:shortlist:add remove_from_list_url_title_start}
remove_from_list_url_title_end
Specify the list to remove from by list_url_title_end
{exp:shortlist:add remove_from_list_url_title_end}
list_name
Specify the list to add to by list_name
{exp:shortlist:add list_name="name"}
list_id
Specify the list to add to by list_id
{exp:shortlist:add list_id="8"}
list_url_title
Specify the list to add to by list_url_title
{exp:shortlist:add list_url_title="url title"}
list_url_title_start
Specify the list to add to by list_url_title_start
{exp:shortlist:add list_url_title_start}
list_url_title_end
Specify the list to add to by list_url_title_end
{exp:shortlist:add list_url_title_end}
{exp:shortlist:remove}
ADDED IN 3.1: The :remove tag is a quick helper single tag that can be used to create a url to remove an item from a user's list, without going into the tag pair as with the :item tag. Note: The exact same tags (and requirements) on the :item tag apply to the :remove tag.
Tag Parameters
{exp:shortlist:auto_add}
Added in 3.1 Works like the :add tag, but adds the item automatically in the background. This will only add the item if it doesn't already exist in the user's list. As well as all the standard params available on the :add tag, you can also optionally pass the following : Note: The exact same tags (and requirements) on the :add tag apply to the :auto_add tag.
Tag Parameters
allow_guests
Pass a value of 'no' to ignore guest users. Useful if you only want items added automatically for logged in members
{exp:shortlist:auto_add allow_guests="no"}
{exp:shortlist:auto_remove}
Added in 3.1 Works like the :remove tag, but removes an item automatically adds the item automatically in the background. If the item doesn't exist in the list, nothing will happen. As well as all the standard params available on the :remove tag, you can also optionally pass the following : Note: The exact same tags (and requirements) on the :remove tag apply to the :auto_remove tag.
Tag Parameters
allow_guests
Pass a value of 'no' to ignore guest users. Useful if you only want items added automatically for logged in members
{exp:shortlist:auto_add allow_guests="no"}
{exp:shortlist:auto_add_list}
Works like the :add_list tag, but adds the list automatically in the background. Only creates the list if a corresponding list for the user doesn't already exist.
Tag Parameters
allow_guests
Pass a value of 'no' to ignore guest users. Useful if you only want items added automatically for logged in members Works like the :add_list tag, but adds the list automatically in the background. Only creates the list if a corresponding list for the user doesn't already exist. Note: The exact same tags (and requirements) on the :add_list tag apply to the :auto_add_list tag.
{exp:shortlist:auto_add_list allow_guests="no"}
{exp:shortlist:clear}
The :clear tag is a quick helper that can be used to create a url to totally clear all items from a user's list. Note: With the addition of multiple lists in 2.0 the clear tag will only clear items from the current default list, or the list for the supplied list_id. If you want to create a 'Clear All' link, use the new :clear_all tag. Note: The :clear tag works just like the :add or :remove tags and can be called via ajax. In that case it'll return a type value of 'cleared'
Tag Parameters
list_id
The list_id to clear. If none is supplied will act on the default list.
{exp:shortlist:clear list_id="7"}
return
where to put the user when they are done.
{exp:shortlist:clear return="put user here"}
{exp:shortlist:clear_all}
NEW IN 2.0! The :clear_all tag is a quick helper that can be used to create a url to totally clear all items from all lists a user's lists. If you need to clear items from just a single list, use the :clear tag instead.
Tag Parameters
return
Optionally used to specify a different return url for the action link.
{exp:shortlist:clear_all return="url return"}
{exp:shortlist:remove_list}
NEW IN 2.0 The :remove_list is a standalone helper to create a url to delete a user's list. This will also remove all the contained items in the list. This is also available within the :lists and :view tags as {remove_list_url}.
Tag Parameters
list_id
required
The List Id of the list to be removed. If the user isn't the owner of this list, Shortlist will prevent them from removing the list.
{exp:shortlist:remove_list list_id="4"}
return
Optionally used to specify a different return url for the action link.
{exp:shortlist:remove_list return="spot to put user"}
{exp:shortlist:clear_list}
NEW IN 2.0 The :clear_list is a standalone helper to create a url to delete a user's list. This will also remove all the contained items in the list. This is also available within the :lists and :view tags as {clear_list_url}.
Tag Parameters
list_id
required
The List Id of the list to be removed. If the user isn't the owner of this list, Shortlist will prevent them from removing the list.
{exp:shortlist:clear_list list_id="4"}
return
Optionally used to specify a different return url for the action link.
{exp:shortlist:clear_list return="spot to put user"}
{exp:shortlist:clone_url}
The :clone_list tag is a quick helper single tag that can be used to create a url to clone a shared list. This is also available within the :view tag as {clone_url}.
Tag Parameters
list_id
required
integer
Used to specify the list to clone from.
{exp:shortlist:clone_url}
{exp:shortlist:item_count}
The :item_count tag is a single tag that simply returns the current count of items within a user's list. If no list_id is passed, will return the count for the default list. For example
Tag Parameters
list_id
integer
The list id to count items from. If none supplied, will default to the default list.
{exp:shortlist:item_count list_id="8"}
all_lists
Pass a value of yes to return the item count across all a user's lists.
{exp:shortlist:item_count all_lists="yes"}
You have {exp:shortlist:item_count} items  (Will Output something like)  --> You have 4 items
{exp:shortlist:edit_list_form}
NEW IN 2.0 Used to create a form to allow user's to edit the basic attributes of their lists. Specifically, they can update the {list_title}, {list_url_title}, {list_url_title_start} and {list_url_title_end}.
Tag Parameters
list_id
required
The List to edit.
{exp:shortlist:edit_list_form list_id="6"}
form_class
Optional class to apply to the form
{exp:shortlist:edit_list_form form_class=""}
form_id
integer
Optional id to apply to the form
{exp:shortlist:edit_list_form form_id="6"}
data
{exp:shortlist:edit_list_form data="val"}
Variables
list_title
The current title of the list
{list_title}
list_description
The current list_description of the list
{list_description}
list_url_title
The current list_url_title of the list
{list_url_title}
list_url_title_start
The current list_url_title_start of the list
{{list_url_title_start}}
list_url_title_end
The current list_url_title_end of the list
{list_url_title_end}
make_default_url
The url to set this list as the default list.
{make_default_url}
clear_list_url
The url to clear the entire contents of this list.
{clear_list_url}
remove_list_url
The url to remove the entire list.
{remove_list_url}
{exp:shortlist:auto_clear}
ADDED IN 2.2 Automatically clears a user's list as soon as parsed. Basically the same as if a user had visited the link generated using the {exp:shortlist:clear} tag. Useful if you need to automatically clear a list contents when a user visits a certain page. Can also optionally redirect the user after clearing. By default this tag will clear the current user's default list unless a 'list_id' param is passed. If you want to clear all lists for a user, use the {exp:shortlist:auto_clear_all} tag instead. This tag returns nothing, and can be placed anywhere in your template.
Tag Parameters
list_id
integer
Optionally specify a specific list to clear. If none passed, the user's current default list will be cleared. Only lists actually owned by the current user will be cleared.
{exp:shortlist:auto_clear list_id="88"}
return
string
Optionally redirect a user after clearing the list
{exp:shortlist:auto_clear return="put me here"}
{exp:shortlist:auto_clear_all}
ADDED IN 2.2 Automatically clears all list as soon as parsed. Basically the same as if a user had visited the link generated using the {exp:shortlist:clear_all} tag. If you want to clear just a specific list for a user, use the {exp:shortlist:auto_clear} tag instead. This tag returns nothing, and can be placed anywhere in your template.
Tag Parameters
return
string
Optionally redirect a user after clearing the list
{exp:shortlist:auto_clear_all return="put me here"}
{exp:shortlist:item_in_list}
A useful helper tag to let you test to see if a specific item is in a specific list for the current user. Great if you're using Shortlist with a few automatic lists and want to change the behavior of your templates if an item is in certain lists. Note: Either the item_id or entry_id parameters are required to specify which entry to check. Also, at least one of the list_.. params is required to specify the list to check This tag return 'yes' if the item is the corresponding list, or 'no' in all other cases (including if the list or item is invalid)
Tag Parameters
item_id
integer
The item_id to test
{exp:shortlist:item_in_list item_id="5"}
entry_id
integer
The entry_id to test
{exp:shortlist:item_in_list entry_id="3"}
list_id
string
The list_id to test
{exp:shortlist:item_in_list list_id="8"}
list_name
string
The list_name to test
{exp:shortlist:item_in_list list_name="name"}
list_url_title
string
The list_url_title to test
{exp:shortlist:item_in_list list_url_title="test"}
list_url_title_start
The list_url_title_start to test
{exp:shortlist:item_in_list list_url_title_start}
list_id
integer
The list_url_title_end to test
{exp:shortlist:item_in_list list_id="44"}
{exp:shortlist:list_count}
added in 2.4 A useful helper tag to quick return the count of lists for the current user. Takes no parameters ADDED IN 2.4
Tag Parameters
{exp:shortlist:add_form}
ADDED in 2.5 A form version of the {exp:shortlist:add} tag. Great if you need to be able to set some values dynamically based on user input. Accepts 'form_class' and 'form_id' parameters to control class/ids on the form. Also you can pass arbitrary data attributes as params liks 'data:key=val' Where you'd set the values for the {exp:shortlist:add} tag as parameters, simply add them here as form inputs.
Tag Parameters
{exp:shortlist:remove_form}
added in 2.5 A form version of the {exp:shortlist:remove} tag. Great if you need to be able to set some values dynamically based on user input. Accepts 'form_class' and 'form_id' parameters to control class/ids on the form. Also you can pass arbitrary data attributes as params liks 'data:key=val'Where you'd set the values for the {exp:shortlist:remove} tag as parameters, simply add them here as form inputs.
Tag Parameters
{exp:shortlist:add_list_form}
ADDED IN 2.5 A form version of the {exp:shortlist:add_list} tag. Great if you need to be able to set some values dynamically based on user input. Accepts 'form_class' and 'form_id' parameters to control class/ids on the form. Also you can pass arbitrary data attributes as params liks 'data:key=val' Where you'd set the values for the {exp:shortlist:add_list} tag as parameters, simply add them here as form inputs.
Tag Parameters
{exp:shortlist:item_form}
ADDED IN 3.0 A form to let you set any additional content per list item. Simply named your extra details prefixed with 'extra:..'. For example, if you wanted to let your users keep per-item notes, you could have a field called 'extra:notes', or quantities with a field called 'extra:qty'. The values saved here will be available in the other shortlist tags with the same name, ie. {extra:notes} or {extra:qty} etc.. Note: Only the owner of a list item can change these values. Shortlist will reject any attempts to change the values by any one other than the list/item owner.
Tag Parameters
item_id
integer
The item_id for the item to update. Pass this if you're using the form to update a single item's extra fields on it's own. Otherwise if using for bulk extra fields across a few items it can pick up the item id from the input naming
{exp:shortlist:item_form item_id="6"}
form_class
Optionally set the form class
{exp:shortlist:item_form form_class="class"}
form_id
integer
Optionally set the form id
{exp:shortlist:item_form form_id="8"}
data
An extensible way to add arbitrary data attribute to the generated form tag. Will be converted and added to the form tag like : 'data-key=val
{exp:shortlist:item_form data="input"}
return
Optionally set the return url. If not set, will default to the current url
{exp:shortlist:item_form return="url to put the user"}
{exp:shortlist:store_track_item}
ADDED IN 3.4.0 A special tag to help integrate Shortlist with Expresso Store for using Shortlist as a product wishlist. Add this tag within a your {exp:store:product} tag pair to enable item tracking in baskets. When the item is added as a product to the user's cart we keep a marker and update the original item to show when it's been purchased. See full details on using Shortlist with Expresso Store Note: Also requires adding 'input:shortlist_track_item=WishlistID to the wrapping store:product tag
Tag Parameters
item_id
required
integer
The item_id for the item, from the shortlist loop.
{exp:shortlist:store_track_item item_id="5"}
example
With this in place you'll have two new extra attributes on shortlist items you can test against. {extra:store_purchased} - a bool value to show if this has been purchased, and {extra:store_order_id} - the order id if it has been purchased.
{{exp:shortlist:view}
<h3>Wishlist</h3>
{exp:store:product entry_id="{entry_id}" input:shortlist_track_item="WishlistID"}

    <h2>{title} - {price}</h2>

    {exp:shortlist:store_track_item item_id="{item_id}"}

    <input type="submit" name="submit" value="Add to Cart"/>

{/exp:store:product}
{/exp:shortlist:view}}

Support

Having problems setting up and/or using Shortlist? Support is offered from 10am to 4pm EST weekdays. Send us an email at help@eeharbor.com and we will respond as quickly as we can.

loading