vanyaner Posted September 8, 2008 Report Share Posted September 8, 2008 Hallo ! Habe mit der Suchfunktion die Sache mit Trauncate gefunden, auch eingebunden aber das klappte nicht, entweder bekam ich nen Fehler oder er hat die Beschreibung gar nicht mehr angezeigt... Mein Problem: Ich möchte auf der Startseite die neuen Artikel mit Kurzbeschreibung anzeigen lassen. Da die Boxen aber gleichgroß sein sollen, will ich die Kurzbeschreibung nach XXX Zeichen kürzen und durch ... ersetzen. Das Problem tauchte hier im Board schonmal auf, aber ich habe dazu keine Lösung gefunden. <html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns="http://www.w3.org/TR/REC-html40"> {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"> <table border="0" cellpadding="0" cellspacing="4" style="border-collapse: collapse" bordercolor="#111111"> <tr> <td rowspan="2" >{if $module_data.PRODUCTS_IMAGE}<a href="{$module_data.PRODUCTS_LINK}"><img src="{$module_data.PRODUCTS_IMAGE}" alt="{$module_data.PRODUCTS_NAME}" /></a>{/if}</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_SHORT_DESCRIPTION}<br /> <strong>{$module_data.PRODUCTS_PRICE}</strong><br /> {if $module_data.PRODUCTS_VPE}{$module_data.PRODUCTS_VPE}<br />{/if} {$module_data.PRODUCTS_TAX_INFO}{$module_data.PRODUCTS_SHIPPING_LINK}<br /> {$module_data.PRODUCTS_BUTTON_BUY_NOW}<br /> </td> </tr> </table> </td> {php} if ($col>=2) { $col=0; echo '</tr><tr>'; } {/php} {/foreach} </tr> </table> So siehts jetzt aus, ich wäre sehr dankbar wenn mir da wer helfen könnte, so dass es funktioniert. Einfach das Truncate Ding da einfügen wie schon mal beschrieben klappt nicht ! mfg Thomas Link to comment Share on other sites More sharing options...
Rovert Posted September 8, 2008 Report Share Posted September 8, 2008 Smartycode Beispiele: ($articleTitle mit $module_data.PRODUCTS_SHORT_DESCRIPTION ersetzen) {$articleTitle} {$articleTitle|truncate} {$articleTitle|truncate:30} {$articleTitle|truncate:30:""} {$articleTitle|truncate:30:"---"} {$articleTitle|truncate:30:"":true} {$articleTitle|truncate:30:"...":true} This will output: Two Sisters Reunite after Eighteen Years at Checkout Counter. Two Sisters Reunite after Eighteen Years at Checkout Counter. Two Sisters Reunite after... Two Sisters Reunite after Two Sisters Reunite after--- Two Sisters Reunite after Eigh Two Sisters Reunite after E... Link to comment Share on other sites More sharing options...
vanyaner Posted September 8, 2008 Author Report Share Posted September 8, 2008 danke für die Antwort, aber... es geht nicht Kommt entweder nix oder der fehler hier document.write('Versandkosten'); hab natürlich alles so gemacht mit product_short... also das schon alles richtig... aber klappt absolut nicht er kürzt es einfach nicht Link to comment Share on other sites More sharing options...
dukie6666 Posted September 8, 2008 Report Share Posted September 8, 2008 na dann besorg dir als erstes mal einen vernünftigen html editor, denn der coder hier hat in der datei nichts verloren: <html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns="http://www.w3.org/TR/REC-html40">[/CODE] hier hat du auch einen Fehler: {$module_data.PRODUCTS_SHORT_DESCRIPT ION} da ist vor dem ION ein leerzeichen was da nicht hingehört wenn du in der new_products_default.html folgendes änderst geht es auch: {$module_data.PRODUCTS_SHORT_DESCRIPTION} zu {$module_data.PRODUCTS_SHORT_DESCRIPTION|truncate:30:"...":true} und nicht vergessen den templates_c Ordner leeren Link to comment Share on other sites More sharing options...
Rovert Posted September 8, 2008 Report Share Posted September 8, 2008 Funktioniert 100% also erzähl nicht, dass es nicht geht. {$module_data.PRODUCTS_SHORT_DESCRIPTION|truncate:30:"---"} erzeugt anstatt: Um den Text lesbarer und gegliedert zu gestalten, gibt es meist Zeichenkombinationen, die dem markierten Text eine Formatvorlage zuweisen. das hier: Um den Text lesbarer und--- Und wie Dukie sagt, wer Word als html Editor benutzt ist jegliche Hilfe viel zu spät. Link to comment Share on other sites More sharing options...
vanyaner Posted September 9, 2008 Author Report Share Posted September 9, 2008 die leerzeile ist nur hier beim Zitat vorhanden im script ist die nicht drin... na ich öffne das script eigentlich ja nur mit dem Windows-Editor na ok vielleicht nicht so praktisch ok ich habs geändert in {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"> <table border="0" cellpadding="0" cellspacing="4" style="border-collapse: collapse" bordercolor="#111111"> <tr> <td rowspan="2" >{if $module_data.PRODUCTS_IMAGE}<a href="{$module_data.PRODUCTS_LINK}"><img src="{$module_data.PRODUCTS_IMAGE}" alt="{$module_data.PRODUCTS_NAME}" /></a>{/if}</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_SHORT_DESCRIPTION|truncate: 30:"...":true}<br /> <strong>{$module_data.PRODUCTS_PRICE}</strong><br /> {if $module_data.PRODUCTS_VPE}{$module_data.PRODUCTS_VPE}<br />{/if} {$module_data.PRODUCTS_TAX_INFO}{$module_data.PRODUCTS_SHIPPING_LINK}<br /> {$module_data.PRODUCTS_BUTTON_BUY_NOW}<br /> </td> </tr> </table> </td> {php} if ($col>=2) { $col=0; echo '</tr><tr>'; } {/php} {/foreach} </tr> </table>[/PHP] ABER ich bekomme nun diesen Fehler [b]Fatal error: Smarty error: [in aquaristik-paradies/module/new_products_default.html line 21]: syntax error: unrecognized tag: $module_data.PRODUCTS_SHORT_DESCRIPTION|truncate: 30:"...":true (Smarty_Compiler.class.php, line 439) in /is/htdocs/wp1111543_2AT6SMT85K/www/paradies/includes/classes/Smarty_2.6.14/Smarty.class.php on line 1095[/b] Template_C hab ich geleert... ich würd nich 100 mal schreiben wenns gehen würde... danke trotzdem für die Mühe erstmal und ich nutz eigentlich dreamweaver noch was aufgefallen lass ich eine leerzeile vor der truncate: 30 (also vor der 30) kommt der fehler mach ich die weg also truncate:30 dann kommt KEINE Beschreibung sondern nur document.write oder nichts Link to comment Share on other sites More sharing options...
Rovert Posted September 9, 2008 Report Share Posted September 9, 2008 Hast Du etwas an der products_new.php geändert? Wenn nicht, dann heisst der variabel der von dort kommt $module_data.PRODUCTS_DESCRIPTION und NICHT $module_data.PRODUCTS_SHORT_DESCRIPTION T Link to comment Share on other sites More sharing options...
vanyaner Posted September 9, 2008 Author Report Share Posted September 9, 2008 nein an der habe ich nichts geändert hier ist sie <?php /* ----------------------------------------------------------------------------------------- $Id: products_new.php 1292 2005-10-07 16:10:55Z mz $ XT-Commerce - community made shopping http://www.xt-commerce.com Copyright (c) 2003 XT-Commerce ----------------------------------------------------------------------------------------- based on: (c) 2000-2001 The Exchange Project (earlier name of osCommerce) (c) 2002-2003 osCommerce(products_new.php,v 1.25 2003/05/27); www.oscommerce.com (c) 2003 nextcommerce (products_new.php,v 1.16 2003/08/18); www.nextcommerce.org Released under the GNU General Public License ----------------------------------------------------------------------------------------- Third Party contributions: Enable_Disable_Categories 1.3 Autor: Mikel Williams | [email protected] Released under the GNU General Public License ---------------------------------------------------------------------------------------*/ include ('includes/application_top.php'); // create smarty elements $smarty = new Smarty; // include boxes require (DIR_FS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/source/boxes.php'); // include needed function require_once (DIR_FS_INC.'xtc_date_long.inc.php'); require_once (DIR_FS_INC.'xtc_get_vpe_name.inc.php'); $breadcrumb->add(NAVBAR_TITLE_PRODUCTS_NEW, xtc_href_link(FILENAME_PRODUCTS_NEW)); require (DIR_WS_INCLUDES.'header.php'); $products_new_array = array (); $fsk_lock = ''; if ($_SESSION['customers_status']['customers_fsk18_display'] == '0') { $fsk_lock = ' and p.products_fsk18!=1'; } if (GROUP_CHECK == 'true') { $group_check = " and p.group_permission_".$_SESSION['customers_status']['customers_status_id']."=1 "; } if (MAX_DISPLAY_NEW_PRODUCTS_DAYS != '0') { $date_new_products = date("Y.m.d", mktime(1, 1, 1, date(m), date(d) - MAX_DISPLAY_NEW_PRODUCTS_DAYS, date(Y))); $days = " and p.products_date_added > '".$date_new_products."' "; } $products_new_query_raw = "select distinct p.products_id, p.products_fsk18, pd.products_name, pd.products_short_description, p.products_image, p.products_price, p.products_vpe, p.products_vpe_status, p.products_vpe_value, p.products_tax_class_id, p.products_date_added, m.manufacturers_name from ".TABLE_PRODUCTS." p left join ".TABLE_MANUFACTURERS." m on p.manufacturers_id = m.manufacturers_id left join ".TABLE_PRODUCTS_DESCRIPTION." pd on p.products_id = pd.products_id, ".TABLE_CATEGORIES." c, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c WHERE pd.language_id = '".(int) $_SESSION['languages_id']."' and c.categories_status=1 and p.products_id = p2c.products_id and c.categories_id = p2c.categories_id and products_status = '1' ".$group_check." ".$fsk_lock." ".$days." order by p.products_date_added DESC "; $products_new_split = new splitPageResults($products_new_query_raw, $_GET['page'], MAX_DISPLAY_PRODUCTS_NEW, 'p.products_id'); if (($products_new_split->number_of_rows > 0)) { $smarty->assign('NAVIGATION_BAR', ' <table border="0" width="100%" cellspacing="0" cellpadding="2"> <tr> <td class="smallText">'.$products_new_split->display_count(TEXT_DISPLAY_NUMBER_OF_PRODUCTS_NEW).'</td> <td align="right" class="smallText">'.TEXT_RESULT_PAGE.' '.$products_new_split->display_links(MAX_DISPLAY_PAGE_LINKS, xtc_get_all_get_params(array ('page', 'info', 'x', 'y'))).'</td> </tr> </table> '); } $module_content = ''; if ($products_new_split->number_of_rows > 0) { $products_new_query = xtc_db_query($products_new_split->sql_query); while ($products_new = xtc_db_fetch_array($products_new_query)) { $products_price = $xtPrice->xtcGetPrice($products_new['products_id'], $format = true, 1, $products_new['products_tax_class_id'], $products_new['products_price'], 1); $vpePrice = ''; if ($products_new['products_vpe_status'] == 1 && $products_new['products_vpe_value'] != 0.0) $vpePrice = $xtPrice->xtcFormat($products_price['plain'] * (1 / $products_new['products_vpe_value']), true).TXT_PER.xtc_get_vpe_name($products_new['products_vpe']); $buy_now = ''; if ($_SESSION['customers_status']['customers_fsk18'] == '1') { if ($products_new['products_fsk18'] == '0') $buy_now = '<a href="'.xtc_href_link(basename($PHP_SELF), xtc_get_all_get_params(array ('action')).'action=buy_now&BUYproducts_id='.$products_new['products_id'], 'NONSSL').'">'.xtc_image_button('button_buy_now.gif', TEXT_BUY.$products_new['products_name'].TEXT_NOW).'</a>'; } else { $buy_now = '<a href="'.xtc_href_link(basename($PHP_SELF), xtc_get_all_get_params(array ('action')).'action=buy_now&BUYproducts_id='.$products_new['products_id'], 'NONSSL').'">'.xtc_image_button('button_buy_now.gif', TEXT_BUY.$products_new['products_name'].TEXT_NOW).'</a>'; } if ($products_new['products_image'] != '') { $products_image = DIR_WS_THUMBNAIL_IMAGES.$products_new['products_image']; } else { $products_image = ''; } if ($_SESSION['customers_status']['customers_status_show_price'] != 0) { $tax_rate = $xtPrice->TAX[$products_new['products_tax_class_id']]; // price incl tax if ($tax_rate > 0 && $_SESSION['customers_status']['customers_status_show_price_tax'] != 0) { $tax_info = sprintf(TAX_INFO_INCL, $tax_rate.' %'); } // excl tax + tax at checkout if ($tax_rate > 0 && $_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 1) { $tax_info = sprintf(TAX_INFO_ADD, $tax_rate.' %'); } // excl tax if ($tax_rate > 0 && $_SESSION['customers_status']['customers_status_show_price_tax'] == 0 && $_SESSION['customers_status']['customers_status_add_tax_ot'] == 0) { $tax_info = sprintf(TAX_INFO_EXCL, $tax_rate.' %'); } } $ship_info=""; if (SHOW_SHIPPING=='true') { $ship_info=' '.SHIPPING_EXCL.'<a href="javascript:newWin=void(window.open(\''.xtc_href_link(FILENAME_POPUP_CONTENT, 'coID='.SHIPPING_INFOS).'\', \'popup\', \'toolbar=0, width=640, height=600\'))"> '.SHIPPING_COSTS.'</a>'; } $module_content[] = array ('PRODUCTS_NAME' => $products_new['products_name'],'PRODUCTS_SHIPPING_LINK' => $ship_info,'PRODUCTS_TAX_INFO' => $tax_info, 'PRODUCTS_DESCRIPTION' => $products_new['products_short_description'], 'PRODUCTS_PRICE' => $products_price['formated'], 'PRODUCTS_VPE' => $vpePrice, 'PRODUCTS_LINK' => xtc_href_link(FILENAME_PRODUCT_INFO, xtc_product_link($products_new['products_id'], $products_new['products_name'])), 'PRODUCTS_IMAGE' => $products_image, 'BUTTON_BUY_NOW' => $buy_now); } } else { $smarty->assign('ERROR', TEXT_NO_NEW_PRODUCTS); } $smarty->assign('language', $_SESSION['language']); $smarty->caching = 0; $smarty->assign('module_content', $module_content); $main_content = $smarty->fetch(CURRENT_TEMPLATE.'/module/new_products_overview.html'); $smarty->assign('main_content', $main_content); $smarty->assign('language', $_SESSION['language']); $smarty->caching = 0; if (!defined(RM)) $smarty->load_filter('output', 'note'); $smarty->display(CURRENT_TEMPLATE.'/index.html'); include ('includes/application_bottom.php'); ?>[/PHP] habe u.a. auch die new_products.html ich poste sie Dir mal hier... [PHP]{config_load file="$language/lang_$language.conf" section="new_products"} <h2>{#heading_text#}</h2> {foreach name=aussen item=module_data from=$module_content} <h1><a href="{$module_data.PRODUCTS_LINK}">{$module_data.PRODUCTS_NAME}</a></h1> <div class="containerNewProd"> {if $module_data.PRODUCTS_IMAGE} <div class="subcolumns"> <div class="c25l"> <div class="subcl"> <a href="{$module_data.PRODUCTS_LINK}" class="imgLink"><img class="imgLeft" src="{$module_data.PRODUCTS_IMAGE}" alt="{$module_data.PRODUCTS_NAME}" /></a> </div> </div> <div class="c75r"> <div class="subcr"> {if $module_data.PRODUCTS_SHORT_DESCRIPTION!=''}{$module_data.PRODUCTS_SHORT_DESCRIPTION}<br />{/if} <div class="basicDataCat"> Preis: {$module_data.PRODUCTS_PRICE}<br />{if $module_data.PRODUCTS_VPE}{$module_data.PRODUCTS_VPE}<br />{/if} <span class="basicDataSmall">{$module_data.PRODUCTS_TAX_INFO}<br /> {$module_data.PRODUCTS_SHIPPING_LINK}</span> </div> <div class="productListing1BuyNow"><a href="{$module_data.PRODUCTS_LINK}"><img src="{$tpl_path}buttons/{$language}/small_view.gif" alt="{$module_data.PRODUCTS_NAME}" /></a></div> </div> </div> </div> {else} <p> {if $module_data.PRODUCTS_SHORT_DESCRIPTION!=''}{$module_data.PRODUCTS_SHORT_DESCRIPTION}<br />{/if} <div class="basicDataCat"> Preis: {$module_data.PRODUCTS_PRICE}<br />{if $module_data.PRODUCTS_VPE}{$module_data.PRODUCTS_VPE}<br />{/if} <span class="basicDataSmall">{$module_data.PRODUCTS_TAX_INFO}<br /> {$module_data.PRODUCTS_SHIPPING_LINK}</span> </div> </p> <div class="productListing1BuyNow"><a href="{$module_data.PRODUCTS_LINK}"><img src="{$tpl_path}buttons/{$language}/small_view.gif" alt="{$module_data.PRODUCTS_NAME}" /></a></div> {/if} </div> {/foreach}[/PHP] nochmal danke für die Mühe !!! Link to comment Share on other sites More sharing options...
Rovert Posted September 9, 2008 Report Share Posted September 9, 2008 eben - es muss PRODUCTS_DESCRIPTION heissen {if $module_data.PRODUCTS_DESCRIPTION!=''} {$module_data.PRODUCTS_DESCRIPTION|truncate: 30:"---"} <br /> {/if} Link to comment Share on other sites More sharing options...
vanyaner Posted September 9, 2008 Author Report Share Posted September 9, 2008 ja ok... aber: dann würde er ja die lange Beschreibung nehmen... lasse ich das "truncate" weg, dann macht er mir ja die short hin... habe es nun mal in das was du geschrieben hast geändert... also in {$module_data.PRODUCTS_DESCRIPTION|truncate:30:"...":true}[/PHP] hier ist das Ergebnis oO http://aquaristik-paradies.de/index.php ich lass das mal eben so drin in der hoffnung du kannst es grad ansehen so habs wieder weggemacht es auf jedenfall nichts zu sehen weder lange noch kurze beschreibung und nichts mit punkten, wenn du nun schaust siehst du die short_description... mach ich truncate hinzu, dann kommen fehler... [b]Nachfrage: muss in der DB irgendwas drin sein wegen dem Truncate Befehl ??? so ne Art plugin oder was weiss ich ? ich hab den befehl grad nur mal so gegoogelt da ich aber seit etlichen Jahren nicht mehr in der Materie drin war, kann ich nich viel damit anfangen[/b] Link to comment Share on other sites More sharing options...
Rovert Posted September 9, 2008 Report Share Posted September 9, 2008 lese bitte der php Datei richtig - es nimmt für PRODUCTS_DESCRIPTION Feld products_short_description Ebenfalls im php zu lesen ist, dass der Vorlage new_products_overview.html heisst und nicht new_products.html ist.... Die anderen new_products Vorlagen sind vom includes/prodducts_new.php bedient deren Daten von der includes/classes/product.php erstellt werden und dort ist PRODUCTS_SHORT_DESCRIPTION schon richtig T Link to comment Share on other sites More sharing options...
vanyaner Posted September 9, 2008 Author Report Share Posted September 9, 2008 mhm ja aber es klappt ja selbst mit {$module_data.PRODUCTS_DESCRIPTION|truncate:30:"...":true}[/PHP] nicht... Also ich hab keine Ahnung wo der Fehler liegt... habe bei Dir im Shop gesehen, dass es bei Dir klappt es hat geklappt... ich musste nur die Zahl erhöhen oO 30 war zu wenig... jetzt muss ich noch fummeln das die tabbelabschnitte gleich groß bleiben Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.