[TYPO3-UG Italy] extendedshop e traduzione prodotti

matteo.martini at webformat.com matteo.martini at webformat.com
Thu Oct 15 15:59:17 CEST 2009


Ciao Laura,
ho verificato i sorgenti dell'estensione ed effettivamente quando 
vengono generati i link per scorrere avanti e indietro i record dei 
prodotti non viene tenuto conto che per un prodotto possono essere 
presenti più record nel database, uno per ogni traduzione.

Per ovviare al problema dovresti modificare il codice nel file 
pi1/class.tx_extendedshop_pi1.php
Più precisamente nella funzione "getProduct" che dovrebbe alla riga 1106 
ad un certo punto troviamo (alla riga 1154):

1154        // Gestione "avanti" e "indietro"
1155        if ($detail) {
1156               $resAI = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', 
'tx_extendedshop_products', 'pid=' . (int)$row["pid"].' 
'.$this->cObj->enableFields('tx_extendedshop_products'), '', 'sorting', '');

e qui dovresti sostituire la riga 1156 con:

            $lingua = (int)$GLOBALS['TSFE']->sys_language_uid;
            $testLingua = "";
            if ($lingua > 0) {
                $res2 = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', 
'tx_extendedshop_products', 'sys_language_uid=' . $lingua . ' AND 
pid='.(int)$row["pid"].' 
'.$this->cObj->enableFields('tx_extendedshop_products'), '', 'sorting', '');
                $uidExclude = "";
                while ($row2 = 
$GLOBALS['TYPO3_DB']->sql_fetch_assoc($res2)) {
                    $uidExclude .= $row2['l18n_parent'] . ",";
                }
                $uidExclude = substr($uidExclude, 0, -1);
                $testLingua = "AND uid NOT IN (" . $uidExclude . ")";
                if ($uidExclude == "")
                    $testLingua = "";
                $testLingua .= " AND (sys_language_uid<=0 OR 
sys_language_uid=" . $lingua . ")";
            } else {
                $testLingua = "AND sys_language_uid<=0";
            }
            $resAI = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', 
'tx_extendedshop_products', 'pid=' . (int)$row["pid"].' '. $testLingua . 
' ' .$this->cObj->enableFields('tx_extendedshop_products'), '', 
'sorting', '');

Purtroppo non ho avuto modo di effettuare dei test con questa modifica. 
Fammi sapere se in questo modo il problema viene risolto!

Colgo l'occasione per far presente che è stata rilasciata la versione 3 
dell'extendedshop, anche se manca ancora il manuale.

Ciao!

Matteo

laures at libero.it ha scritto:
> Ciao a tutti,
>
> ho un problemino che mi sta creando un sacco di ritardo e proprio non lo riesco a risolvere.
>
> Sto traducendo il sito in inglese (italiano di default) secondo il metodo "one tree...concept". 
> Tutto bene fino alla sezione prodotti dove parte l'extended shop (webformat shop system versione 2.0.7). 
> A traduzione ultimata quando nel FE seleziono un prodotto per conoscerne i dettagli mi viene data anche la possibilità di digitare i tasti "avanti e indietro" o "previous and next" ma mi si mostrano indistintamente i prodotti in questo modo:
>
> prod1=tradotto_ita, prod1=tradotto_en, prod2=tradotto_ita, prod2=tradotto_en... in pratica non si seleziona la lingua impostata raddoppiandomi inutilmente i prodotti.
>
> Ho esplorato i vari files che lo compongono, ma la mia scarsa esperienza proprio non aiuta, sapreste per favore aiutarmi? 
>
> C'è qualcosa che devo fare di preciso per evitarlo? in caso contrario dovrò usare il sistema "2-trees" e creare 2 siti.....però mi sembra strano che l'ext non permetta la corretta selezione dei prodotti in base alla lingua.
>
> Grazie fin d'ora per qualunque risposta.
>
> Laura
>
>
> _______________________________________________
> TYPO3-UG-Italy mailing list
> TYPO3-UG-Italy at lists.netfielders.de
> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-ug-italy
>   



More information about the TYPO3-UG-Italy mailing list