Pagina 1 di 2

Inserire header box differenti

Inviato: 19/11/2009, 17:06
da deltabiri
Salve, sto vedendo sempre piu spesso che si utilizza l'opzione di adottare differenti header per ogni box delle colonne laterali, ho trovato anche una contribution vecchissima del 2005 ma sembra troppo spartana...
In pratica volevo mettere delle immagini scritte e non degli sfondi alle scritte.
Come si procede?

Re: Inserire header box differenti

Inviato: 19/11/2009, 18:03
da dynamo
vai di css che è più semplice :D

Re: Inserire header box differenti

Inviato: 19/11/2009, 18:32
da deltabiri
dynamo ha scritto:vai di css che è più semplice :D
Nel css porto in gruppo tutta la colonna di sinistra e tutta quella di destra (posto il pezzo che ne riguarda)

Codice: Seleziona tutto

TD.LeftinfoBoxHeading {
	background: url(images/grafica/testa_box_sx.gif);
	height: 25px;
	width: 180px; /*dimensioni testa box di sinistra*/
}
TD.LeftinfoBoxHeading {
	background: url(images/grafica/testa_box_sx.gif);
	height: 25px;
	width: 180px; /*dimensioni testa box di sinistra*/
}
mentre questo e' il codice nei vari box che richiama la classe:

Codice: Seleziona tutto

new infoBoxHeading($info_box_contents, false, false, false, $column_location);
Se non sbaglio la classe va impostata da ..classes/boxes.php

Codice: Seleziona tutto

  class infoBoxHeading extends tableBox {
    function infoBoxHeading($contents, $left_corner = true, $right_corner = true, $right_arrow = false, $column_location = 'none') {
      $this->table_cellpadding = '0';

	#PR Set the tipe of CSS
	if ($column_location == 'left')
	{
		$infoBoxHeadingCSS = 'LeftinfoBoxHeading';
	}
	else if ($column_location == 'right')
	{
		$infoBoxHeadingCSS = 'RightinfoBoxHeading';	
	}
      else if ($column_location == 'center')
	{
		$infoBoxHeadingCSS = 'CenterinfoBoxHeading';	
	}

	else
	{
		$infoBoxHeadingCSS = 'infoBoxHeading';	
	}
	#PR END

      if ($right_arrow == true) {
        $right_arrow = '<a href="' . $right_arrow . '">' . tep_image(DIR_WS_IMAGES . 'infobox/arrow_right.gif', ICON_ARROW_RIGHT) . '</a>';
      } else {
        $right_arrow = '';
      }
      $info_box_contents = array();
      $info_box_contents[] = array(array('params' => 'width="100%" height="14" class="'.$infoBoxHeadingCSS.'"',
                                         'text' => $contents[0]['text'] . '  '. $right_arrow ) );

      $this->tableBox($info_box_contents, true);
    }
  }

  class contentBox extends tableBox {
    function contentBox($contents) {
      $info_box_contents = array();
      $info_box_contents[] = array('text' => $this->contentBoxContents($contents));
      $this->table_cellpadding = '1';
      $this->table_parameters = 'class="CenterinfoBox"';
      $this->tableBox($info_box_contents, true);
    }

    function contentBoxContents($contents) {
      $this->table_cellpadding = '0';
      $this->table_parameters = 'class="CenterinfoBoxContents"';
      return $this->tableBox($contents);
    }
  }

  class contentBoxHeading extends tableBox {
    function contentBoxHeading($contents) {
      $this->table_width = '100%';
      $this->table_cellpadding = '0';

      $info_box_contents = array();
      $info_box_contents[] = array( array('params' => 'height="14" valign="bottom" class="infoBoxHeading" width="100%"',
                                         'text' => $contents[0]['text']) );

      $this->tableBox($info_box_contents, true);
    }
  }
solo che qui mi perdo :roll:

Re: Inserire header box differenti

Inviato: 20/11/2009, 0:03
da dynamo
mah guardando così direi che devi fare così:

Codice: Seleziona tutto

<?php
  $info_box_contents = array();
  $info_box_contents[] = array('text' => BOX_HEADING_INFORMATION);

  new infoBoxHeading($info_box_contents, false, false, false, $column_location);
ho preso il codice di inizio di un qualsiasi box e lo fai diventare così

Codice: Seleziona tutto

<?php
$column_location='information';
  $info_box_contents = array();
  $info_box_contents[] = array('text' => BOX_HEADING_INFORMATION);

  new infoBoxHeading($info_box_contents, false, false, false, $column_location);
poi vai a modificare il codice in questo modo

Codice: Seleziona tutto

   		#PR Set the tipe of CSS
		if ($column_location == 'left')
		{
			$infoBoxCSS = 'infoBoxLeft';
			$infoBoxContentCSS = 'LeftinfoBoxContents';
		}
		else if ($column_location == 'right')
		{
			$infoBoxCSS = 'infoBoxRight';
			$infoBoxContentCSS = 'RightinfoBoxContents';	
		}
            else if ($column_location == 'center')
		{
			$infoBoxCSS = 'infoBoxCenter';
			$infoBoxContentCSS = 'CenterinfoBoxContents';	
		}
            else if ($column_location == 'information')
		{
			$infoBoxCSS = 'infoBoxinformation';
			$infoBoxContentCSS = 'CenterinfoBoxinformation';	
		}

		else
		{
			$infoBoxCSS = 'infoBox';	
			$infoBoxContentCSS = 'infoBoxContents';	
		}
		#PR END
e poi dai i valori CSS come più di aggrada :mrgreen:

Re: Inserire header box differenti

Inviato: 20/11/2009, 13:10
da deltabiri
Se modifico il file categorie.php mi cambia tutto uguale a tutti gli altri box :roll:

Re: Inserire header box differenti

Inviato: 20/11/2009, 13:25
da dynamo
mmm strano...

hai provato a modificare un altro box che non sia categories.php???

Re: Inserire header box differenti

Inviato: 20/11/2009, 17:10
da deltabiri
sempre piu strano, ho provato a cambiare il box, usando quello di "contatti" modificando questo si modifica anche il box "lingua" come mai? non dovrebbero essere collegati :roll:

Re: Inserire header box differenti

Inviato: 20/11/2009, 17:22
da deltabiri
ho capito l'errore ma non so risolverlo...praticamente succede l'effetto cascata:
se modifico categorie che e' il 1° box, tutti quelli sotto vengono modificati,
se modifico produttori che e' il 2° box tutti gli altri vengono modificati, tranne categorie che sta sopra...e cosi via dicendo

Re: Inserire header box differenti

Inviato: 20/11/2009, 21:58
da dynamo
mmm strano...

proviamo così

alla fine del box che vuoi modificare metti questo

Codice: Seleziona tutto

$column_location='';
così dovrebbe "resettare" la variabile e vediamo che succede

Re: Inserire header box differenti

Inviato: 23/11/2009, 9:36
da deltabiri
non chiude nemmeno cosi....rimane il problema

Re: Inserire header box differenti

Inviato: 23/11/2009, 12:00
da dynamo
mi sembra strano... dovrò fare delle prove poi ti faccio sapere ;)

Re: Inserire header box differenti

Inviato: 24/11/2009, 12:52
da hsg26
http://addons.oscommerce.com/info/6378 io uso questa.. sono i box tradizionali, messi in formato divs + css. Poi usando la base di uno di quelli, potete ricreare tutti i box aggiuntivi che avete già. Il tutto resta molto più pulito, facile da modificare, con un codice più leggero.

Re: Inserire header box differenti

Inviato: 25/11/2009, 14:30
da favjola90
scusate , scrivo in questa discussione per non aprirne una nuova

sono nuovo di os

ma come gestisco i box laterali, dall'admin non vedo nulla per agire!!!!!

grazie

Re: Inserire header box differenti

Inviato: 25/11/2009, 14:31
da dynamo
infatti si agisce sul codice...

Re: Inserire header box differenti

Inviato: 25/11/2009, 15:11
da favjola90
!!!!
mi stai dicendo che se devo visualizzare o meno il box valuta , o il box categories si agisce sul codice?????

su quale file , anche se dubito sia molto comodo ....


grazie per la risposta comunque