xtc:Veyton - Produktauflistung - 2 Artikel nebeneinander

Comp4ny

Enthusiast
Thread Starter
Mitglied seit
08.10.2008
Beiträge
1.681
Ort
Hamburg
Es ist ein leidiges Thema, und egal was ich versuche, es funktioniert einfach nicht.

Es geht darum 2 Artikel nebeneinander hinzubekommen.
Sowohl auf der Startpage, als auch in den jeweiligen Kategorien!

Das solle eigentlich die beiden wichtigen Punkte aus der product_listing_v1.html sein,
um 2 Artikel in eine Spalte zu setzen. - Aber es funktioniert einfach nicht.
<div class="hrproductpreview"></div>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
{foreach name=aussen item=module_data from=$product_listing}
{php} $col++;
{/php}
<table class="productPreview" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
.
.
.
</tr>
</table>
<div class="hrproductpreview"></div>
{php}
if ($col>=3) {
$col=0;
echo '</tr><tr>';
}
{/php}
{/foreach}
</tr>
</table>
Ich bin am Verzweifeln, und hoffe das mir jemand Helfen kann...
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
wie wärs einfach mit css zu arbeiten :/ bei tabellen rafft man ja gar nix.
so einfach wird das halt net gehen. du müsstest die daten in nen array schreiben und dann immer die 2 artikel die nebeneinander sollen ausgeben. reihe für reihe. Mit css und floating kannste die einfach hintereinander raushein, hast viel weniger code und google bedankt sich ;)

€ achso nur 2 artikel insgesamt oder 2+n?
 
Zuletzt bearbeitet:
Da ich aber nicht über die Kentnisse darüber befinde mit CSS zu arbeiten,
wage ich auch zu bezweifeln das ich mal so eben HTML in CSS umbauen kann...
zumal bei einer Shopsoftware wie Veyton?
 
{html_table loop=$data cols=2}
$data sollte dann so ein Array sein:
$data = array("bla", "blubb", "blubber");

Und wenn ich deine Frage jetzt nicht falsch verstanden habe sollte das so gehen :>

Gruß
 
klar, das cms ist absolut egal. du kannst jede ausgabe abfangen und mit php verarbeiten. Is würde auch ohne array funktionieren, aber ich kann kein php ausm kopf ^^ ich muss da immer c&p`n.

theoretisch machst du in die schlaufe ne variable die sich bei jeder ausgabe ändern.
1. produkt variable -> 1
2. produkt variable -> 2
3. produkt variable -> 1
usw.
Haust ne if abfrage rein die dann jenachdem was in der variable steht den code ausgibt. bei 1 wird
Code:
<tr>
    <th>produkt</th>
ausgegeben und bei 2
Code:
    <th>produkt</th>
</tr>
dann noch 1-2 abfragen damit das ende der tabelle stimmt und fertig.
 
Zuletzt bearbeitet:
Und an welche stelle muss ich, je nachdem was funktioniert von den 2 Vorschlägen
und mich damit auch nicht so richtig auskenne, reinsetzen?

Hier ist die product_listing_v1.html
{$categories}
{if $product_listing}
{if $heading_text}<h1>{$heading_text}</h1>{/if}
{if $PRODUCTS_DROPDOWN}{$PRODUCTS_DROPDOWN}{/if}

{if $sort_dropdown.options}
<div class="products_sort">
{form type=form name=sort_dropdown action='dynamic' method=get}
{form type=hidden name=page value='categorie'}
{form type=hidden name=cat value=$current_category_id}
{form type=select name=sorting value=$sort_dropdown.options default='' onchange='this.form.submit();'}
{form type=formend}
</div>
{/if}

{if $MANUFACTURER_DROPDOWN}
<div class="products_sort">
{if $MANUFACTURER_DROPDOWN}{$MANUFACTURER_DROPDOWN}{/if}
</div>
{/if}

{if $manufacturer}
{$manufacturer.MANUFACTURER.manufacturers_description}
{/if}

<div class="hrproductpreview"></div>
{foreach name=aussen item=module_data from=$product_listing}
<table class="productPreview" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
{if $module_data.products_image!=''}<td class="productPreviewImage"><a href="{$module_data.products_link}">{img img=$module_data.products_image type=m_thumb class=productImageBorder alt=$module_data.products_name}</a></td>{/if}
<td class="productPreviewContent">
<h2><a href="{$module_data.products_link}">{$module_data.products_name}</a></h2>
{if $module_data.date_available!=''}
<ul class="info_info">
<li class="infoInfo">{txt key=TEXT_PRODUCT_AVAILABLE} {$module_data.date_available|date_format:"%A, %B %e, %Y"}</li>
</ul>
{/if}
{if $module_data.review_stars_rating}
<div class="reviews_rating_light"><div class="reviews_rating_dark" style="width:{$module_data.review_stars_rating}%"></div></div>
{/if}
{if $module_data.products_short_description}<p>{$module_data.products_short_description}</p>{/if}
{if $smarty.const._CUST_STATUS_SHOW_PRICE eq '1'}
<p class="price">{$module_data.products_price.formated}</p>
<p class="taxandshippinginfo">{$module_data.products_tax_info.tax_desc}{if $module_data.products_shipping_link}<a href="{$module_data.products_shipping_link}" target="_blank" rel="nofollow">{txt key=TEXT_EXCL_SHIPPING}</a>{/if}</p>
{if $module_data.base_price}<p class="vpe">{$module_data.base_price.price} {txt key=TEXT_SHIPPING_BASE_PER} {$module_data.base_price.vpe.name}</p>{/if}
{/if}
{if $module_data.products_weight > 0}<p class="taxandshippinginfo">{txt key=TEXT_PRODUCTS_WEIGHT}: {$module_data.products_weight} KG</p>{/if}
{if $module_data.shipping_status}<p class="shippingtime">{txt key=TEXT_SHIPPING_STATUS} {$module_data.shipping_status}</p>{/if}

{if $module_data.stock_image}
<p class="stockimage">{img img=$module_data.stock_image.image type=t_img_stockrules alt=$module_data.stock_image.name}</p>
<p class="stockimagetext">{$module_data.stock_image.name}</p>
{/if}

{if $module_data.allow_add_cart eq 'true'}
{form type=form name=product action='dynamic' link_params=getParams method=post}
{form type=hidden name=action value=add_product}
{form type=hidden name=product value=$module_data.products_id}
<div class="addtobasketlisting">
<table border="0" cellspacing="0" cellpadding="2">
<tr>
<td style="width:100%">{form type=text name=qty value=1 style='width:50px;'}</td>
<td>{button text=$smarty.const.BUTTON_ADD_CART file='button_in_cart.gif' type='form' btn_template='tpl_button_2.gif' space_left='25'}</td>
</tr>
</table>
</div>
{form type=formend}
{/if}

</td>
</tr>
</table>
<div class="hrproductpreview"></div>
{/foreach}

<div id="NAVIGATION">
<div class="COUNT">{$NAVIGATION_COUNT}</div>
<div class="PAGES">{$NAVIGATION_PAGES}</div>
</div>{/if}
{$error_listing}

Es würde reichen wenn Ihr die Stelle Farblich makiert,
dann ändere ich das per Hand noch ein.
 
heavy, wasn das fürn komisches CMS?

das zwischen
{foreach name=aussen item=module_data from=$product_listing}
und
{/foreach}
wird so lange ausgeführt bis alle produkte anzeigt werden.
d.h. zwischen foreach und dem inhalt dessen muss die abfrage rein.
ganz zum schluss muss nochn else rein, wieder mit ner abfrage nach der Variable. bei 1 kommt noch ne lehre tabelle dazu und bei 2 gar nix. dann passt auch das tabellen ende.
 
Naja das ist jetzt ohne die richtige Formatierung ;)
In der HTML schauts dann ein bischen anders aus.

Magst du, oder jemand anderes die stelle einfügen und makieren damit ich weiß was genau wie wo reingehört?

Ich habe die Listing unten nochmal hochgeladen, falls die jemand braucht.
 

Anhänge

  • Listing.zip
    1,4 KB · Aufrufe: 20
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh