-
Notifications
You must be signed in to change notification settings - Fork 7
Marker
Use the extension fh_debug and insert a debug line into your file class.tx_ttproducts_basket_view.php to see your example values of the markers.
debug ($markerArray, '$markerArray');
You can add multiple additional texts to each product together with a marker suffix, e.g. "MYMARKER". The contents of the text has the marker
###PRODUCT_TEXT_MYMARKER###
.
The title has the marker
###PRODUCT_TEXT_MYMARKER_TITLE###
These and many more markers are stored in the file tt_products/marker/locallang.xml and the language file tt_products/marker/de.locallang.xml.
<label index="basket_goto">Go to shopping cart.</label> <label index="basket_into">Into the shopping cart.</label> <label index="basket_into_input_type">Send</label> <label index="basket_mini_empty">Shopping cart is empty</label>
More language files can be found in the extension addons_tt_products. In the meantime they are already copied to the TYPO3 translation server. See the tt_products setup.txt file for some markers with address and account information which you must overwrite for your shop.
Use the setup
plugin.tt_products.marks { basket_goto = Go to the basket mymarker = my self defined marker content }
to fill in the contents of the marker ###MYMARKER###. Use the language specific conditions around it to support multiple languages:
[globalVar = GP:L = 1]
- selector for a delivery address (pick_store):
###DELIVERY_STORE_SELECT###
These markers are generally used as the destination of a form.
<form method="post" action="###FORM_URL###"> ... </form>
- ###FORM_URL### (url is determined by the used plugin)
- ###FORM_URL_AGB### (PIDagb, agb page)
- ###FORM_URL_BASKET### (PIDbasket, basket page)
- ###FORM_URL_BILLING### (PIDbilling, billing page)
- ###FORM_URL_CURRENT### (the url of the current page)
- ###FORM_URL_DELIVERY### (PIDdelivery, delivery page)
- ###FORM_URL_FINALIZE### (PIDfinalize, finalize page)
- ###FORM_URL_INFO### (PIDinfo, info page)
- ###FORM_URL_MEMO### (PIDmemo, memo page)
- ###FORM_URL_PAYMENT### (PIDpayment, payment page)
- ###FORM_URL_SEARCH### (PIDsearch, search page)
- ###FORM_URL_THANKS### (PIDthanks, order thanks page)
- ###FORM_URL_TRACKING### (PIDtracking, tracking page)
- ###FORM_URL_USER1### (PIDuser1, 1 .. 5 user defined page)
###FORM_URL_BASKET_VALUE###
Hint: There exists no marker ###FORM_URL_SINGLE### based on pidItemDisplay. This is because this setup can be complex and turn out to be different for every product. Use the marker ###URL_ITEM### in item lists instead.
Pay attention that the following markers only work inside of a SINGLE view subpart. For example between the <!-- ###ITEM_SINGLE### --> subpart marker borders.
###PRODUCT_<fieldname>###
<fieldname> is the name of the database table field in capital letters. see image, price
Use this marker scheme also for articles "ARTICLE", categories "CATEGORY", front end users "FEUSER" and orders "ORDER". Open the file ext_tables.sql of tt_products to see all the field names which correspond to their markers. You get the meanings of each field if you open the record from the backend module LIST menu of TYPO3.
E.g. ###ARTICLE_TITLE###
###CATEGORY_SUBTITLE###
###ORDER_TRACKING_NO###
###ARTICLE_<fieldname>###
see product
###CATEGORY_<fieldname>###
see product
###FEUSER_<fieldname>###
see product
###FEUSER_TOTAL_DISCOUNT###: (v 3.0.0)
The discount assigned to a front end user or to one of his front end user groups. No other discounts are included here. The former marker ###FE_USER_TT_PRODUCTS_DISCOUNT### is deprecated.
###ORDER_<fieldname>###
see product
In the basket view you have reduced number of markers:
###ORDER_UID### order number: unique id of the order
###ORDER_DATE### order date
###ORDER_TRACKING_NO### tracking number of the order
###ORDER_BILL_NO### bill number (Only available if the bill is generated automatically.)
Use the constants separateImage=1 to show the product images with their own markers. Set limitImage=10 to allow 10 different image markers.
###PRODUCT_IMAGE1### Marker for the first image of the product.
###PRODUCT_IMAGE2### Marker for the second image of the product. Change the number to get the marker for the further product images.
###PRODUCT_IMAGE### Marker for all images of the product. Use the constants separateImage=0 to show the product images as one single image.
###ARTICLE_IMAGE1### Marker for the first image of the product which can be overridden by the image of a chosen article variant.
###PRODUCT_IMAGE1:D###
Marker for the first image of a product which has its own setup:
conf.tt_products.ALL.image.d { ... }
There are different markers available. The article markers will be used for the corresponding product, if no article has been assigned to the product. tt_products ships with 2 price fields. You can write enhancing extensions which add many more price fields. For products you can also add the "PRODUCT_" prefix to each price marker. An article marker will show the product when no article has been assigned to a product. If you use discounts, then you must use the price markers without a PRODUCT or an ARTICLE prefix.
- Calculated with discounts
###PRICE_TAX### ###PRICE2_TAX###: Gross price with added tax
###PRICE_NO_TAX### ###PRICE2_NO_TAX###: Net price without any tax
###PRICE_ONLY_TAX### ###PRICE2_ONLY_TAX###: Amount of tax
###OLD_PRICE_TAX###: Former gross price with added tax - No discount has been removed.
###OLD_PRICE_NO_TAX###: Former net price without any tax - No discount has been removed.
###UNIT_PRICE_TAX###: Gross price per unit with added tax
###UNIT_PRICE_NO_TAX###: Net price per unit without any tax
###WEIGHT_UNIT_PRICE_TAX###: Gross price per weight unit with added tax
###WEIGHT UNIT_PRICE_NO_TAX###: Net price per weight unit without any tax
###PRICE_TAX_DISCOUNT### ###PRICE2_TAX_DISCOUNT###: Gross amount of a gained discount
###PRICE_TAX_DISCOUNT_PERCENT### ###PRICE2_TAX_DISCOUNT_PERCENT###: Percentage of a gained discount
- Calculated with credit points (v2.13.0)
###PRICE_IF_DISCOUNTED_BY_CREDITPOINTS_NO_TAX###: Net price reduced by the value of the creditpoints for this article.
- Product
- Article
This includes the following display modes:
- "Basket: shopping cart, options",
- "Basket: overview",
- "Basket: collect addresses",
- "Basket: order review, payment",
- "Basket: order confirmation",
- "Orders: tracking",
- "Orders: list",
- "Orders: billing",
- "Orders: delivery"
- "Orders: downloads"
- sent order confirmation emails
- generated bill and delivery documents
###LINE_NO### (v3.0.0):
line number in the list of the items in the basket
You sometimes also have a PRICE2 marker which will give the value for the second price field. Many more price numbers can be supported by additional extensions.
###PRICE_GOODSTOTAL_TAX###, ###PRICE2_GOODSTOTAL_TAX###: total sum of the items with included tax
###PRICE_GOODSTOTAL_NO_TAX###, ###PRICE2_GOODSTOTAL_NO_TAX###: total sum of the items without any tax
###PRICE_GOODSTOTAL_ONLY_TAX###, ###PRICE2_GOODSTOTAL_ONLY_TAX###: tax of total sum of the items
###OLD_PRICE_GOODSTOTAL_TAX###: total sum of the items without any calculated discount
###OLD_PRICE_GOODSTOTAL_NO_TAX###: total sum without any tax of the items without any calculated discount
###PRICE_DISCOUNT_GOODSTOTAL_TAX###: discount for the total sum of the items with included tax
###PRICE_DISCOUNT_GOODSTOTAL_NO_TAX###: discount without any tax for the total sum of the items
###PRICE_TOTAL_TAX###: total sum of the items with shipping, handling and payment costs with included tax
###PRICE_TOTAL_NO_TAX###: total sum of the items with shipping, handling and payment costs without any tax
###PRICE_TOTAL_ONLY_TAX###: total tax of the items with shipping, handling and payment costs
###PRICE_TOTAL_TAX_CENT###
- same as ###PRICE_TOTAL_TAX###, however the value is multiplied by 100 (cents)
###PRICE_TOTAL_NO_TAX_WITHOUT_PAYMENT###: same as ###PRICE_TOTAL_NO_TAX###, however the payment has not been added
###PRICE_TOTAL_0_TAX###: total sum of the items with shipping, handling and payment costs with included tax for a reseller price number - e.g. from price2
###PRICE_VOUCHERTOTAL_TAX###: same as ###PRICE_TOTAL_TAX###, however the discount from a voucher code has been considered
###PRICE_VOUCHERTOTAL_NO_TAX###: same as ###PRICE_TOTAL_NO_TAX###, however the discount from a voucher code has been considered
###PRICE_VOUCHERGOODSTOTAL_TAX###: same as ###PRICE_GOODSTOTAL_TAX###, however the discount from a voucher code has been considered
###PRICE_VOUCHERGOODSTOTAL_NO_TAX###: same as ###PRICE_GOODSTOTAL_NO_TAX###, however the discount from a voucher code has been considered
###PRICE_VOUCHERTOTAL_TAX_CENT###: same as ###PRICE_TOTAL_TAX_CENT###, however the discount from a voucher code has been considered
###PRICE_TAXRATE_NAME1###, ###PRICE_TAXRATE_NAME2###: name of taxrate no. 1, 2
###PRICE_TAXRATE_TAX1###, ###PRICE_TAXRATE_TAX2###: taxrate percentage no. 1, 2
###PRICE_TAXRATE_TOTAL1###, ###PRICE_TAXRATE_TOTAL2###: total sum of the items, shipping, payment and handling costs with included tax for taxrate no. 1, 2
###PRICE_TAXRATE_GOODSTOTAL1###, ###PRICE_TAXRATE_GOODSTOTAL2###: total sum of the items with included tax for taxrate no. 1, 2
###PRICE_TAXRATE_ONLY_TAX1###, ###PRICE_TAXRATE_ONLY_TAX2###: total sum of the taxes for the items, shipping, payment and handling costs of taxrate no. 1, 2
###PRICE_TAXRATE_GOODSTOTAL_ONLY_TAX1###, ###PRICE_TAXRATE_GOODSTOTAL_ONLY_TAX2###: total sum of the taxes for the items of taxrate no. 1, 2
###NUMBER_GOODSTOTAL###: total number of items
###PRICE_PAYMENT_TAX###: costs for the payment with included tax
###PRICE_PAYMENT_NO_TAX###: costs for the payment without any tax
###PRICE_PAYMENT_ONLY_TAX###: tax for the payment
###PRICE_SHIPPING_TAX###: costs for the shipping with included tax
###PRICE_SHIPPING_NO_TAX###: costs for the shipping without any tax
###PRICE_SHIPPING_ONLY_TAX###: tax for the shipping
###PRICE_HANDLING_10_TAX###: costs for the handling line 10 with included tax
###PRICE_HANDLING_10_TAX###, ###PRICE_HANDLING_20_TAX###: costs for the handling line 10, 20 with included tax
###PRICE_HANDLING_10_NO_TAX###, ###PRICE_HANDLING_20_NO_TAX###: costs for the handling line 10, 20 with without any tax
###PRICE_TAX_DISCOUNT###: discount with included tax
###PRICE_VAT###: calculated tax sum
###URL_ITEM###: link to the product single view (v3.0.0)
###CURRENT_PAGE###: current page number
###TOTAL_PAGES###: total number of pages
###BROWSE_LINKS###: page browser
###IMAGE_BASKET###: (basket icon image)
###HIDDENFIELDS###: (hidden entry fields will show up here)
External extensions can be called by special markers with underlying TypoScript. These markers are only valid inside of the subpart ###ITEM_SINGLE_DISPLAY### or inside of the subpart ###ITEM_SINGLE### which is itself inside of several other subparts.
The ratings extension provides the rating of each product.
###RATING###: ratings extension
The tt_board extension provides the commenting of each product.
###COMMENT###: tt_board extension
A subpart marker has the following format
Here comes the example text which only shows up inside of the example subpart marker.
###BASKET_TEMPLATE###: (Basket: shopping cart, options)
###BASKET_INFO_TEMPLATE###: (Basket: collect addresses)
###BASKET_OVERVIEW_TEMPLATE###: (Basket: overview)
###BASKET_PAYMENT_TEMPLATE###: (Basket: order review, payment)
###BASKET_ORDERCONFIRMATION_TEMPLATE###: (Basket: order confirmation if no ###BASKET_ORDERTHANKS_TEMPLATE### is available. This part will be stored for the tracking. It is sent as an email, if ###EMAIL_HTML_TEMPLATE### missing.)
###BASKET_ORDERTHANKS_TEMPLATE###: (Basket: order confirmation)
###BASKET_ORDERCONFIRMATION_NOSAVE_TEMPLATE###: (Basket: order confirmation. This part will not be stored for the tracking.)
###BASKET_ORDERXML_TEMPLATE###: (Basket: order confirmation will generate a XML file)
###EMAIL_PLAINTEXT_TEMPLATE###: (Basket: order confirmation email in plain text format sent to customer or also to shop.)
###EMAIL_PLAINTEXT_TEMPLATE_SHOP###: (Basket: order confirmation email in plain text format sent to shop.)
###EMAIL_HTML_TEMPLATE###: (Basket: order confirmation email in HTML format sent to customer or also to shop.)
###EMAIL_HTML_TEMPLATE_SHOP###: (Basket: order confirmation email in HTML format sent to shop.)
###TRACKING_TEMPLATE###: (Tracking: Part of the complete order)
###BILL_TEMPLATE###: (Orders: billing)
###DELIVERY_TEMPLATE###: (Orders: delivery)
###BILL_PDF_HEADER_TEMPLATE###: (attach PDF: header of billing)
###BILL_PDF_TEMPLATE###: (attach PDF: main part of billing)
###BILL_PDF_FOOTER_TEMPLATE###: (attach PDF: footer of billing)
###DELIVERY_PDF_HEADER_TEMPLATE###: (attach PDF: header of delivery)
###DELIVERY_PDF_TEMPLATE###: (attach PDF: main part of delivery)
###DELIVERY_PDF_FOOTER_TEMPLATE###: (attach PDF: footer of delivery)
###MESSAGE_MINQUANTITY_ERROR###: Error message subpart if less than the minimum quantity of a product has been put into the basket
###MESSAGE_MAXQUANTITY_ERROR###: Error message subpart if more than the maximum quantity of a product has been put into the basket
###MESSAGE_ERROR###: Error message subpart shown if an error message has been generated.
###MESSAGE_NO_ERROR###: Error message subpart shown if no error message has been generated.
###CHECKBOX1_CHECKED###: If the basket checkbox no. 1 with the name "recs[delivery][checkbox1]" has been checked. (v3.0.0)
###IS_DOWNLOAD###: If a download object with an assigned FAL record has been related to a product and a combination of both has been put into the basket. (v3.0.0)
###ITEM_LIST_RELATED_TEMPLATE###: (Products: related products) replaces ###PRODUCT_RELATED_UID###
###ITEM_LIST_ACCESSORY_TEMPLATE###: (Products: related accessory products) replaces ###PRODUCT_ACCESSORY_UID###
###ITEM_LIST_RELATED_BY_SYSTEMCATEGORY_TEMPLATE###: (Products: related products by system category. v2.12.0) replaces ###PRODUCT_RELATED_SYSCAT###
###MEMO_TEMPLATE###: (Products: memo)
###ITEM_LIST_DOWNLOADS_TEMPLATE###: (Orders: downloads)
###LINK_ITEM###: link to the item (product) single view
###ITEM_CATEGORY_AND_ITEMS###: repeated part in the list view: category with all products from this category. Only the following format for integrated subparts is supported:
###LINK_NEXT### next products page
###LINK_PREV### next products page
###LINK_BROWSE### browser framework area with special browser markers (###BROWSE_LINKS###). It is recommended to activate the former pi_base browser which comes with the extension div2007: "plugin.tt_products.conf.tt_products.LIST.view.browser = div2007".
###ITEM_LIST_RELATED_ARTICLES_TEMPLATE### (Products: related articles)
###ARTICLE_LIST_TEMPLATE### (Articles: list)
###ITEM_SINGLE_DISPLAY### (Products: single view)
###ITEM_SINGLE_DISPLAY_RECORDINSERT### (Products: single inserted product)
###CATEGORY_SINGLE_DISPLAY### (Categories: single)
###ITEM_SEARCH### (Products: search)
###TRACKING_DISPLAY_INFO### (The main subpart for the tracking which contains subsections)
###TRACKING_ENTER_NUMBER### (Displays form for entering the tracking number or the admin code)
###TRACKING_EMAILNOTIFY_TEMPLATE### (Email notification for changes in the tracking status)
###TRACKING_TEMPLATE###: see Basket
###ORDERS_LIST_TEMPLATE###
###DOWNLOAD_LIST_TEMPLATE###
###ITEM_CATLIST_TEMPLATE### (Categories: list)
###ITEM_CATEGORY_SELECT_TEMPLATE### (Categories: select)
###ITEM_CATEGORY_MENU_TEMPLATE### (Categories: menu)
###ITEM_DAMCATLIST_TEMPLATE### (DAM Categories: list)
###ITEM_DAMCATSELECT_TEMPLATE### (DAM Categories: select)
###ITEM_DAMCATMENU_TEMPLATE### (DAM Categories: menu)
###ITEM_ADLIST_TEMPLATE### (Addresses: list)
###ITEM_ADDRESS_SELECT_TEMPLATE### (Addresses: select)
###ITEM_ADDRESS_MENU_TEMPLATE### (Adresses: menu)
###BASKET_ORDERCONFIRMATION_NOSAVE_TEMPLATE###
###EMAIL_NEWUSER_TEMPLATE### (Basket: order confirmation. Notification email for automatically created FE user in plain text format.)
###EMAIL_HTML_SHELL### (Basket: order confirmation. Template for the generation of the order confirmation email in HTML format.)
###BILL_PDF_HEADER_TEMPLATE###
###BILL_PDF_TEMPLATE###
###BILL_PDF_FOOTER_TEMPLATE###
###TRANSACTOR_FORM_TEMPLATE### (Basket: order review, paymen. Used as a base for extensions based on the Trasactor API)
###MEMO_NOT_LOGGED_IN### (If the MEMO list requires a login and when no FE user is logged in)
###MEMO_EMPTY### (If no products have been put to the MEMO list)
###ITEM_SEARCH_EMPTY### (If the search does not find anything)
###ITEM_LIST_EMPTY### (If the filtered product list has no result.)
###ITEM_ADLIST_TEMPLATE_EMPTY### (If the filtered address list has no result.)
###BASKET_OVERVIEW_EMPTY### (If the basket is empty and the overview plugin is active.)
###BASKET_TEMPLATE_EMPTY### (If the basket is empty and the basket plugin is active.)
###BASKET_REQUIRED_INFO_MISSING### (If a required field for the order has not been given.)
###TRACKING_WRONG_NUMBER### (If the given tracking number is invalid.)
###ERROR_TEMPLATE### (If a general internal error has occurred)
###BASKET_TEMPLATE_NOT_LOGGED_IN### (If the basket is only shown to logged in FE users and no user is logged in.)
###BASKET_TEMPLATE_MINPRICE_ERROR### (If the basket's minimum price sum has not been reached.)
###FE_GROUP_1_TEMPLATE### (If a FE user is logged in which is a member of the FE group with id 1)
###LOGIN_TEMPLATE### (If any FE user is logged)
###NOLOGIN_TEMPLATE### (If no FE user is logged)
This can be the item part inside of the list view or single view. All subpart markers are in capital letters. For articles use the form ###ARTICLE_...### instead of ###PRODUCT_...### and for the current front end user (only tt_products >= 2.12.0) the prefix is FEUSER which results in ###FEUSER_...### .
- Conditional subpart marker
- Field name: name of the field in the table tt_products
- Condition: The Javascript 2 character condition.
'EQ' => '==', 'NE' => '!=', 'LT' => '<', 'LE' => '<=', 'GT' => '>', 'GE' => '>='
- Value: integer value for comparison
- Example:
- Value: integer value for comparison
*** AKTION ***
*** Offer ***
Nicht mehr auf Lager!
Is not on stock.
Ist auf Lager!
Is on stock.
- Child subpart marker
- Field name: name of the field in the table tt_products which has a relation to another table.
- Number: A counter for the items from 1 to n.
- Example:
- No Child subpart marker
- Field name: name of the field in the table tt_products which has a relation to another table.
- Example:
- Empty (v2.12.0)
- Field name: name of the field in the table tt_products.
- Example:
- Not empty (v2.12.0)
- Field name: name of the field in the table tt_products.
- Example:
- with variants (v3.0.0)
- Example:
- without variants (v3.0.0)
- Example:
- front end user has discount (v3.0.0)