Toute l'actualité du CMS TYPO3, typoscripts, extensions, liens et téléchargements
Nous sommes le 21/11/2008
Snippets pour l'extension tx_commerce
Générer une arborescence depuis un ID de catégorie
En admettant que lib.product_listing est appelé par un marqueur dans un gabarit d'une page TYPO3 :
lib.myMenu = COA
lib.myMenu {
10 = HMENU
10 {
# Appel d'une fonction dédiée depuis l'extension tx_commerce
special = userfunction
special.userFunc = user_tx_commerce_catmenu_pub->init
special {
# id de la catégorie de départ (important !)
category = 2
# On affiche ou non les produits / Ici, seulement les catégories
showProducts = 0
overridePid = {$plugin.tx_commerce_lib.overridePid}
expandAll = 1
}
wrap = <ul>|</ul>
1 = TMENU
1.NO.wrapItemAndSub = <li>|</li>
2 = TMENU
2.NO.wrapItemAndSub = <li>|</li>
}
}
# Récupération de l'arborescence dans le typoscript appelé par le marqueur
lib.product_listing < lib.myMenu
Méthode alternative pour récupérer les produits d'une catégorie (sans passer par une librairie).
10 = CONTENT
10 {
table = tx_commerce_categories
select {
// Dossier système des catégories
pidInList = 84
// Où xyz est l'id de la catégorie
andWhere = parent_category = xyz
// Si récupération depuis un champ FCE de templavoila {field:monchamp_fce}
//andWhere.insertData = 1
orderBy = sorting
}
renderObj = COA
renderObj {
10 = TEXT
10.field = title
10.typolink.parameter.data = TSFE:id
10.typolink.additionalParams.dataWrap = &tx_commerce_pi1[catUid]={field:uid}
10.typolink.useCacheHash = 1
10.wrap = <li>|</li>
}
wrap=<ul>|</ul>
}
Ajouter un lien vers la page détail (en savoir plus)
plugin.tx_commerce_pi1.listView.products.fields {
title >
title = TEXT
# Ajoute un lien en savoir plus après le titre
title {
setContentToCurrent = 1
# title
prepend = TEXT
prepend.current = 1
# Lien vers la page de détail
cObject = TEXT
cObject.value = En savoir plus
wrap = <div class="une_classe"> |</div>
typolink.setCommerceValues = 1
typolink.useCacheHash = 1
}
}
Récupérer en Typoscript le titre et le sous-titre d'un produit
title.cObject = RECORDS
title.cObject {
source = {GPvar:tx_commerce_pi1|showUid}
source.insertData = 1
tables = tx_commerce_products
conf.tx_commerce_products >
conf.tx_commerce_products = COA
conf.tx_commerce_products {
10 = TEXT
10.field = title
10.noTrimWrap = || – |
20 = TEXT
20.field = subtitle
20.wrap = |
}
}
Ou le titre plus simplement ...
lib.productTitle = TEXT
lib.productTitle {
dataWrap = DB:tx_commerce_products:{GPvar:tx_commerce_pi1|showUid}:title
wrap3 = <h5>Produit : {|}</h5>
insertData = 1
}
Les derniers snippets :
Titre d'une page en image
Afficher le titre d'une page avec GIFBUILDER
Extension tx_commerce
Quelques codes sympathiques sur l'extension tx_commerce, une solution concurrente à tt_product (shop)