Hallo,
kurze Anfrage, wie kann ich den Startartikel einer bestimmten Category ermittlen?
CategoryID = 9;
Ich benötige diese ID für einen Vergleich bei Artikeln in einer Artikelliste unter Category 9.
Genau: Wenn nicht Artikelliste-Aufruf via Modul im Startartikel, dann zeige bei direktem Link auf einzelnen Artikeln einen besonderen Link an.
Danke und Gruss
Sandmaus
Hallo,
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 und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme 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: https://redaxo.org/slack/
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 und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme 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: https://redaxo.org/slack/
Re: Startartikel
Hallo Sandmaus!
Den Startartikel einer bestimmten Kategorie findest du so:
Ein guter Anlaufpunkt für solche Fälle ist immer das Cheatsheet.sandmaus hat geschrieben:kurze Anfrage, wie kann ich den Startartikel einer bestimmten Category ermittlen?
Den Startartikel einer bestimmten Kategorie findest du so:
Code: Alles auswählen
$cat = OOCategory::getCategoryById(CAT_ID);
$startArticle = $cat->getStartArticle();
Zuletzt geändert von Xong am 22. Jul 2009, 15:28, insgesamt 1-mal geändert.
Startartikel
Hey, ich hab den Code reingesetzt,
Ich habe eine Modul Artikelliste im Startartikel eingebunden. Damit liste ich 3 Artikel darunter. Diese sollen nur in der Einzelansicht einen Schalter bekommen, wenn ich diese via Artikelliste anzeige, dann nicht.
Der o.g. Script wird leider immer angezeigt, soll aber nur bei den Einzelartikeln. Habe in in das Modul, welches den Inhalt für die Artikel organisiert, reingesetzt.
Wie kann ich das lösen?
Danke Sandmaus
Code: Alles auswählen
$cat = OOCategory::getCategoryById(REX_CATEGORY_ID);
if ($cat->getStartArticle()) { echo "kein Link" ;}
Der o.g. Script wird leider immer angezeigt, soll aber nur bei den Einzelartikeln. Habe in in das Modul, welches den Inhalt für die Artikel organisiert, reingesetzt.
Wie kann ich das lösen?
Danke Sandmaus
ich quatsch mal mit...
Zuerst: Mir hat der code auch geholfen, denn ich will in meiner Artikelliste den ersten (Startartikel) Artikel nicht angezeigt bekommen (weil ich dort lediglich den block "Artikelliste" plaziert habe) und in allen anderen sind Bildergalerien hinterlegt.
Nur weiß ich nicht wie ich eben jetzt genau den Standardartikel erwische...
if ($cat->getStartArticle()=="hier die ID ?!") { echo "kein Link" ;}
ich kenn die genaue syntax nicht und wie ich an eben die ID komm weiß ich auch nicht...
ich weiß nicht ob das, dass ist was sandmaus auch möchte, aber so in der art hab ichs verstanden
Zuerst: Mir hat der code auch geholfen, denn ich will in meiner Artikelliste den ersten (Startartikel) Artikel nicht angezeigt bekommen (weil ich dort lediglich den block "Artikelliste" plaziert habe) und in allen anderen sind Bildergalerien hinterlegt.
Nur weiß ich nicht wie ich eben jetzt genau den Standardartikel erwische...
if ($cat->getStartArticle()=="hier die ID ?!") { echo "kein Link" ;}
ich kenn die genaue syntax nicht und wie ich an eben die ID komm weiß ich auch nicht...
ich weiß nicht ob das, dass ist was sandmaus auch möchte, aber so in der art hab ichs verstanden
Startartikel
ja, da beißt sich die Katze in den Schwanz. Rum wie num, ich bekomme keinen Vergleichswert und habe es nun mit einer SESSION VAR gelöst.
Im Artikellistenmodul gleich zu Beginn:
Session[Link] = 1
Dann am Ende:
Session[Link] = 0
Im Modul Anzeigen Artikel:
IF empty(Session[Link]) or Session[Link] = 0 then Link zur Liste anzeigen
Gruss Sandmaus
Im Artikellistenmodul gleich zu Beginn:
Session[Link] = 1
Dann am Ende:
Session[Link] = 0
Im Modul Anzeigen Artikel:
IF empty(Session[Link]) or Session[Link] = 0 then Link zur Liste anzeigen
Gruss Sandmaus
Hi...
mich auch noch mal einmisch ....
1. CheatSheet 4.1 oder 4.2 - das sollte schonmal helfen
2.
- Alle Artikel rausholen ($cat->getArticles()))
- Überprüfen ob Startartikel dabei ist
if(isStartArticle()) { print "JAAAAA"; } else { print "NEIN"; }
- Dann restliche Artikel (ohne StartArtikel) in ein Array und ab damit.
nur so mal hingetippelt (umgetestet) ...
grz. Chris
mich auch noch mal einmisch ....
1. CheatSheet 4.1 oder 4.2 - das sollte schonmal helfen
2.
- Alle Artikel rausholen ($cat->getArticles()))
- Überprüfen ob Startartikel dabei ist
if(isStartArticle()) { print "JAAAAA"; } else { print "NEIN"; }
- Dann restliche Artikel (ohne StartArtikel) in ein Array und ab damit.
nur so mal hingetippelt (umgetestet) ...
grz. Chris
Tut mir wirklich leid aber ich muss nochmal stören
Da ich von PHP wirklich keine Ahnung habe (da nie damit befasst) müsste jemand von euch mir vll detailiert zeigen wie das geht.
Ich habs natürlich probiert, keine Frage:
Als "Vorbild" habe ich den Post von darwin genommen. Ich DENKE so prüft man ob die Startpage auch rübergeholt wird, sollte das der Fall sein müsste er nichts ausgeben ansonsten das was er normal auch tut.
Fatal error: Call to undefined function isStartArticle() in /usr/www/users/netcuf/redaxo/include/classes/class.rex_article.inc.php(271) : eval()'d code on line 6
Is das Ergebnis meiner "Bemühungen"
Mir wäre sehr weitergeholfen wenn ich dieses kleine, aber dennoch wirklich lästige Problem endlich in den Griff bekommen würde.
Vielen Dank,
Timo
Da ich von PHP wirklich keine Ahnung habe (da nie damit befasst) müsste jemand von euch mir vll detailiert zeigen wie das geht.
Ich habs natürlich probiert, keine Frage:
Code: Alles auswählen
<?php
$cat = OOCategory::getCategoryById($this->getValue("category_id"));
$article = $cat->getArticles();
if(isStartArticle($article))
{
echo '';
}
else
{
if (is_array($article))
{
foreach ($article as $var)
{
$articleId = $var->getId();
$articleName = $var->getName();
$articleDescription = $var->getDescription();
$artikelbild=$var->getValue("art_file");
if ($var->getValue('_startpage') != 1)
{
echo '<a href="'.rex_getUrl($articleId).'" class="faq"><img src="files/'.$artikelbild.'" height="150" width="150"></a>';
echo '<a href="'.rex_getUrl($articleId).'" class="faq">'.$articleName.'</a><br />';
}
}
}
}
?>
Fatal error: Call to undefined function isStartArticle() in /usr/www/users/netcuf/redaxo/include/classes/class.rex_article.inc.php(271) : eval()'d code on line 6
Is das Ergebnis meiner "Bemühungen"
Mir wäre sehr weitergeholfen wenn ich dieses kleine, aber dennoch wirklich lästige Problem endlich in den Griff bekommen würde.
Vielen Dank,
Timo
Hi,
weitere Beiespiele findest du im Download-Bereich (Modul/Auflistungen)
grz. Chris
Code: Alles auswählen
<?php
$cat = OOCategory::getCategoryById($this->getValue("category_id"));
$articles = $cat->getArticles(true); // Alle Online-Artikel rausholen
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;
$articleId = $var->getId();
$articleName = $var->getName();
$articleDescription = $var->getDescription();
$artikelbild = $var->getValue("art_file");
}
}
?>
grz. Chris
mir wirds schon langsam peinlich, nur funktioniert das auch nicht und ich sollts schon irgendwie gelöst beokmmen weil das ziemlich stört der "leere" link...und ohne eure hilfe schaff ichs nicht...noch nichtmal wirklich mit eurer
ich hoffe also ihr habt nachsicht und helft mir trotzdem noch irgendwie weiter
gruß,
timo
ich hoffe also ihr habt nachsicht und helft mir trotzdem noch irgendwie weiter
gruß,
timo
- Gregor.Harlan
- Entwickler
- Beiträge: 1130
- Registriert: 4. Jun 2007, 10:35
- Wohnort: Frankfurt am Main
Hallo,
na dann versuch ich es auch mal:
Gruß, Gregor
na dann versuch ich es auch mal:
Code: Alles auswählen
<?php
$cat = OOCategory::getCategoryById($this->getValue("category_id"));
$articles = $cat->getArticles(true); // Alle Online-Artikel rausholen
if (is_array($articles) && count($articles) > 0) {
foreach ($articles as $article) {
// Startartikel ausblenden
if ($article->isStartArticle()) continue;
$articleId = $article->getId();
$articleName = $article->getName();
$articleDescription = $article->getDescription();
$artikelbild = $article->getValue("art_file");
echo '<a href="'.$article->getUrl().'" class="faq"><img src="files/'.$artikelbild.'" height="150" width="150"></a>';
echo '<a href="'.$article->getUrl().'" class="faq">'.$articleName.'</a><br />';
}
}
?>
-
- Beiträge: 224
- Registriert: 18. Feb 2005, 14:00
- Wohnort: stuttgart