Ankündigung

Einklappen
Keine Ankündigung bisher.

Komisches Verhalten bei Detailseitenermittlung in foreach Schleife

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Komisches Verhalten bei Detailseitenermittlung in foreach Schleife

    Moin Tim,

    ich habe hier ein komisches Verhalten innerhalb einer CC Liste.
    Ich möchte die URL der Detailseiten der jeweiligen Listeneinträge haben und verwende u.a. diesen Code:

    PHP-Code:
    <?php foreach($this->entries as $entry): ?>

    ...

    <?php
            $intJumpTo 
    25;

            
    $objCC = \CustomCatalog::findByTableName('tbl_product_catalog');
            
    // echo $entry->id;

            
    $objEntry $objCC->findPublishedItemByIdOrAlias($entry->id);
            
    // print_r($objEntry);
            
            
    $strDetailsHref $objCC->generateDetailsUrl($objEntry,$intJumpTo);
            echo 
    $strDetailsHref;
    ?>
    ...
    <?php endforeach; ?>

    Ich erhalte bei allen Ausgabe-URLs immer den gleichen Eintrag...

    Wenn ich mir anschaue was jeweils in $objEntry drin steht:
    PHP-Code:
    2Contao\Database\Result Object ( [resResult:protected] => [strQuery:protected] => SELECT tbl_product_catalog.* FROM tbl_product_catalog WHERE tbl_product_catalog.id='2' [resultSet:protected] => Array ( [0] => Array ( [id] => [pid] => [tstamp] => 1600186621 [sorting] => [ptable] => [name] => Transport Box [alias] => transport-box [image] => t`��V�x ��E [orderSRC_gallery] => a:2:{i:0;s:16:"t`�V�x ��E";i:1;s:16:"t�$�V�x ��E";} [gallery] => a:2:{i:0;s:16:"t`��V�x ��E";i:1;s:16:"t�$�V�x ��E";} [item_number] => ABCD-2 [price] => 400 [notelist] => 1 [publish] => 1 [category] => 80 ) ) [intIndex:Contao\Database\Result:private] => 0 [rowCount:Contao\Database\Result:private] => 1 [arrModified:Contao\Database\Result:private] => Array ( ) ) http://dev.gb-projekt.de/detailseite/transport-box.html

    3Contao\Database\Result Object ( [resResult:protected] => [strQuery:protected] => SELECT tbl_product_catalog.* FROM tbl_product_catalog WHERE tbl_product_catalog.id='2' [resultSet:protected] => Array ( [0] => Array ( [id] => 2 [pid] => 0 [tstamp] => 1600186621 [sorting] => 0 [ptable] => [name] => Transport Box [alias] => transport-box [image] => t
    `�V�x ��E [orderSRC_gallery] => a:2:{i:0;s:16:"t`��V�x ��E";i:1;s:16:"t�$�V�x ��E";} [gallery] => a:2:{i:0;s:16:"t`��V�x ��E";i:1;s:16:"t�$�V�x ��E";} [item_number] => ABCD-[price] => 400 [notelist] => [publish] => [category] => 80 ) ) [intIndex:Contao\Database\Result:private] => [rowCount:Contao\Database\Result:private] => [arrModified:Contao\Database\Result:private] => Array ( ) ) http://dev.gb-projekt.de/detailseite/transport-box.html 
    ... dann sind die Inhalte identisch? $objEntry enthält nur das erste Objekt obwohl $entry->id korrekterweise die beiden unerschiedlichen IDs auswirft und diese dann wohl auch so angewendet werden.

    Kann ich das hier so in einer foreach nicht anwenden oder was mache ich falsch?
    Danke Dir!!

  • #2
    Du brauchst den Eintrag nicht erneut abzufragen. $entry beinhaltet alle Infromationen. Das CC Objekt kann ausserhalb der Schleife gesetzt sein, damit es nicht neuerstellt wird je Durchlauf.
    Code:
    $strDetailsHref = $objCustomCatalog->generateDetailsUrl($entry,25);
    Ist quasi wie das hier gemacht: https://forum.premium-contao-themes....ink-je-sprache
    http://www.premium-contao-themes.com

    Kommentar


    • #3
      Isse great - Danke!

      Kommentar

      Lädt...
      X