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/
pmohsky
Beiträge: 4
Registriert: 17. Okt 2011, 12:00

Artikelinhalt auf Startseite ausgeben

17. Okt 2011, 16:55

Hallo liebes Redaxo-Forum,

ich möchte gern auf meiner Startseite alle Artikel einer Kategorie ausgeben. Ich habe hier im Forum bereits folgendes Script gefunden.

Code: Alles auswählen

<?php

   if($REX['REDAXO'] != 1) {
      $cat = OOCategory::getCategoryById(REX_VALUE[1]); // hier die ID der Kategorie
      $articles = $cat->getArticles( true ); // Alle Artikel der Kategorie auslesen, die Online sind


      if ( is_array( $articles) && count( $articles) > 0) {

         foreach ( $articles as $article) {
          
 // Den aktuellen Artikel nicht verlinken
            if ( $article->getId() == REX_ARTICLE_ID) continue;

            // Startartikel ausblenden
            if ( $article->isStartPage()) continue;

echo "<li><a href=\"" . rex_getUrl($article->getId()) . "\">" . $article->getName() . "</a></li>";

         }

      }
   }
   else
      echo "Alle Artikel der Kategorie REX_VALUE[1] ausgeben!";
?> 
Allerdings möchte ich den Artikelinhalt direkt auslesen und nicht wie hier als Link zum Artikel darstellen. Es geht um die folgende Zeile :

Code: Alles auswählen

echo "<li><a href=\"" . rex_getUrl($article->getId()) . "\">" . $article->getName() . "</a></li>";
ich habe bereits

Code: Alles auswählen

echo "<div>" . $article . "</div>";
versucht doch leider ohne Erfolg...würde mich sehr freuen wenn ihr mir weiter helfen könntet.

Beste Grüße und vielen Dank...

Benutzeravatar
Oliver.Kreischer
Beiträge: 2509
Registriert: 17. Dez 2004, 00:03
Wohnort: Velbert - LA
Kontaktdaten: Website

Re: Artikelinhalt auf Startseite ausgeben

18. Okt 2011, 08:57

Hi,

ungetestet:

Code: Alles auswählen

echo "<div>".$article->getArticle()."</div>";
LG
Oliver
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!

pmohsky
Beiträge: 4
Registriert: 17. Okt 2011, 12:00

Re: Artikelinhalt auf Startseite ausgeben

18. Okt 2011, 10:35

Hallo Oliver,

vielen Dank für deine Hilfe...doch leider bekomme ich folgende Fehlermeldung

Fatal error: Call to undefined method OOArticle::getArticle()

:(

Benutzeravatar
Oliver.Kreischer
Beiträge: 2509
Registriert: 17. Dez 2004, 00:03
Wohnort: Velbert - LA
Kontaktdaten: Website

Re: Artikelinhalt auf Startseite ausgeben

18. Okt 2011, 11:02

Hi,

dann versuche das mal:
(Ctypes und Sprachen nicht berücksichtigt)

Code: Alles auswählen

<?php
	if($REX['REDAXO'] != 1) {
		$cat = OOCategory::getCategoryById(42); // hier die ID der Kategorie
        $articles = $cat->getArticles( true ); // Alle Artikel der Kategorie auslesen, die Online sind
        if ( is_array( $articles) && count( $articles) > 0) {
        	foreach ( $articles as $article) {

			$id = $article->getID();
			
			$a = new article();
			$a->setArticleId($id);
			$artikelinhalt = $a->getArticle();
		
         	echo '<div>'.$artikelinhalt.'</div>';
           	}
		}
    } else {
          echo "Aller Artikel eine bestimmt Kategorie ausgeben!";
	}
?> 
LG
Oliver

P.S.: Nicht vergessen die ID der Kategorie (hier 42) zu ändern!
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!

pmohsky
Beiträge: 4
Registriert: 17. Okt 2011, 12:00

Re: Artikelinhalt auf Startseite ausgeben

18. Okt 2011, 11:20

Vielen Dank!

hat super funktioniert...hier noch einmal eine alternative Lösung, die nur den Inhalt des Artikels ohne den Titel anzeigt:

Code: Alles auswählen

<?php

   if($REX['REDAXO'] != 1) {
      $cat = OOCategory::getCategoryById(REX_VALUE[1]); // hier die ID der Kategorie
      $articles = $cat->getArticles( true ); // Alle Artikel der Kategorie auslesen, die Online sind


      if ( is_array( $articles) && count( $articles) > 0) {

$art = new article();

         foreach ( $articles as $article) {

// Den aktuellen Artikel nicht verlinken
            if ( $article->getId() == REX_ARTICLE_ID) continue;

            // Startartikel ausblenden
            if ( $article->isStartPage()) continue;

      
$art->setArticleId( $article->getId());
 $content = $art->getArticle();
  echo $content; 

         }

      }
   }
   else
      echo "Alle Artikel der Kategorie REX_VALUE[1] ausgeben!";
?>

Zurück zu „Allgemeines [R3]“