Colonna che scompare in un template joomla

25 novembre 2010 — 12:31

Supponiamo di dover realizzare un template per Joomla! e di voler visualizzare una colonna nella pagina solo se in quella colonna sono presenti dei modulo attivi (per esempio un menu della sezione); in caso contrario, se niente è presente nella colonna, il contenuto della colonna principale si dovrà estendere per tutta la larghezza della pagina.

Ecco l’esempio di codice:

<?php if ($this->countModules( 'right' )) { ?>
    <div id="right">
       <jdoc:include type="modules" name="right" style="xhtml" />
    </div>
    <div id="center_small">
       <jdoc:include type="component" />
    </div>
<?php } else { ?>
    <div id="center">
       <jdoc:include type="component" />
    </div>
<?php } ?>

In questo caso se sono presenti moduli nella posizione ‘right’ allora vengono caricati il div ‘right’ e il div ‘center_small’; in caso contrario solamente il div ‘center’.

Formattiamo quindi con un minimo di foglio di stile (dando per scontato che tutto sia già incluso in un elemento contenitore):

div#right{
 float:right;
 width:240px;
}
div#center_small{
 margin-right:280px;
}

E’ possibile che ci siano altre soluzioni, anche più immediate. Comunque anche questa funziona!

1 commento » | Joomla!, Soluzioni, tips & tricks

Correzione modulo Prestashop COD with fee

31 agosto 2010 — 18:24

codwithfeeQualche tempo fa ho acquistato sul sito PrestaWorks l’ottimo modulo COD with fee per Prestashop, che permette di aggiungere una tassa in percentuale, con un minimo fisso, per l’acquisto di prodotti pagati con metodo in contrassegno. Spesso infatti i corrieri applicano una tariffa extra per questo tipo di pagamento. Bartolini, per esempio, applica un 2% sul totale dell’ordine, con un minimo dovuto di 5 euro.

L’acquisto del modulo è stato un azzardo: la compatibilità era garantita con Prestashop 1.2, ma già da qualche mese era stato rilasciato Prestashop 1.3.1 che avevo già configurato e personalizzato.

Nonostante ciò, tutto sembrava funzionare perfettamente, ma all’ultimo step dell’ordine, l’errore era impietoso:

Order -> total_products_wt is empty

La ricerca online di una soluzione non è stata semplice nè rapida. La comunità spagnola di Prestashop ha risolto il problema.

E’ necessario modificare il file cashondeliverywithfee.php nella cartella modules/cashondeliverywithfee inserendo la riga

$order->total_products_wt = floatval(Tools::convertPrice(floatval(number_format($cart->getOrderTotal(true, 1),2, ‘.’, ‘’)), $currency));

dopo la riga

$order->total_products = floatval(Tools::convertPrice(floatval(number_format($cart->getOrderTotal(false, 1), 2, ‘.’, ‘’)), $currency));

E con questo il problema viene risolto e il modulo funziona correttamente.

3 commenti » | Prestashop, Soluzioni, php

Scoprire il path assoluto del server

20 luglio 2010 — 12:35

puntoesclamativoSpesso capita di realizzare il proprio sito web in Joomla! sul computer locale (seguendo, per esempio, la procedura già descritta su questo blog ) e poi doverlo trasferire in remoto sul server definitivo.

Sappiamo di dover modificare il file configuration.php con i dati del database che conosciamo; meno ovvi sono invece i campi

var $log_path
var $tmp_path

che richiedono il percorso assoluto delle directory logs e tmp all’interno del server.

Per conoscere questo percorso è possibile creare un file php (per esempio path.php) con la seguente istruzione:

<?php
$path = getcwd();
echo "Il path assoluto è:<br>";
echo $path
?>

e caricalo sul server. La pagina richiamata digitando www.nomesito.it/path.php mostrerà il percorso assoluto del sito, a cui aggiungeremo “/log” per $log_path e “/tmp” per $tmp_path.

Commenta » | Joomla!, php, tips & tricks

Torna su

« Post precedenti