Seite 1 von 1

Yrewrite gibt Artikel ohne Template aus?

Verfasst: 7. Apr 2018, 16:31
von katematsuda
Ich habe Yrewrite installiert, aber es ärgert sich an meinem Ausgabemodul herum und die Frontendausgabe erfolgt ohne Template.

Jetzt stehe ich doch vollkommen auf dem Schlauch.

Mein Modul liest alle Artikel einer Kategorie aus und gibt sie immer in Paketen aus, zusammen mit einem Link zu dem nächsten Fünferpack.

Ich habe versucht zu verstehen was genau Yrewrite an dem Modul stören könnte, aber ich sehe es einfach nicht.

Das Modul funktioniert einwandfrei:

Code: Alles auswählen

<?php

// Nur im Frontend
if (!rex::isBackend()):

if(!function_exists('sortArticlesByCreateDate'))
{
// Sortierfunktion
  function sortArticlesByCreateDate( $artA, $artB) {
     $createA = $artA->getValue('createdate');
     $createB = $artB->getValue('createdate');

     if ( $createA == $createB) {
        return 0;
     }

     return $createA > $createB ? -1 : 1;
  }
}

$start = !empty($_GET['start']) ? (int) $_GET['start'] : 0; // Startitem
$offset = 5; // 5 Items pro Seite
$cats = array( REX_CATEGORY_ID); // alle Kategorien die Du "indizieren" willst

$articles = array();

foreach ( $cats as $catId) {
  $cat = rex_category::get( $catId);
 
  // CatIds die nicht funktionieren aussortieren
  if( $cat === null) {
     continue;
  }

  $cat_articles = $cat->getArticles( true);

  foreach ( $cat_articles as $ooarticle) {
     // keine Startartikel anzeigen
    if ( $ooarticle->isStartArticle()) {
       continue;
     }

     // Damit keine Endlosschleife passiert, den Artikel der die Pagination setzt ?berspringen
     if ( $ooarticle->getId() == REX_ARTICLE_ID) {
        continue;
     }
     $articles[] = $ooarticle;
  }
}
$articles_length = count( $articles);

// Sortieren nach Erstellungsdatum
if ( $articles_length > 0) {

   usort( $articles, "sortArticlesByCreateDate"); 
}

$article_list = array_slice( $articles, $start, $offset);

foreach ( $article_list as $ooarticle) {
  $artId = $ooarticle->getId();

  $article = new rex_article_content( $artId);echo '<br>';
  echo $article->getArticle();
  echo '<br><br><br><br><br><br>';
 
}

$prevStart = $start - $offset;
if ( $prevStart < 0)
{
   $prevStart = '';
}

$nextStart = $start + $offset;
if ( $nextStart >= $articles_length)
{
   $nextStart = '';
}



// Vorherige Seite Link
if ( $prevStart !== '') {
  echo '<a href="'.  rex_getUrl( '', '', array('start'=>$prevStart)).'"> < back </a>';
}

// N?chste Seite
if ( $nextStart !== '') {
  echo '<a href="'.  rex_getUrl( '', '', array('start'=>$nextStart)).'"> more > </a>';
}

endif;

?>
Es ist ja nicht so, dass keine Ausgabe erfolgt wenn ich Yrewrite anschalte, aber erstens erfolgt die Ausgabe wie gesagt ohne Template und CSS, und die Links sind dann auch nicht umgewandelt.

Wie Yrewrite diesen Fall überhaupt regeln kann ist mir auch schleierhaft. Aber warum die Ausgabe des Templates unterdrückt wird ebenfalls.