Wombel Posted March 10, 2010 Report Share Posted March 10, 2010 Hallo zusammen, Seit etwa 2 Monaten verwende ich einen VEYTON 4.0.12. Der Shop ist also noch neu. Ich habe ein Problem mit der Anzeige des Preises eines Master-Artikels. Dieser wird immer mit 0,00 € angezeigt, und ich verstehe nicht, warum, und woher dieser Wert 0,00 überhaupt kommt. Ich habe in meinem Template auf folgende Art eine Abfrage auf das "Master-Flag" eingebaut, damit der Shop bei Master-Artikeln ein "ab" vor den Preis setzt: {if $module_data.products_master_flag eq '1'} <p class="price">ab {$module_data.products_price.formated}</p> {else} <p class="price">{$module_data.products_price.formated}</p> {/if} Das funktioniert auch hervorragend. Das Problem ist nun: Bei allen Masterartikeln wird das "Ab" eingeblendet, doch dahinter steht immer 0,00 €. (Ich brauche keine automatische Abfrage der Slaves auf den niedrigsten Preis, denn ich habe im Master-Artikel den niedrigsten Preis der jeweiligen Slaves händisch eingetragen.) Doch das interessiert den Shop nicht, er zeigt immer "ab 0,00 €". Bei "Nicht-Master-Artikeln" wird der korrekte Preis aus der Datenbank eingeblendet. Wer sich das Problem mal live anschauen mag: Es geht um den Shop www.wohn-kaufhaus.de. Der Master-Artikel, um den es hier geht, ist das "Mako-Jersey Spannbettlaken von Irisette" Ich habe mit phpMyAdmin geprüft, ob die Preis-Werte in der products-Datenbank stimmen, das tun sie. Mache ich hier irgendwas falsch? Referenziere ich den falschen Preis-Eintrag für den Master in der Datenbank? Ist es ein Bug im Shop-System? Ich würde gerne mehr Master-Artikel im Shop einsetzen, aber bevor ich dieses grundlegende Problem nicht im Griff habe, ist das natürlich eher kontraproduktiv; der Kunde soll nicht den Eindruck gewinnen, der Artikel wäre umsonst zu bekommen. Bitte um Hilfe Mit freundlichen Grüßen, Der Wombel Link to comment Share on other sites More sharing options...
mmx Posted March 10, 2010 Report Share Posted March 10, 2010 Hallo, ich verwende in meinem Shop nur Master/Slaves und habe das nach einigen Versuchen auch hingekriegt. Es gibt ja mehrere Template-Dateien, die davon betroffen sind: product.html (arstellung des Masters auf der Produktseite) ms_product_list_default.html (Liste der Slaves auf der Produkseite) product_listing_v1.html (Liste der Produkte in der Kategorie) (Hab´ ich was vergessen? Immer her mit den Infos:)) Ich habe gesehen, dass Du auf der product.html das "ab" noch nicht stehe hast. Versuch mal dort anstatt {$module_data.products_price.formated} nur {$products_price.formated} zu verwenden. So läuft es bei mir nämlich. Ich schick Dir eine PM mit meinem Shoplink. Hoffe ich kann helfen. Grüße, Alex Link to comment Share on other sites More sharing options...
Wombel Posted March 10, 2010 Author Report Share Posted March 10, 2010 Danke für die schnelle Antwort. Eine schönen Shop hast du da, muss ich schon sagen. Über eine solche Tag-Wolke, wie du sie verwendest, habe ich auch schon nachgedacht, steht aber noch ziemlich weit hinten auf meiner ToDo-Liste... Zum Problem: Leider funktioniert es mit der etwas "direkteren" Referenzierung <p class="price">ab {$products_price.formated}</p>[/CODE] auch nicht; dann zeigt der Shop nur das "ab" ganz ohne Preis dahinter... und auch ohne Währungsangabe. Link to comment Share on other sites More sharing options...
mmx Posted March 10, 2010 Report Share Posted March 10, 2010 Danke für´s Lob:cool: Wie sehen denn Deine Master/Slave Plugin Einstellungen aus? Grüße Link to comment Share on other sites More sharing options...
Wombel Posted March 10, 2010 Author Report Share Posted March 10, 2010 Nun, alle Werte unter Plugins/installierte Plugins stehen auf TRUE, "Slaveartikel Liste" ist 10, "Code" steht auf xt_master_slave. Keiner dieser Werte hat nach meinem Verständnis irgendwas mit der Preisanzeige zu tun... aber da kann ich mich ja irren Link to comment Share on other sites More sharing options...
Wombel Posted March 14, 2010 Author Report Share Posted March 14, 2010 Nun habe ich in die Tabell xt_products händisch ein neues Feld namens "abpreis" eingefügt, mit 19,00 gefüllt und das Feld im Sourcecode der Artikel-Anzeige referenziert. Doch der Preis wird immer noch nicht angezeigt. So langsam verzweifel ich Link to comment Share on other sites More sharing options...
Wombel Posted May 5, 2010 Author Report Share Posted May 5, 2010 problem noch immer da; /push Link to comment Share on other sites More sharing options...
oldbear Posted May 5, 2010 Report Share Posted May 5, 2010 hi, ohne Deinen Quellcode dafür wird das hier nix.... Grüsse Link to comment Share on other sites More sharing options...
Wombel Posted May 5, 2010 Author Report Share Posted May 5, 2010 Na, dann poste ich hier doch mal die komplette product_listing_v4.html (das *.v4 is von mir, ich hab das ganze auf zweispaltigkeit ausgelegt) {$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 style="position:relative"> <table width="98%" border="1" cellspacing="0" cellpadding="0" style="border-collapse:separate"> <tr> {foreach name=aussen item=module_data from=$product_listing} {php} $col++; {/php} <td class="main" valign="baseline"> <table class="productPreview" width="244px" border="0" cellspacing="0" cellpadding="0" valign="top"> <tr> {if $module_data.products_image!=''} <tr class="productPreviewImageCenter"> <td height="200px" valign="top"> <a href="{$module_data.products_link}">{img img=$module_data.products_image type=m_info class=productImageBorder alt=$module_data.products_name}</a> </td> </tr>{/if} <td class="productPreviewContent" height="206px" > <h2><a href="{$module_data.products_link}">{$module_data.products_name}</a></h2> {if $module_data.date_available!=''} <br> <ul class="info_info"> <li class="infoInfo">{txt key=TEXT_PRODUCT_AVAILABLE} {$module_data.date_available|date_format:"%d.%m.%Y"}</li> </ul> <br> {/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'} {if $module_data.products_master_flag eq '1'} <p class="price">ab {$module_data.products_abprice} EUR</p> {else} <p class="price">{$module_data.products_price.formated}</p> {/if} <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_master_flag eq '1'} <div style="position:relative;bottom:0px"> <div class="hrproductpreview"></div> <table border="0" cellspacing="0" cellpadding="0" width="244px" valign="bottom" > <tr valign="bottom"> <td style="width:98%" align="right"> <a href="{$module_data.products_link}"><img src="../templates/xt_default/img/buttons/de/dhdetails.gif" alt="Details"></a> </td> <td style="width:2%" ></td> <!-- <td style="width:50%" align="right">{form type=text name=qty value=1 style='width:25px;'}</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> --> {if $module_data.products_master_flag eq '1'}</td>{/if} </table></table></tr> {php} if ($col>=2) { $col=0; echo '</tr><tr>'; } {/php} {/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} --> <br> {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> </td> </tr> </table> <div style="position:relative;bottom:0px"> <div class="hrproductpreview"></div> <table border="0" cellspacing="0" cellpadding="0" width="244px" valign="bottom" > <tr valign="bottom"> <td></td> <td style="width:98%" align="right"> <a href="{$module_data.products_link}"><img src="../templates/xt_default/img/buttons/de/dhdetails.gif" alt="Details"></a> </td> <td style="width:2%" ></td> </tr> <tr> <td style="width:50%" align="right">{form type=text name=qty value=1 style='width:25px;'}</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> <br> </td> {php} if ($col>=2) { $col=0; echo '</tr><tr>'; } {/php} {form type=formend} {/if} {/foreach} </tr> </table> </div> <div id="NAVIGATION"> <div class="COUNT">{$NAVIGATION_COUNT}</div> <div class="PAGES">{$NAVIGATION_PAGES}</div> </div>{/if} {$error_listing} Wie man sehen kann, sollte bei Master-Artikeln wegen {if $module_data.products_master_flag eq '1'} <p class="price">ab {$module_data.products_abprice} EUR</p> das Feld "products_abprice" aus der DB gesaugt werden; geht aber nicht Der Master-Artikel wird richtig erkannt; das "ab" (das nur bei Master-Artikeln angezeigt wird) steht da; bloß der Wert aus der DB fehlt. Link to comment Share on other sites More sharing options...
oldbear Posted May 5, 2010 Report Share Posted May 5, 2010 ... ist schon rätselhaft. Was sagt {debug} ? Grüsse Link to comment Share on other sites More sharing options...
Wombel Posted May 6, 2010 Author Report Share Posted May 6, 2010 {Debug} sagt: (unter anderem) products_startpage_sort => "0" products_average_rating => "0.0000" products_rating_count => "0" products_digital => "0" flag_has_specials => "0" products_serials => "0" products_abpreis => "19.95" language_code => "de" products_name => "Mako-Jersey Spannbettlaken von Irisette" products_description => "5 Jahre Qualitätsgarantie, bügelfre..." products_short_description => "5 Jahre Qualitätsgarantie, bügelfre..." products_keywords => "Viva Spannbetttuch Bettlaken 100x200 ..." Also ist die Variable verfügbar, wird aber trotzdem nicht angezeigt. Und warum? Wegen einem verschissenen SCHREIBFEHLER. Ich geh mich selbst schächten! Erneut vielen Dank an den lieben Oldbear, dessen Hinweis auf {Debug} die Lösung brachte. Link to comment Share on other sites More sharing options...
oldbear Posted May 6, 2010 Report Share Posted May 6, 2010 grins........ Link to comment Share on other sites More sharing options...
amilo Posted May 6, 2010 Report Share Posted May 6, 2010 Wie man sehen kann, sollte bei Master-Artikeln wegen {if $module_data.products_master_flag eq '1'} <p class="price">ab {$module_data.products_abprice} EUR</p> das Feld "products_abprice" aus der DB gesaugt werden; geht aber nicht Der Master-Artikel wird richtig erkannt; das "ab" (das nur bei Master-Artikeln angezeigt wird) steht da; bloß der Wert aus der DB fehlt. Hi, die Abfrage sollte lieber so aussehen: {if $module_data.products_master_flag eq '1' and $module_data.products_abpreis !=''} <p class="price">ab {$module_data.products_abprice} EUR</p> MfG. Hansen Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.