Hallo, lieber Forumbenutzer. Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen Möglichkeiten der Kommunikation ist das Forum ein wenig eingeschlafen und weniger Nutzer benutzen das Forum aktiv (trotzdem lohnt es sich evtl. hier nach Lösungen zu suchen oder seine Frage zu stellen).

Wir empfehlen, für deine Fragen/Probleme aktuell (zusätzlich) Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: http://redaxo.org/slack/
katematsuda
Beiträge: 26
Registriert: 1. Dez 2017, 18:08

Yrewrite gibt Artikel ohne Template aus?

7. Apr 2018, 16:31

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.

Zurück zu „AddOns / Packages [R5]“