[Typo3-UG Italy] smile_categorization che usi una logica AND
Francesco di Francia
darksky77 at email.it
Mon May 23 19:40:25 CEST 2005
Salve connazionali,
qualcuno di voi conosce/utilizza l'estensione smile_categorization ?
A me servirebbe per assegnare più di una categoria ad uno stesso
articolo per poi riuscire con facilità a creare quei classici box del tipo :
"Altri articoli sullo stesso argomento"
Il problema di questa estensione è che utilizza una logica OR quando si
va a creare questi box di filtraggio/selezione. Vi faccio un esempio
considerando il topic del mio sito ( Wargame, strategici e storia
militare ).
Recensione Gioco X
Categorie assegnate:
1) Gioco
2) Wargame
3) Epoca medievale
Articolo di storia Militare Y
Categorie assegnate:
1) Articolo di Storia Militare
2) Epoca medievale
Ebbene, ipotizziamo di voler creare per la pagina contenente la
recensione del gioco X un box "altre recensioni di giochi ambientati
nella stessa epoca" ( quindi medievale ).
Le categorie da inserire per filtrare i link che compariranon nel box
dovrebbero essere:
1) Gioco
2) Epoca Medievale
Ebbene, il box funzionerebbe se le categorie fossero analizzate con un
AND e non con un OR di default. Per come funziona ora questa estenzione
( logica OR ) avrei un elenco di tutti i contenuti che abbiano almeno
UNA delle categorie usate per creare il box.
QUalcuno di voi sa come ovviare a questo inconveniente ?
Nel setup ho trovato questo
plugin.tx_smilecategorization_pi1 = CASE
plugin.tx_smilecategorization_pi1 {
key.field = tx_smilecategorization_plugin_display
# We used the display of TYPO 3 for complete contents
2 = CONTENT
2 < styles.content.get
2.table = tt_content
2.select {
pidInList = *
orderBy = sorting
whereCategoryIn = plugin
orderType = {$plugin.smile_categorization.orderType}
orderAsc = {$plugin.smile_categorization.orderAsc}
}
# We used a PHP function for a tree or abstracted contents.
default = USER
default.userFunc = tx_smilecategorization_pi1->main
default.templateFile = {$plugin.smile_categorization.templateFile}
default.abstractLength =
{$plugin.smile_categorization.abstractLength}
default.orderType = {$plugin.smile_categorization.orderType}
default.orderAsc = {$plugin.smile_categorization.orderAsc}
}
Forse whereCategoryIn c'entra qualcosa ?
Aprendo invece smile_categorization.php alla linea 153 ho trovato questo:
$where .=
'((tx_smilecategorization_categories='.$categories_array[$i].') OR
(tx_smilecategorization_categories LIKE
\'%,'.$categories_array[$i].',%\') OR (tx_smilecategorization_categories
LIKE \''.$categories_array[$i].',%\') OR
(tx_smilecategorization_categories LIKE \'%,'.$categories_array[$i].'\'))';
Ucci ucci sento odor di Hardcoducci. Il problema è che ho trovato altri
OR anche in altri file...non essendo un programmatore PHP non so dove
mettere le mani senza fare danni.
Grazie per l'aiuto.
More information about the TYPO3-UG-italy
mailing list