Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Artikelname im Bestsellerbox mit Leerzeichen

    gabto

    • Neu im Forum
    • Beiträge: 26
    Artikelname im Bestsellerbox mit Leerzeichen
    am: 10. August 2012, 08:41:55
    Hallo,

    mir ist ein merkwürdiges Verhalten bei den Artikelnamen im Bestsellerbox aufgefallen und zwar gibt es bei den zweiten und dritten jeweils eine Leerzeichen mitten ins Wort!

    Der Quelltext sieht so aus (also mit genau solche Umbrüche):

    Single-Reisehängem
    atte COLIBRI
    orange

    Familien-Hängematt
    e FLORA curacao

    Hat jemanden eine Idee woran das liegen könnte und wie ich es beheben könnte?

    Vielen Dank im Voraus



    Linkback: https://www.modified-shop.org/forum/index.php?topic=21650.0
    Shop Hosting

    DirkK

    • Fördermitglied
    • Beiträge: 230
    • Geschlecht:
    Re: Artikelname im Bestsellerbox mit Leerzeichen
    Antwort #1 am: 10. August 2012, 09:24:32
    Hallo

    Also ohne weitere Angaben wird es evt. schwer werden Dir darauf eine Antwort zu geben (zumindest für nicht Profis). Häng doch bitte mal Deine /templates/TEMPLATENAME/boxes/box_best_sellers.html und die /templates/TEMPLATENAME/source/boxes/best_sellers.php an Deinen Beitrag oder poste den Quelltext.

    Gruß
     Dirk

    gabto

    • Neu im Forum
    • Beiträge: 26
    Re: Artikelname im Bestsellerbox mit Leerzeichen
    Antwort #2 am: 10. August 2012, 10:15:13
    Hallo Dirk,

    erstmal vielen Dank. Dateien, die nicht geändert wurden:

    box_best_seller.html

    Code: PHP  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="boxes"}
    <h2 class="boxheader">{#heading_best_sellers#}</h2>
    <div class="boxbody">
      {foreach name=aussen item=box_data from=$box_content}
        <dl>
          <dt><a href="{$box_data.PRODUCTS_LINK}">{if $box_data.PRODUCTS_IMAGE}<img src="{$box_data.PRODUCTS_IMAGE}" alt="" title="" />{/if}</a></dt>
          <dd>
            <h3>{$box_data.COUNT}. <a href="{$box_data.PRODUCTS_LINK}">{textformat wrap=18 wrap_cut=true}{$box_data.PRODUCTS_NAME}{/textformat}</a></h3>
            <p>
              {$box_data.PRODUCTS_PRICE}<br />
              {if $box_data.PRODUCTS_VPE}{$box_data.PRODUCTS_VPE}<br />{/if}
              {$box_data.PRODUCTS_TAX_INFO}{$box_data.PRODUCTS_SHIPPING_LINK}
            </p>
            <div class="hrlightgrey"></div>
          </dd>
        </dl>
        <div style="clear:both"></div>
      {/foreach}
    </div>

    best_sellers.php

    Code: PHP  [Auswählen]
    <?php

    /* -----------------------------------------------------------------------------------------
       $Id: best_sellers.php 1292 2005-10-07 16:10:55Z mz $  

       XT-Commerce - community made shopping
       http://www.(( Wir dulden keine kommerziellen Werbelinks - Bitte <a href="index.php?topic=3013.0">Forenregeln</a> beachten! ))

       Copyright (c) 2003 XT-Commerce
       -----------------------------------------------------------------------------------------
       based on:
       (c) 2000-2001 The Exchange Project  (earlier name of osCommerce)
       (c) 2002-2003 osCommerce(best_sellers.php,v 1.20 2003/02/10); www.oscommerce.com
       (c) 2003      nextcommerce (best_sellers.php,v 1.10 2003/08/17); www.nextcommerce.org

       Released under the GNU General Public License
       -----------------------------------------------------------------------------------------
       Third Party contributions:
       Enable_Disable_Categories 1.3                Autor: Mikel Williams | mikel@ladykatcostumes.com

       Released under the GNU General Public License
       ---------------------------------------------------------------------------------------*/

    // reset var
    $box_smarty = new smarty;
    $box_content = '';
    //$rebuild = false; //DokuMan - 2010-02-28 - fix Smarty cache error on unlink

            $box_smarty->assign('language', $_SESSION['language']);
            // set cache ID
            if (!CacheCheck()) {
                    $cache=false;
                    $box_smarty->caching = 0;
            } else {
                    $cache=true;
                    $box_smarty->caching = 1;
                    $box_smarty->cache_lifetime = CACHE_LIFETIME;
                    $box_smarty->cache_modified_check = CACHE_CHECK;
                    $cache_id = $_SESSION['language'].$current_category_id;
            }

    if (!$box_smarty->is_cached(CURRENT_TEMPLATE.'/boxes/box_best_sellers.html', $cache_id) || !$cache) {
            $box_smarty->assign('tpl_path', 'templates/'.CURRENT_TEMPLATE.'/');
            //$rebuild = true; //DokuMan - 2010-02-28 - fix Smarty cache error on unlink
           
            // include needed functions
            require_once (DIR_FS_INC.'xtc_row_number_format.inc.php');
           
            //fsk18 lock
            $fsk_lock = '';
            if ($_SESSION['customers_status']['customers_fsk18_display'] == '0') {
                    $fsk_lock = ' and p.products_fsk18!=1';
            }
            $group_check = ''; //DokuMan - 2010-02-28 - set undefined variable group_check
            if (GROUP_CHECK == 'true') {
                    $group_check = " and p.group_permission_".$_SESSION['customers_status']['customers_status_id']."=1 ";
            }

      //BOF - DokuMan - 2010-07-12 - fix Smarty cache error on unlink
      $file = DIR_FS_CATALOG . 'cache/bestseller/' . (int)$current_category_id.'.cache';
      if (is_file($file)) {
          $box_content = unserialize(implode('', file($file)));
      } else {
      //EOF - DokuMan - 2010-07-12 - fix Smarty cache error on unlink

                    if (isset ($current_category_id) && ($current_category_id > 0)) {
                      //BOF - Dokuman - 2009-05-28 - Performance optimization by using primary keys
                      // see http://shopnix.wordpress.com/2009/04/18/xtcommerce-performance/
                      // and http://shopnix.wordpress.com/2009/04/22/performance-optimierung/
                      /*
                            $best_sellers_query = "select distinct
                                                                    p.products_id,
                                                                    p.products_price,
                                                                    p.products_tax_class_id,
                                                                    p.products_image,
                                                              p.products_vpe,
                                                              p.products_vpe_status,
                                                              p.products_vpe_value,
                                                                    pd.products_name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_DESCRIPTION." pd, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_CATEGORIES." c
                                                                    where p.products_status = '1'
                                                                    and c.categories_status = '1'
                                                                    and p.products_ordered > 0
                                                                    and p.products_id = pd.products_id
                                                                    and pd.language_id = '".(int) $_SESSION['languages_id']."'
                                                                    and p.products_id = p2c.products_id
                                                                    ".$group_check."
                                                                    ".$fsk_lock."
                                                                    and p2c.categories_id = c.categories_id and '".$current_category_id."'
                                                                    in (c.categories_id, c.parent_id)
                                                                    order by p.products_ordered desc limit ".MAX_DISPLAY_BESTSELLERS;
                      */

                            $best_sellers_query = "select distinct
                                                   p.products_id,
                                                   p.products_price,
                                                   p.products_tax_class_id,
                                                   p.products_image,
                                                   p.products_vpe,
                                                   p.products_vpe_status,
                                                   p.products_vpe_value,
                                                   pd.products_name
                                                   from "
    .TABLE_PRODUCTS." p,
                                                   "
    .TABLE_PRODUCTS_DESCRIPTION." pd,
                                                   "
    .TABLE_PRODUCTS_TO_CATEGORIES." p2c,
                                                   "
    .TABLE_CATEGORIES." c
                                                   where p.products_status = '1'
                                                   and c.categories_status = '1'
                                                   and p.products_ordered > 0
                                                   and p.products_id = pd.products_id
                                                   and pd.language_id = '"
    .(int) $_SESSION['languages_id']."'
                                                   and p.products_id = p2c.products_id
                                                   "
    .$group_check."
                                                   "
    .$fsk_lock."
                                                   and p2c.categories_id = c.categories_id
                                                   and (c.categories_id = '"
    . (int)$current_category_id . "' or c.parent_id = '" . (int)$current_category_id . "')
                                                   order by p.products_ordered desc
                                                   limit "
    .MAX_DISPLAY_BESTSELLERS;
                      // EOF - Dokuman - 2009-05-28 - Performance optimization
                    } else {
                            $best_sellers_query = "select distinct
                                                   p.products_id,
                                                   p.products_image,
                                                   p.products_price,
                                                   p.products_vpe,
                                                   p.products_vpe_status,
                                                   p.products_vpe_value,
                                                   p.products_tax_class_id,
                                                   pd.products_name from "
    .TABLE_PRODUCTS." p,
                                                   "
    .TABLE_PRODUCTS_DESCRIPTION." pd       
                                                   where p.products_status = '1'
                                                   "
    .$group_check."
                                                   and p.products_ordered > 0
                                                   and p.products_id = pd.products_id "
    .$fsk_lock."
                                                   and pd.language_id = '"
    .(int) $_SESSION['languages_id']."'
                                                   order by p.products_ordered desc
                                                   limit "
    .MAX_DISPLAY_BESTSELLERS;
                    }
                    $best_sellers_query = xtDBquery($best_sellers_query);
                    if (xtc_db_num_rows($best_sellers_query, true) >= MIN_DISPLAY_BESTSELLERS) {
                   
                            $rows = 0;
                            $box_content = array ();
                            while ($best_sellers = xtc_db_fetch_array($best_sellers_query, true)) {
                                    $rows ++;
                                    $image = '';
                                   
                                    $best_sellers = array_merge($best_sellers, array ('ID' => xtc_row_number_format($rows)));
                                    $box_content[] = $product->buildDataArray($best_sellers);
                                   
                            }
                    }
                    $box_smarty->assign('box_content', $box_content);
            }
      //BOF - DokuMan - 2010-07-12 - fix Smarty cache error on unlink
      // set cache ID
      /*
       if (!$cache || $rebuild) {
        if (count($box_content)>0) {
          if ($rebuild)  $box_smarty->clear_cache(CURRENT_TEMPLATE.'/boxes/box_best_sellers.html', $cache_id);
          $box_best_sellers = $box_smarty->fetch(CURRENT_TEMPLATE.'/boxes/box_best_sellers.html',$cache_id);
          $smarty->assign('box_BESTSELLERS', $box_best_sellers);
        }
      } else {
        $box_best_sellers = $box_smarty->fetch(CURRENT_TEMPLATE.'/boxes/box_best_sellers.html', $cache_id);
        $smarty->assign('box_BESTSELLERS', $box_best_sellers);
      }
      */

      if (count($box_content) > 0) {
        $box_best_sellers = '';
          // set cache ID
        if (!$cache) {
          if ($box_content!='') {
              $box_best_sellers = $box_smarty->fetch(CURRENT_TEMPLATE.'/boxes/box_best_sellers.html');
          }
        } else {
          $box_best_sellers = $box_smarty->fetch(CURRENT_TEMPLATE.'/boxes/box_best_sellers.html', $cache_id);
        }

        $smarty->assign('box_BESTSELLERS', $box_best_sellers);
      }
    }
    //EOF - DokuMan - 2010-07-12 - fix Smarty cache error on unlink
    ?>

    Grüß
    Mark

    DirkK

    • Fördermitglied
    • Beiträge: 230
    • Geschlecht:
    Re: Artikelname im Bestsellerbox mit Leerzeichen
    Antwort #3 am: 10. August 2012, 10:35:33
    Da nichts geändert mal eine andere Vermutung:

    Ist der Produktname ein Wort? Also "Singel-Reisehängematte" oder ist es mit Leerzeichen geschrieben "Singel - Reisehängematte"?
    Falls ohne Leerzeichen versuch doch bitte mal was passiert wenn Du da welche reinmachst. Da der Name ja nicht in eine Zeile passt, könnte es sein das durch den auto. Umbruch da was durcheinander kommt (evt. Bug).

    Gruß
     Dirk

    gabto

    • Neu im Forum
    • Beiträge: 26
    Re: Artikelname im Bestsellerbox mit Leerzeichen
    Antwort #4 am: 10. August 2012, 11:07:04
    Hallo Dirk,

    ja, der Produktname ist ein Wort, also ohne jegliche Leerzeichen. Habe eine Leerzeichen probeweise zwischen Single - Reisehängematte hinzugefügt und zack: der Artikelname wird korrekt wiedergegeben! Scheint tatsächlich ein Bug zu sein.

    Da ich nicht so gerne alle Artikelnamen umändern möchte, kann ich nur darauf hoffen, dass sich einen Experten die Sache annimmt und für Abhilfe schafft.

    Vielen Dank für deine Hilfe

    Grüß
    Mark

    DirkK

    • Fördermitglied
    • Beiträge: 230
    • Geschlecht:
    Re: Artikelname im Bestsellerbox mit Leerzeichen
    Antwort #5 am: 10. August 2012, 11:21:24
    So hab's mal im Demoshop SP1d getestet. Auch dort wird das Leerzeichen eingefügt wenn ich genau Deinen Artikelnamen benutze. Folgendes ändert sich:

    • Singel-Reisehängematte
    • Singel-
      Reisehängem atte

    • Singel1-Reisehängematte
    • Singel1-
      Reisehänge matte

    • Singel12-Reisehängematte
    • Singel12-
      Reisehäng ematte

    Erst ab 3 weiteren Zeichen vor dem "-" wird kein Leerzeichen mehr eingefügt. Fehler tritt nur im Demoshop SP1d auf. Im demoshop 1.05 ist der Fehler noch nicht.

    Gruß
     Dirk

    gabto

    • Neu im Forum
    • Beiträge: 26
    Re: Artikelname im Bestsellerbox mit Leerzeichen
    Antwort #6 am: 10. August 2012, 11:53:01
    Ich habe die Version 1.05 SP1b. Vielleicht sollte die 1d Version runterladen und schauen ob die beiden Dateien (box_best_seller.html und /oder best_seller.php) geändert wurden?

    Grüß
    Mark

    PS. Allerdings, wenn ich die Update Dateien aus der Versionen c un d anschaue, sehe ich keine neue Dateien dabei
    Marktplatz - Eine große Auswahl an neuen und hilfreichen Modulen sowie modernen Templates für die modified eCommerce Shopsoftware
    16 Antworten
    6949 Aufrufe
    24. Oktober 2011, 09:20:56 von Carsten
    3 Antworten
    1833 Aufrufe
    07. Juli 2016, 16:25:29 von awids
    4 Antworten
    2367 Aufrufe
    08. November 2016, 20:44:58 von demoncleaner
    9 Antworten
    6786 Aufrufe
    03. April 2013, 07:25:57 von remo
               
    anything