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/
AddOn News - Funktion Anzahl Einträge beim Bsp Modul
Hallo,
das AddOn ist wirklich klasse, vielen Dank für so viel Mühe!!!
Ich hatte noch einen kleinen Fehler gefunden: Bei mir wurde nicht der Teasertext abgespeichert (hab dann die functions/functions_news_actions.inc.php angepasst -
$teaser = $_POST['entry_teaser'] etc )
----------------------------------------------------------------------
Meine Frage:
Da ist ein Beispiel für die Eingabe und Ausgabe eines Moduls enthalten. Bei der Eingabe kann man auch die Anzahl der Einträge auswählen. Das hat allerdings bei der Ausgabe keine Auswirkungen. Habe ich da etwas übersehen? Kann man irgendwo noch ein limit setzen o.ä.??
Würde mich über Feedback sehr freuen,
Doris
das AddOn ist wirklich klasse, vielen Dank für so viel Mühe!!!
Ich hatte noch einen kleinen Fehler gefunden: Bei mir wurde nicht der Teasertext abgespeichert (hab dann die functions/functions_news_actions.inc.php angepasst -
$teaser = $_POST['entry_teaser'] etc )
----------------------------------------------------------------------
Meine Frage:
Da ist ein Beispiel für die Eingabe und Ausgabe eines Moduls enthalten. Bei der Eingabe kann man auch die Anzahl der Einträge auswählen. Das hat allerdings bei der Ausgabe keine Auswirkungen. Habe ich da etwas übersehen? Kann man irgendwo noch ein limit setzen o.ä.??
Würde mich über Feedback sehr freuen,
Doris
Hallo Doris
Danke für die Rückmeldung und die Fehlersuche! Ich habe das Feld für den Teaser selbst noch nicht benutzt, deshalb habe ich den Fehler noch nicht bemerkt.
In der nächsten Version werden diese Fehler behoben sein. Das Addon wird dann auch ins Rechtesystem von Redaxo integriert sein, so dass eine Webseite mit vielen Autoren und Newskategorien besser verwaltet werden kann. Deshalb kommt diese Version nicht sofort, ich muss zuerst noch einige Tests durchführen. Bis dahin kannst du das Modul folgendermassen selbst flicken:
In der Modul-Ausgabe muss nach
die Linie
hinzugefügt werden. Dann funktioniert die Beschränkung der Anzahl.
Gruss
Stephan
Danke für die Rückmeldung und die Fehlersuche! Ich habe das Feld für den Teaser selbst noch nicht benutzt, deshalb habe ich den Fehler noch nicht bemerkt.
In der nächsten Version werden diese Fehler behoben sein. Das Addon wird dann auch ins Rechtesystem von Redaxo integriert sein, so dass eine Webseite mit vielen Autoren und Newskategorien besser verwaltet werden kann. Deshalb kommt diese Version nicht sofort, ich muss zuerst noch einige Tests durchführen. Bis dahin kannst du das Modul folgendermassen selbst flicken:
In der Modul-Ausgabe muss nach
Code: Alles auswählen
if("REX_VALUE[4]"=="desc") {$entries = array_reverse($entries, true);}
Code: Alles auswählen
$entries = array_slice($entries, 0, "REX_VALUE[2]");
Gruss
Stephan
Re: AddOn News - Funktion Anzahl Einträge beim Bsp Modul
Da ich auch gerade das "Problem" hatte möchte ich noch der Vollständigkeit halber erwähnen, dass in der install.php noch die Spalte "teaser" zum erstellen der Tabelle eingetragen werden muss (oder nachträglich via phpmyadmin)doris hat geschrieben:... Bei mir wurde nicht der Teasertext abgespeichert (hab dann die functions/functions_news_actions.inc.php angepasst -
$teaser = $_POST['entry_teaser'] etc )
...
Gruß
Christoph
Hallo,
habe das gleiche Problem mit dem "Kurztext", gehe deswegen davon aus das das Addon im Downloadbereich noch nicht aktualisiert wurde.
Es wäre schön wenn man hier deswegen vieleicht noch einmal den kompletten CODE der geändert werden muss bzw. das was manuell in die SQL Datenbank eingefügt werden muss gepostet werden könnte.
Vieleicht könnte ja der Autor auch das Addon einmal updaten, damit es UP TO DATE ist.
Gruß Ralf
habe das gleiche Problem mit dem "Kurztext", gehe deswegen davon aus das das Addon im Downloadbereich noch nicht aktualisiert wurde.
Es wäre schön wenn man hier deswegen vieleicht noch einmal den kompletten CODE der geändert werden muss bzw. das was manuell in die SQL Datenbank eingefügt werden muss gepostet werden könnte.
Vieleicht könnte ja der Autor auch das Addon einmal updaten, damit es UP TO DATE ist.
Gruß Ralf
Hallo Ralf
Ich habe nun den aktuellen Stand des Addons in den Downloadbereich gestellt. Das Kurztext-Problem sollte damit gelöst sein.
Zusätzlich hat das Addon nun eine Rechteverwaltung, in der jedem Benutzer Kategorien zugewiesen werden können, die er bearbeiten darf. Sie ist integriert in die Rechteverwaltung von Redaxo, d.h. man kann die Rechte auf der Benutzerseite im Backend setzen. Der erstellende Benutzer hat automatisch auch das Recht, eine Kategorie zu bearbeiten, für Einbenutzerkonfigurationen ändert sich also nichts.
Eine Dokumentation ist im Ordner /doc zu finden, zum Lesen muss einfach die enthaltene index.html im Browser geöffnet werden.
Gruss
Stephan
Ich habe nun den aktuellen Stand des Addons in den Downloadbereich gestellt. Das Kurztext-Problem sollte damit gelöst sein.
Zusätzlich hat das Addon nun eine Rechteverwaltung, in der jedem Benutzer Kategorien zugewiesen werden können, die er bearbeiten darf. Sie ist integriert in die Rechteverwaltung von Redaxo, d.h. man kann die Rechte auf der Benutzerseite im Backend setzen. Der erstellende Benutzer hat automatisch auch das Recht, eine Kategorie zu bearbeiten, für Einbenutzerkonfigurationen ändert sich also nichts.
Eine Dokumentation ist im Ordner /doc zu finden, zum Lesen muss einfach die enthaltene index.html im Browser geöffnet werden.
Gruss
Stephan
Hallo,
habe das neue Addon jetzt installiert, klappt super.
Hat jemand schon eine Ausgabe für das Addon hinbekommen, die man auf die zb. Startseite einbindet und die dann evt. die Newsmeldung in Kurzform ausgibt, mit einem "mehr" oder "weiterlesen" Link zu der eigentlichen News.
Habe verzweifelt versucht so etwas hinzubekommen klappt aber irgentwie nicht so wie es soll.
Gruß Ralf
habe das neue Addon jetzt installiert, klappt super.
Hat jemand schon eine Ausgabe für das Addon hinbekommen, die man auf die zb. Startseite einbindet und die dann evt. die Newsmeldung in Kurzform ausgibt, mit einem "mehr" oder "weiterlesen" Link zu der eigentlichen News.
Habe verzweifelt versucht so etwas hinzubekommen klappt aber irgentwie nicht so wie es soll.
Gruß Ralf
Hallo Sigg,
ja genau das möchte ich.
Der Artikel auf der Startseite soll nur mit dem Kurztext angezeigt werden und dann der Link "mehr" auf den ganzen Eintrag.
Außerdem sollen auf der Startseite nicht alle, sondern nur zb. 4 der letzten Newsmeldungen angezeigt werden.
Und das bekomme ich einfach nicht hin.
Gruß
Ralf
ja genau das möchte ich.
Der Artikel auf der Startseite soll nur mit dem Kurztext angezeigt werden und dann der Link "mehr" auf den ganzen Eintrag.
Außerdem sollen auf der Startseite nicht alle, sondern nur zb. 4 der letzten Newsmeldungen angezeigt werden.
Und das bekomme ich einfach nicht hin.
Gruß
Ralf
Hallo Ralf
Ich habe nun ein Modul aus dem Beispielmodul abgeleitet, das hoffentlich dein Problem löst:
Eingabe:
Ausgabe:
Gruss
Stephan
Ich habe nun ein Modul aus dem Beispielmodul abgeleitet, das hoffentlich dein Problem löst:
Eingabe:
Code: Alles auswählen
<?php
echo '<table width="100%"><tr><td style="vertical-align:top; width:50%; padding:5px;">';
echo "<p>Kategorie auswählen";
$selected_categories = explode("|", "REX_VALUE[1]");
$allCats = OONewsCategory::getAllCategories();
$catSel = new select();
$catSel->set_name("VALUE[1]");
$catSel->set_size(1);
$catSel->set_style("class=inp100");
$catSel->multiple(0);
foreach($allCats as $cat) {
$catSel->add_option($cat->getName(), $cat->getId());
if(in_array($cat->getId(), $selected_categories)) {
$catSel->set_selected($cat->getId());
}
}
echo $catSel->out() . "</p>";
echo "</td>";
echo '<td style="vertical-align:top; width:50%; padding:5px;">';
echo "<p>Anzahl Einträge";
$numSel = new select();
$numSel->multiple(0);
$numSel->set_name("VALUE[2]");
$numSel->set_size(1);
for($i=1;$i<=11;$i++) {
$numSel->add_option($i, $i);
if($i=="REX_VALUE[2]") {
$numSel->set_selected($i);
}
}
echo $numSel->out() . "</p>";
echo "<p>Sortierreihenfolge";
$sortSel = new select();
$sortSel->multiple(0);
$sortSel->set_name("VALUE[4]");
$sortSel->set_size(1);
$sortSel->add_option("aufsteigend", "asc");
$sortSel->add_option("absteigend", "desc");
$sortSel->set_selected("REX_VALUE[4]");
echo $sortSel->out() . "</p>";
echo "<p>Bildgrösse";
$sizeSel = new select();
$sizeSel->multiple(0);
$sizeSel->set_name("VALUE[3]");
$sizeSel->set_size(1);
for($i=60;$i<400;$i+=20) {
$sizeSel->add_option($i . " px", $i);
if($i=="REX_VALUE[3]") {
$sizeSel->set_selected($i);
}
}
echo $sizeSel->out() . "</p>";
echo "</td></tr></table>";
?>
Code: Alles auswählen
<?php
if(isset($_GET['newsitem'])) {
$e = OONewsEntry::getEntryById((int)$_GET['newsitem']);
printf('<h2>%s</h2><p class="teaser">%s</p><p>%s%s</p>',
$e->getTitle(),
$e->getTeaser(),
($e->getFile()!="")
? sprintf('<img src="%s" alt="%s" title="%s" />',
imageProcessor_getImg($e->getFile(), "REX_VALUE[3]", "REX_VALUE[3]"),
$e->getFileDescription(),
$e->getFileTitle())
: "",
$e->getContent()
);
} else {
$selected_categories = explode("|", "REX_VALUE[1]");
foreach($selected_categories as $cat_id) {
echo '<ul class="news">';
$entries = OONewsEntry::getEntriesByCategory($cat_id);
if("REX_VALUE[4]"=="desc") {$entries = array_reverse($entries, true);}
$entries = array_slice($entries, 0, "REX_VALUE[2]");
foreach($entries as $e) {
printf('<li>%s<h3>%s</h3>%s<p>%s <a href="%s">mehr...</a></p></li>',
($e->getDate()>0) ? '<p class="date">' . $e->getDate("d.m.y, H.i") . '</p>' : "",
($e->getLink()!="") ? '<a href="'.$e->getLink().'">'.$e->getTitle().'</a>' : $e->getTitle(),
($e->getFile()!="")
? sprintf('<img src="%s" alt="%s" title="%s" />',
imageProcessor_getImg($e->getFile(), "REX_VALUE[3]", "REX_VALUE[3]"),
$e->getFileDescription(),
$e->getFileTitle())
: "",
$e->getTeaser(),
rex_getUrl(REX_ARTICLE_ID, '', array('newsitem'=>$e->getId()))
);
}
echo '</ul>';
}
}
?>
Stephan
Hallo Stephan,
ja das ist genau das was ich versucht habe hinzubekommen.
Um das ganze jetzt noch zu Perfektionieren, wie bekomme ich das hin, das ich die Newsmeldung wenn ich auf den Link "mehr" klicke auf einer eigenen Seite angezeigt bekomme, denn wenn ich jetzt auf "mehr" klicke wird mir die Newsmeldung in der Sidebar angezeigt und das ist ein bisschen klein.
Danke für Deine hilfe
Gruß Ralf
ja das ist genau das was ich versucht habe hinzubekommen.
Um das ganze jetzt noch zu Perfektionieren, wie bekomme ich das hin, das ich die Newsmeldung wenn ich auf den Link "mehr" klicke auf einer eigenen Seite angezeigt bekomme, denn wenn ich jetzt auf "mehr" klicke wird mir die Newsmeldung in der Sidebar angezeigt und das ist ein bisschen klein.
Danke für Deine hilfe
Gruß Ralf
Hallo Ralf
Das ist genau das Problem, das ich oben versucht habe zu schildern: Das Addon erstellt keine Artikel, es stellt nur eine Klasse zur Verfügung, mit der die Newseinträge in einem Modul abgefragt werden können.
Als Workaround kann ein eigens für die News erstellter Artikel dienen, in dem du dann die ID abfragst und den Newseintrag anzeigst. Dazu sind dann zwei Module notwendig; eines für die Ausgabe der Liste und eines für die Ausgabe eines Eintrags.
Modul 1: Ausgabe der Liste (im ursprünglichen Artikel)
Eingabe: gleich wie vorher beschrieben
Ausgabe:
Dabei musst du <id_des_erstellten_artikels> durch die ID des von dir erstellten Artikels ersetzen.
Modul zur Ausgabe eines vollen Newseintrags (im neu erstellten Artikel)
Eingabe: leer
Ausgabe:
Gruss
Stephan
Das ist genau das Problem, das ich oben versucht habe zu schildern: Das Addon erstellt keine Artikel, es stellt nur eine Klasse zur Verfügung, mit der die Newseinträge in einem Modul abgefragt werden können.
Als Workaround kann ein eigens für die News erstellter Artikel dienen, in dem du dann die ID abfragst und den Newseintrag anzeigst. Dazu sind dann zwei Module notwendig; eines für die Ausgabe der Liste und eines für die Ausgabe eines Eintrags.
Modul 1: Ausgabe der Liste (im ursprünglichen Artikel)
Eingabe: gleich wie vorher beschrieben
Ausgabe:
Code: Alles auswählen
<?php
$selected_categories = explode("|", "REX_VALUE[1]");
foreach($selected_categories as $cat_id) {
echo '<ul class="news">';
$entries = OONewsEntry::getEntriesByCategory($cat_id);
if("REX_VALUE[4]"=="desc") {$entries = array_reverse($entries, true);}
$entries = array_slice($entries, 0, "REX_VALUE[2]");
foreach($entries as $e) {
printf('<li>%s<h3>%s</h3>%s<p>%s <a href="%s">mehr...</a></p></li>',
($e->getDate()>0) ? '<p class="date">' . $e->getDate("d.m.y, H.i") . '</p>' : "",
($e->getLink()!="") ? '<a href="'.$e->getLink().'">'.$e->getTitle().'</a>' : $e->getTitle(),
($e->getFile()!="")
? sprintf('<img src="%s" alt="%s" title="%s" />',
imageProcessor_getImg($e->getFile(), "REX_VALUE[3]", "REX_VALUE[3]"),
$e->getFileDescription(),
$e->getFileTitle())
: "",
$e->getTeaser(),
rex_getUrl(<id_des_erstellten_artikels>, '', array('newsitem'=>$e->getId()))
);
}
echo '</ul>';
}
?>
Modul zur Ausgabe eines vollen Newseintrags (im neu erstellten Artikel)
Eingabe: leer
Ausgabe:
Code: Alles auswählen
if(isset($_GET['newsitem'])) {
$e = OONewsEntry::getEntryById((int)$_GET['newsitem']);
printf('<h2>%s</h2><p class="teaser">%s</p><p>%s%s</p>',
$e->getTitle(),
$e->getTeaser(),
($e->getFile()!="")
? sprintf('<img src="%s" alt="%s" title="%s" />',
imageProcessor_getImg($e->getFile(), "REX_VALUE[3]", "REX_VALUE[3]"),
$e->getFileDescription(),
$e->getFileTitle())
: "",
$e->getContent()
);
} else {
echo "Eintrag nicht verfügbar.";
}
Stephan
Hallo Louis
Du müsstest genauer schreiben, was nicht funktioniert: Welches Datum hast du eingesetzt? Und wie möchtest du die News ausgeben? Benützt du die oben besprochene Variante?
Wenn die News angezeigt werden sollten (also das Datum des Eintrags noch nicht vorbei ist, das "sichtbar von"-Datum schon vorbei ist und das "sichtbar bis"-Datum noch nicht vorbei ist oder Mischformen, siehe Dokumentation im /doc-Ordner), solltest du deine Serverzeit überprüfen, falls eines der Daten zeitlich nahe liegt.
Grüsse
Stephan
Du müsstest genauer schreiben, was nicht funktioniert: Welches Datum hast du eingesetzt? Und wie möchtest du die News ausgeben? Benützt du die oben besprochene Variante?
Wenn die News angezeigt werden sollten (also das Datum des Eintrags noch nicht vorbei ist, das "sichtbar von"-Datum schon vorbei ist und das "sichtbar bis"-Datum noch nicht vorbei ist oder Mischformen, siehe Dokumentation im /doc-Ordner), solltest du deine Serverzeit überprüfen, falls eines der Daten zeitlich nahe liegt.
Grüsse
Stephan
Hallo,
ich bin neu hier und habe erst kürzlich von dem Redaxo CMS erfahren...
Dennoch hätte ich eine Frage zu beschriebenen News Addon. Und zwar bezieht sich die Lösung ja auf Artikel direkt, wie jedoch kann ich das ganze in ein Template einbauen? Ich hab schon versucht einfach die Modul Ausgabe zu kopieren und in ein Template einzubauen, aber dann wird einfach nichts angezeigt...
Ich hoffe, ihr könnt mir helfen! Das wäre echt toll!
LG
Benjamin
ich bin neu hier und habe erst kürzlich von dem Redaxo CMS erfahren...
Dennoch hätte ich eine Frage zu beschriebenen News Addon. Und zwar bezieht sich die Lösung ja auf Artikel direkt, wie jedoch kann ich das ganze in ein Template einbauen? Ich hab schon versucht einfach die Modul Ausgabe zu kopieren und in ein Template einzubauen, aber dann wird einfach nichts angezeigt...
Ich hoffe, ihr könnt mir helfen! Das wäre echt toll!
LG
Benjamin
Hallo Benjamin
Willkommen bei Redaxo! Wenn du auf der Addon-Seite neben dem Namen des News-Addons auf das Fragezeichen klickst, siehst du ein Beispiel für die Integration in einem Template. Um sie in deinem Template verwenden zu können, musst du nur die Id der gewünschten Newskategorie angeben:
durch
ersetzen.
Oder brauchst du eine speziellere Ausgabe der News?
Gruss
Stephan
Willkommen bei Redaxo! Wenn du auf der Addon-Seite neben dem Namen des News-Addons auf das Fragezeichen klickst, siehst du ein Beispiel für die Integration in einem Template. Um sie in deinem Template verwenden zu können, musst du nur die Id der gewünschten Newskategorie angeben:
Code: Alles auswählen
$cat = OONewsCategory::getCategoryById(2);
Code: Alles auswählen
$cat = OONewsCategory::getCategoryById(<deine Kategorie-id>);
Oder brauchst du eine speziellere Ausgabe der News?
Gruss
Stephan
Vielen Dank erstmal für die Antwort und die herzliche Begrüßung!
Das Anzeigen der News an sich funktioniert auch schon bei mir, leider nicht ganz so, wie ich mir das vorstelle.
Zunächst sollen nur die ersten drei aktuellsten News einer Kategorie angezeigt werden, dann wäre es toll, wenn bei einem Klick auf z.B. "...mehr" (wie hier in diesem Thread als Beispiel) ein neuer Newsartikel geöffnet wird.
Ich habe folgende Konstellation:
Ich habe das Template von RobertW (http://rexdemo01.kukulkan.org/index.php ... 13&clang=0) ein bisschen nach meinen Vorstellungen angepasst. Nun möchte ich auf der Home-Seite ein paar Nachrichten in der Spalte für die eigentliche Sprachumstellung angezeigt bekommen und diese sollen dann, wenn man auf eine der News klickt im Bereich rechts daneben angezeigt werden. Ist das irgendwie machbar?
Gruß
Benjamin
Das Anzeigen der News an sich funktioniert auch schon bei mir, leider nicht ganz so, wie ich mir das vorstelle.
Zunächst sollen nur die ersten drei aktuellsten News einer Kategorie angezeigt werden, dann wäre es toll, wenn bei einem Klick auf z.B. "...mehr" (wie hier in diesem Thread als Beispiel) ein neuer Newsartikel geöffnet wird.
Ich habe folgende Konstellation:
Ich habe das Template von RobertW (http://rexdemo01.kukulkan.org/index.php ... 13&clang=0) ein bisschen nach meinen Vorstellungen angepasst. Nun möchte ich auf der Home-Seite ein paar Nachrichten in der Spalte für die eigentliche Sprachumstellung angezeigt bekommen und diese sollen dann, wenn man auf eine der News klickt im Bereich rechts daneben angezeigt werden. Ist das irgendwie machbar?
Gruß
Benjamin
Hallo Benjamin
Mit Redaxo ist fast alles machbar
Wenn du die News nur auf der Home-Seite anzeigen willst, ist es bequemer, das Modul zu nehmen, das ich weiter oben vorgeschlagen habe:
http://forum.redaxo.de/sutra39503.html#39503
Dort kannst du auch einstellen, wie viele Einträge angezeigt werden sollen. Damit das Ganze so funktioniert, wie du das möchtest, musst du in der linken Spalte das "Modul 1: Ausgabe der Liste (im ursprünglichen Artikel)" verwenden und in der rechten Spalte das "Modul zur Ausgabe eines vollen Newseintrags (im neu erstellten Artikel)". Das erste Modul musst du so anpassen, dass es die Id des aktuellen Artikels verwendet. Nochmals zur Übersicht (und copy/pasten ):
Modul 1 (linke Spalte) / Eingabe
Modul 1 (linke Spalte) / Ausgabe
Modul 2 (rechte Spalte) / Eingabe
Mit dieser Variante wird in der rechten Spalte nichts angezeigt, solange in der linken Spalte kein Eintrag ausgewählt ist.
Gruss
Stephan
Mit Redaxo ist fast alles machbar
Wenn du die News nur auf der Home-Seite anzeigen willst, ist es bequemer, das Modul zu nehmen, das ich weiter oben vorgeschlagen habe:
http://forum.redaxo.de/sutra39503.html#39503
Dort kannst du auch einstellen, wie viele Einträge angezeigt werden sollen. Damit das Ganze so funktioniert, wie du das möchtest, musst du in der linken Spalte das "Modul 1: Ausgabe der Liste (im ursprünglichen Artikel)" verwenden und in der rechten Spalte das "Modul zur Ausgabe eines vollen Newseintrags (im neu erstellten Artikel)". Das erste Modul musst du so anpassen, dass es die Id des aktuellen Artikels verwendet. Nochmals zur Übersicht (und copy/pasten ):
Modul 1 (linke Spalte) / Eingabe
Code: Alles auswählen
<?php
echo '<table width="100%"><tr><td style="vertical-align:top; width:50%; padding:5px;">';
echo "<p>Kategorie auswählen";
$selected_categories = explode("|", "REX_VALUE[1]");
$allCats = OONewsCategory::getAllCategories();
$catSel = new select();
$catSel->set_name("VALUE[1]");
$catSel->set_size(1);
$catSel->set_style("class=inp100");
$catSel->multiple(0);
foreach($allCats as $cat) {
$catSel->add_option($cat->getName(), $cat->getId());
if(in_array($cat->getId(), $selected_categories)) {
$catSel->set_selected($cat->getId());
}
}
echo $catSel->out() . "</p>";
echo "</td>";
echo '<td style="vertical-align:top; width:50%; padding:5px;">';
echo "<p>Anzahl Einträge";
$numSel = new select();
$numSel->multiple(0);
$numSel->set_name("VALUE[2]");
$numSel->set_size(1);
for($i=1;$i<=11;$i++) {
$numSel->add_option($i, $i);
if($i=="REX_VALUE[2]") {
$numSel->set_selected($i);
}
}
echo $numSel->out() . "</p>";
echo "<p>Sortierreihenfolge";
$sortSel = new select();
$sortSel->multiple(0);
$sortSel->set_name("VALUE[4]");
$sortSel->set_size(1);
$sortSel->add_option("aufsteigend", "asc");
$sortSel->add_option("absteigend", "desc");
$sortSel->set_selected("REX_VALUE[4]");
echo $sortSel->out() . "</p>";
echo "<p>Bildgrösse";
$sizeSel = new select();
$sizeSel->multiple(0);
$sizeSel->set_name("VALUE[3]");
$sizeSel->set_size(1);
for($i=60;$i<400;$i+=20) {
$sizeSel->add_option($i . " px", $i);
if($i=="REX_VALUE[3]") {
$sizeSel->set_selected($i);
}
}
echo $sizeSel->out() . "</p>";
echo "</td></tr></table>";
?>
Code: Alles auswählen
<?php
$selected_categories = explode("|", "REX_VALUE[1]");
foreach($selected_categories as $cat_id) {
echo '<ul class="news">';
$entries = OONewsEntry::getEntriesByCategory($cat_id);
if("REX_VALUE[4]"=="desc") {$entries = array_reverse($entries, true);}
$entries = array_slice($entries, 0, "REX_VALUE[2]");
foreach($entries as $e) {
printf('<li>%s<h3>%s</h3>%s<p>%s <a href="%s">mehr...</a></p></li>',
($e->getDate()>0) ? '<p class="date">' . $e->getDate("d.m.y, H.i") . '</p>' : "",
($e->getLink()!="") ? '<a href="'.$e->getLink().'">'.$e->getTitle().'</a>' : $e->getTitle(),
($e->getFile()!="")
? sprintf('<img src="%s" alt="%s" title="%s" />',
imageProcessor_getImg($e->getFile(), "REX_VALUE[3]", "REX_VALUE[3]"),
$e->getFileDescription(),
$e->getFileTitle())
: "",
$e->getTeaser(),
rex_getUrl(REX_ARTICLE_ID, '', array('newsitem'=>$e->getId()))
);
}
echo '</ul>';
}
?>
Code: Alles auswählen
<?php
if(isset($_GET['newsitem'])) {
$e = OONewsEntry::getEntryById((int)$_GET['newsitem']);
printf('<h2>%s</h2><p class="teaser">%s</p><p>%s%s</p>',
$e->getTitle(),
$e->getTeaser(),
($e->getFile()!="")
? sprintf('<img src="%s" alt="%s" title="%s" />',
imageProcessor_getImg($e->getFile(), "REX_VALUE[3]", "REX_VALUE[3]"),
$e->getFileDescription(),
$e->getFileTitle())
: "",
$e->getContent()
);
}
?>
Gruss
Stephan
das ist ja echt klasse! nur wie sag ich redaxo, dass er in die linke spalte genau den news auswahl artikel laden soll? mein home template sieht so aus:
und in navigation soll das ganze geladen werden, wie krieg ich das hin? sorry, bin einfach ein totaler anfänger, auch was php angeht! hoffe, du kannst mir helfen..
gruß, benjamin
Code: Alles auswählen
[...]
<body>
<div id="container">
<div id="wrapper">
<div id="header">
</div>
<div id="header-nav"><?php print $navHeader; ?></div>
<div id="header1"></div>
<div id="left">
<div id="navigation"><?php print $navLeftCol; ?></div>
<div id="language"><?php
[b]$cat = OONewsCategory::getCategoryById(1);
if(count($entries=$cat->getEntries()) > 0) {
echo '<font face="Verdana" size="2" color="#00684D"><strong>Aktuelles</strong></font><font size="1">';
foreach($entries as $e) {
if($e->getDate() > 0) {
echo '<font size="1"><p class="date">'.date("d.m.y", $e->getDate()).'<br /></font>';
}
if($e->getLink() != '') {
if($e->getFile() != '') {
echo '<img src="'.imageProcessor_getImg($e->getFile(), $IMAGESIZE).'" alt="">';
}
} else {
echo '<font size="1"><strong>'.$e->getTitle().'<br /></strong></font>'.$e->getContent().'</font>';
}
}
}
?>
</div> [/b] </div>
<div id="right">
<p class="breadcrumb"><?php print $breadcrumb; ?></p>
<?php print $this->getArticle(); ?>
</div>
<div id="footer"><p>(c) 2007 <? print $REX['SERVERNAME']; ?> | <a title="Sitemap" href="<?php print rex_getUrl(8); ?>">Sitemap</a> | <a title="Impressum" href="<?php print rex_getUrl(7); ?>">Impressum</a></p></div>
</div>
</div>
</body>
</html>
gruß, benjamin
Hallo Benjamin
Hast du zwei ctypes definiert? Falls nicht, müsstest du das noch machen, damit du Inhalt in zwei Spalten einfügen kannst. Hier findest du die Dokumentation dazu:
http://redaxo.de/181-0-c1-06-ctypes.html
In deinem Template müsstest du die Ausgabe der Newsliste entfernen und dafür in den zwei Spalten die Ausgabe des Artikels wie in der Dokumentation realisieren:
Wenn du die ctypes defniert hast, kannst du das Modul wie oben beschrieben einfügen.
Gruss
Stephan
Hast du zwei ctypes definiert? Falls nicht, müsstest du das noch machen, damit du Inhalt in zwei Spalten einfügen kannst. Hier findest du die Dokumentation dazu:
http://redaxo.de/181-0-c1-06-ctypes.html
In deinem Template müsstest du die Ausgabe der Newsliste entfernen und dafür in den zwei Spalten die Ausgabe des Artikels wie in der Dokumentation realisieren:
Code: Alles auswählen
(...)
print $this->getArticle(0); //für die eine Spalte
(...)
print $this->getArticle(1); // für die andere Spalte
(...)
Gruss
Stephan
Klasse! Das funktioniert soweit echt super! Nur noch eine kleine Sache, jetzt wird die News unterhalb des Begrüßungstextes angezeigt. Noch schöner wäre es, wenn der Begrüßungstext verschwindet und nur die News als einzelnes angezeigt wird. Ich hab schon ein wenig rumprobiert, klappte leider aber nicht so recht. Kannst Du mir da nochmal helfen?
Dankeschön für Deine Hilfe!
Dankeschön für Deine Hilfe!
Hallo Benjamin
Gern geschehen.
Eine Lösung für dieses Problem wäre, wenn du einen neuen Artikel in der Home-Kategorie erstellen würdest, der die zwei Module wie oben besprochen enthält. Auf der Home-Seite selbst müsstest du dann rechts den Begrüssungstext einfügen und links die Liste (das Modul 1). Dazu müsstest du das Modul so anpassen, dass der Link auf den neu erstellten Artikel zeigt:
durch
ersetzen.
Gruss
Stephan
Gern geschehen.
Eine Lösung für dieses Problem wäre, wenn du einen neuen Artikel in der Home-Kategorie erstellen würdest, der die zwei Module wie oben besprochen enthält. Auf der Home-Seite selbst müsstest du dann rechts den Begrüssungstext einfügen und links die Liste (das Modul 1). Dazu müsstest du das Modul so anpassen, dass der Link auf den neu erstellten Artikel zeigt:
Code: Alles auswählen
rex_getUrl(REX_ARTICLE_ID, '', array('newsitem'=>$e->getId()))
Code: Alles auswählen
rex_getUrl(<Id des erstellten Artikels>, '', array('newsitem'=>$e->getId()))
Gruss
Stephan