Pagina 1 di 1

modifica grafica prodotti in vetrina

Inviato: 04/11/2007, 18:17
da Homer
Ciao a tutti, volevo sapere se e come era possibile modificare la grafica dei prodotti in vetrina (vedi allegato). Attualmente la mia struttura conserva le impostazioni di quella di osCommerce originale (nell'allegato è "Prima"), cioè una miniatura del prodotto, sotto la descrizione e sotto ancora il prezzo, beh, onestamente mi sembra un pò troppo "appiccicato", mi piacerebbe staccare un pò ed abbellire ulteriorimente. In giro per il web ho visto che molti fanno delle cose belline (nell'allegato è "Dopo"), inanizi tutto dividono il nome del prodotto dal prezzo è poi ci aggiungono altri elementi grafici più dei pulsanti...volevo sapere se e come era possibile fare un qualcosa di simile all'immagine che ho allegato ("Dopo") e se proprio fosse una cosa complicata, almeno potrei provare a dividere il nome del prodotto, mettendolo sopra, e lasciando il prezzo sotto, con colori e dimensioni diversi, senza aggiungere la cornice e i pulsanti, certo fare tutto sarebbe il massimo, ma se proprio risulta difficile mi potrei accontentare anche solo di questo...come si fa? su quali files devo metter mano?


ALLEGATO:

Immagine

Re: modifica grafica prodotti in vetrina

Inviato: 04/11/2007, 18:30
da loris_ripa
Homer ha scritto:Ciao a tutti, volevo sapere se e come era possibile modificare la grafica dei prodotti in vetrina (vedi allegato). Attualmente la mia struttura conserva le impostazioni di quella di osCommerce originale (nell'allegato è "Prima"), cioè una miniatura del prodotto, sotto la descrizione e sotto ancora il prezzo, beh, onestamente mi sembra un pò troppo "appiccicato", mi piacerebbe staccare un pò ed abbellire ulteriorimente. In giro per il web ho visto che molti fanno delle cose belline (nell'allegato è "Dopo"), inanizi tutto dividono il nome del prodotto dal prezzo è poi ci aggiungono altri elementi grafici più dei pulsanti...volevo sapere se e come era possibile fare un qualcosa di simile all'immagine che ho allegato ("Dopo") e se proprio fosse una cosa complicata, almeno potrei provare a dividere il nome del prodotto, mettendolo sopra, e lasciando il prezzo sotto, con colori e dimensioni diversi, senza aggiungere la cornice e i pulsanti, certo fare tutto sarebbe il massimo, ma se proprio risulta difficile mi potrei accontentare anche solo di questo...come si fa? su quali files devo metter mano?


ALLEGATO:

Immagine
Apri e modifica il modulo new_products.php, con un po' di css e html riesci a tirare fuori il risultato che vuoi ottenere.
:D

Inviato: 04/11/2007, 21:10
da Homer
Questo è il contenuto di new_products.php:

Codice: Seleziona tutto

<?php
  $info_box_contents = array();
  $info_box_contents[] = array('text' => sprintf(TABLE_HEADING_NEW_PRODUCTS, strftime('%B')));

  new contentBoxHeading($info_box_contents);

  if ( (!isset($new_products_category_id)) || ($new_products_category_id == '0') ) {
    $new_products_query = tep_db_query("select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
  } else {
    $new_products_query = tep_db_query("select distinct p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from " . TABLE_PRODUCTS . " p left join " . TABLE_SPECIALS . " s on p.products_id = s.products_id, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c, " . TABLE_CATEGORIES . " c where p.products_id = p2c.products_id and p2c.categories_id = c.categories_id and c.parent_id = '" . (int)$new_products_category_id . "' and p.products_status = '1' order by p.products_date_added desc limit " . MAX_DISPLAY_NEW_PRODUCTS);
  }

  $row = 0;
  $col = 0;
  $info_box_contents = array();
  while ($new_products = tep_db_fetch_array($new_products_query)) {
    $new_products['products_name'] = tep_get_products_name($new_products['products_id']);
    $info_box_contents[$row][$col] = array('align' => 'center',
                                           'params' => 'class="smallText" width="33%" valign="top"',
                                           'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>' . $currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id'])));

    $col ++;
    if ($col > 2) {
      $col = 0;
      $row ++;
    }
  }

  new contentBox($info_box_contents);
?>
...a dire la verità non è così semplice come farlo con l'html, onestamente io non saprei proprio come fare... :(

Inviato: 05/11/2007, 11:22
da loris_ripa
Mhmmm...senza avere minime conoscenze di html e css non è facile personalizzare OsC.
Fatti un'infarinatura qui:

www.html.it

Trovi molte informazioni utili.
La parte da modificare nel codice postato nel tuo messaggio è:

Codice: Seleziona tutto

$info_box_contents[$row][$col] = array('align' => 'center',
                                           'params' => 'class="smallText" width="33%" valign="top"',
                                           'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>' . $currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id']))); 
Ti prendi l'html del tuo "dopo", te lo studi e lo adatti al tuo codice.
Buon lavoro.
:D

Inviato: 05/11/2007, 13:15
da Homer
...no, ma io l'HTML e i css li conosco! ...il fatto è che quì nel PHP non capisco come fare le varie modifiche... :(

Inviato: 05/11/2007, 13:33
da loris_ripa
Homer ha scritto:...no, ma io l'HTML e i css li conosco! ...il fatto è che quì nel PHP non capisco come fare le varie modifiche... :(
Se conosci html e css devi solo farti coraggio e fare qualche prova...
Considera che ogni articolo nel modulo bew_products è inserito in un <td>, i cui parametri sono:

Codice: Seleziona tutto

'params' => 'class="smallText" width="33%" valign="top"', 
Il contenuto della cella è qui:

Codice: Seleziona tutto

'text' => '<a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . tep_image(DIR_WS_IMAGES . $new_products['products_image'], $new_products['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a><br><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $new_products['products_id']) . '">' . $new_products['products_name'] . '</a><br>' . $currencies->display_price($new_products['products_price'], tep_get_tax_rate($new_products['products_tax_class_id'])));
Come vedi è abbastanza facile riconoscere i tag html.
Buon lavoro!
:D :D :D

Inviato: 05/11/2007, 19:02
da Homer
...non c'è qualche trucchetto per rendere il tutto un pò più "visibile", tipo importare qualcosa nell'html, lavorarci e poi riportarlo su php? :D

Inviato: 05/11/2007, 20:23
da loris_ripa
Homer ha scritto:...non c'è qualche trucchetto per rendere il tutto un pò più "visibile", tipo importare qualcosa nell'html, lavorarci e poi riportarlo su php? :D
No...purtroppo non c'è altro modo.

info vetrina

Inviato: 28/11/2007, 16:13
da OSnew
Ciao
Io avevo fatto questa contrib con un pò di css e html per migliorare la vetrina:
puoi trovarla con screenshot dentro al file qui:
http://www.oscommerce.com/community/con ... +nuova+css

ciao

Inviato: 12/12/2007, 22:43
da dynamo
rispolvero questo topic perchè ho un problema con questa contributions :D

sull'oscommerce puro ho provato ad installarla ma mi esce questo errore...
Fatal error: Call to undefined function: display_price_nodiscount() in /var/www/netsons.org/dimo/includes/modules/new_products.php on line 37

Inviato: 12/12/2007, 23:21
da sara75
Cerca nel file new_products.php

Codice: Seleziona tutto

$currencies->display_price_nodiscount($new_products['products_price']
e lo sostituisci con

Codice: Seleziona tutto

$currencies->display_price($new_products['products_price']

Inviato: 13/12/2007, 0:37
da dynamo
perfetto ora funziona... grazie mille :P