Jump to content
xt:Commerce Community Forum

Produktliste In Mehreren Spalten


peeeters

Recommended Posts

hallo,

ist es mit dem neuen templatesystem auch m?glich, dass die Produkte in der Produkt?bersicht in z.b. drei spalten angezeigt werden. also so wie in der "Neue Produkte im November"-box, oder mu? daf?r der php-code angepasst werden?

wenn der code angepasst werden mu?: kann es dann zu problemen in zusammenarbeit mit dem templatesystem kommen?

sch?ne gr??e

p3e

Link to comment
Share on other sites

Originally posted by Hubi@Nov 25 2003, 19:06 PM

Das l?sst sich im Template realisieren.

Der PHP-Code ?bergibt ein Array mit Produktdaten ans Template, und das Template Zeigt diese dann an. Wie Die angezeigt werden, kann im Template festgelegt werden.

stimmt :)

ist ganz easy im template zu machen, da man auch im html template php code einbauen kann , und somit mit dem datenarray machen kann was man auch immer will.

das zb ein template f?r 2 spalten,


<table width="100%" border="0" cellspacing="0" cellpadding="0">

 <tr>

 {foreach name=aussen item=module_data from=$module_content}

 {php} $col++; 

 {/php}

  <td class="main"><div align="left">

    <table width="100%" border="0" cellpadding="0" cellspacing="4">

     <tr> 

      <td width="1" rowspan="2" ><a href="{$module_data.PRODUCTS_LINK}"><img src="{$module_data.PRODUCTS_IMAGE}" border="1"></a></td>

      <td class="main"><strong><a href="{$module_data.PRODUCTS_LINK}">{$module_data.PRODUCTS_NAME}</a></strong></td>

     </tr>

     <tr> 

      <td class="main">{$module_data.PRODUCTS_DESCRIPTION}<br> 

       <strong>{$module_data.PRODUCTS_PRICE}<br>

       </strong>{$module_data.BUTTON_BUY_NOW}<br>

      </td>

     </tr>


    </table>


   </div></td>

 {php} 


 if ($col>=2) {

 $col=0;

 echo '</tr><tr>';

 }

 {/php}

 {/foreach} 

 </tr>

</table>

und das ein template f?r eine liste.

<table width="100%" border="0" cellspacing="0" cellpadding="0">

 <tr> 

  <td> <div align="center"> 

    <table width="100%" border="0">

     {foreach name=aussen item=module_data from=$module_content} 

     <tr> 

      <td width="1" rowspan="2" style="border-bottom: 1px solid; border-color: #cccccc;"><a href="{$module_data.PRODUCTS_LINK}"><img src="{$module_data.PRODUCTS_IMAGE}" border="1"></a></td>

      <td class="main"><strong><a href="{$module_data.PRODUCTS_LINK}">{$module_data.PRODUCTS_NAME}</a></strong></td>

     </tr>

     <tr> 

      <td style="border-bottom: 1px solid; border-color: #cccccc;" class="main">{$module_data.PRODUCTS_DESCRIPTION}<br> 

       <strong>{$module_data.PRODUCTS_PRICE}<br>

       </strong>{$module_data.BUTTON_BUY_NOW}</td>

     </tr>

     {/foreach} 

    </table>

   </div></td>

 </tr>

</table>

dem php file ist es also total egal ;) was du in dem template mit dem array machst, da gibs keine grenzen.

Link to comment
Share on other sites

:grml: :stupid: jetzt habt ihr meinen horizont mal wieder um ein st?ck erweitert! - DANKE

ich hatte noch gar nicht ?ber die vielen m?glichkeiten nachgedacht, die erreicht werden k?nnen, wenn man in den templates php einsetzt. habe immer nur an reines html gedacht.

da freu ich mich aber auf die neue beta :bounce:

gr??e p3e

Link to comment
Share on other sites

  • 4 weeks later...

Also soweit hab ich das ja kapiert (hoff ich), aber eines bekomme ich um's verrecken nicht hin...

Wenn ich mir die neuen Produkte anzeigen lasse (products_new.php), wird diese immer nur einspaltig angezeigt, obwohl meine products_new.html genauso aussieht wie oben beschrieben. Auch die new_products_overview.html (wof?r immer die auch gut sein mag) ist so aufgebaut...

Wieso bekomme ich die neuen Produkte nicht zweispaltig hin ??? :wall:

Link to comment
Share on other sites

Also mein Cache ist deaktiviert (false), und hier ist der Code meiner new_products.html (templates/xtc/modules/new_products.html - nur dass wir auch von der gleichen Datei reden...) :blink:


{config_load file="$language/lang_$language.conf" section="new_products"} 

<table width="100%" border="0" cellpadding="0" cellspacing="0">

 <tr>

  <td class="infoBoxHeading">{#heading_text#} </td>

 </tr>

</table>

<br>

<br>

<table width="100%" border="0" cellspacing="0" cellpadding="0">

 <tr>

 {foreach name=aussen item=module_data from=$module_content}

 {php} $col++; 

 {/php}

  <td class="main"><div align="left">

    <table width="100%" border="0" cellpadding="0" cellspacing="4">

     <tr> 

      <td width="1" rowspan="2" ><a href="{$module_data.PRODUCTS_LINK}"><img src="{$module_data.PRODUCTS_IMAGE}" border="1"></a></td>

      <td class="main"><strong><a href="{$module_data.PRODUCTS_LINK}">{$module_data.PRODUCTS_NAME}</a></strong></td>

     </tr>

     <tr> 

      <td class="main">{$module_data.PRODUCTS_DESCRIPTION}<br> 

       <strong>{$module_data.PRODUCTS_PRICE}<br>

       </strong>{$module_data.BUTTON_BUY_NOW}<br>

      </td>

     </tr>


    </table>


   </div></td>

 {php} 


 if ($col>=2) {

 $col=0;

 echo '</tr><tr>';

 }

 {/php}

 {/foreach} 

 </tr>

</table>

Ich kapier das irgendwie nicht... :grml: :stupid: Die ist doch OK, oder nicht...???

Link to comment
Share on other sites

ich hab das mit der "product_listing_v1.html" probiert, aber der Schuss ging f?rchterlich nach hinten los, es ergab einfach nur ein heilloses Durcheinander mit den Tabellen

Hier mal ein Screenshot:

test.jpg

und hier der Quellcode:


{config_load file="$language/lang_$language.conf" section="index"} 

{ if $MANUFACTURER_DROPDOWN}

<table width="100%" border="0" cellspacing="0" cellpadding="0">

 ?<tr>

 ? ?<td class="main"><div align="right">{#text_show#} {$MANUFACTURER_DROPDOWN}</div></td>

 ?</tr>

</table>

<br> 

{/if}

<table width="100%" border="0" cellspacing="0" cellpadding="0">

 ?<tr> 

 ? ?<td> <div align="center"> 

 ? ? ? ?<table width="100%" border="0">

 ? ? ? ? ?{foreach name=aussen item=module_data from=$module_content} 

 ? ? ? ? ?<tr> 

 ? ? ? ? ? ?<td width="1" rowspan="2" style="border-bottom: 1px solid; border-color: #cccccc;"><a href="{$module_data.PRODUCTS_LINK}"><img src="{$module_data.PRODUCTS_IMAGE}" border="1"></a></td>

 ? ? ? ? ? ?<td class="main"><strong><a href="{$module_data.PRODUCTS_LINK}">{$module_data.PRODUCTS_NAME}</a></strong></td>

 ? ? ? ? ?</tr>

 ? ? ? ? ?<tr> 

 ? ? ? ? ? ?<td style="border-bottom: 1px solid; border-color: #cccccc;" class="main">{$module_data.PRODUCTS_SHORT_DESCRIPTION}<br> 

 ? ? ? ? ? ? ?<strong>{$module_data.PRODUCTS_PRICE}<br>

 ? ? ? ? ? ? ?</strong>{$module_data.BUTTON_BUY_NOW}<br>

 ?	</td>

 ? ? ? ? ?</tr>

 ? ? ? ?

 ? ? ? ?</table>

 ? ? ?</div></td>

 ?{php}

 ?

 ?if($col>=2) {

 ?$col=0;

 ?echo '</tr><tr>';

 ?}

 ?{/php}

 ?{/foreach}

 ?                  </tr>

</table>

<br>

<table width="100%" border="0" cellspacing="0" cellpadding="0">

 ?<tr>

 ? ?<td>{$NAVIGATION}</td>

 ?</tr>

</table>

{if $result=='false'}

<table width="100%" border="0" cellspacing="0" cellpadding="0">

 ?<tr>

 ? ?<td class="main">{#text_noproduct#}</td>

 ?</tr>

</table>


{/if}

Link to comment
Share on other sites

nein, daran lag es nicht.

Ich habe zwar danach den Quellcode nochmal umgeschrieben, damit die Produktbilder rechts angezeigt werden, aber dieser Treppeneffekt besteht weiterhin.

Auch wird alles, was eigentlich rechts stehen sollte nach wie vor unter der Tabelle dargestellt.

Ist da vielleicht ein </table> zuviel?

Erledigt!

Der Fehler lag weiter oben,

Der Block

... {php} $col++;

{/php}

fehlte irgendwie

Trotzdem

Danke!!! :bounce:

Link to comment
Share on other sites

hallo,

ich habe mit jetzt ein template mit mehreren spalten gebastelt.

sch?n w?re es, wenn die anzahl der spalten sich nach der gr??e des browserfensters richtet. kann man das per html irgendwie abfragen - und funktioniert das mit allenb g?ngigen browsern?

da die maximalbreite der thumbnails bekannt ist kann man daraus dann die maximale anzahl an spalten f?r optimale bildschirmf?llung berechnen.

sch?ne gr??e p3e

Link to comment
Share on other sites

Originally posted by Hubi@Dec 29 2003, 17:37 PM

Das liesse sich mit JavaScript machen. Wenns im Standard bleibt, k?nnens die Browser, dies nicht abgeschaltet haben.

ben?tige ich da nur einen javascript befehl? und kann mir jemand sagen wie der lautet? ist es m?glich abzufragen ob beim kundenbrowser javascript aktiv ist?

gr??e aus aachen p3e

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...