Newsliste oder Blog
Newsliste oder Blog
Hey Leute,
ich habe da mal eine Frage, und zwar: ich möchte gerne das sich mehrere Artikel einer Kategorie einfach auf einer Seite untereinander setzen ohne das man auf mehr lese button oder ähnliches klicken muss. Alles ganz einfach und simple gehalten.
Ich habe ja dieses Newsliste Modul schon entdeckt, allerdings ließt Contenido irgendwie das CMS_HTML und CMS_HTMLHEAD nicht aus und so habe ich nur Datum und diesen mehr button da, der auch direkt auf den Artikel verlinkt. Was mache ich falsch? oder gibt es evtl eine einfachere Möglichkeit Artikel einfach und schnell untereinander zu setzen?
Wäre euch über eine Antwort sehr dankbar
ich habe da mal eine Frage, und zwar: ich möchte gerne das sich mehrere Artikel einer Kategorie einfach auf einer Seite untereinander setzen ohne das man auf mehr lese button oder ähnliches klicken muss. Alles ganz einfach und simple gehalten.
Ich habe ja dieses Newsliste Modul schon entdeckt, allerdings ließt Contenido irgendwie das CMS_HTML und CMS_HTMLHEAD nicht aus und so habe ich nur Datum und diesen mehr button da, der auch direkt auf den Artikel verlinkt. Was mache ich falsch? oder gibt es evtl eine einfachere Möglichkeit Artikel einfach und schnell untereinander zu setzen?
Wäre euch über eine Antwort sehr dankbar
Re: Newsliste oder Blog
Hallo Skyjacker,
damit das Newsmodul Inhalte anzeigen kann, müssen diese in den Artikeln in den richtigen Feldern eingetragen sein.
Damit geht es nicht nur um CMS_HTMLHEAD und CMS_HTML, sondern auch die Feldnummern sind wichtig, also CMS_HTMLHEAD[1] und CMS_HTML[1].
Im Newsmodul werden die Texte aus CMS_HTML[1] zudem auf eine vorgegebene Länge abgeschnitten (Aufruf der Funktion capiStrTrimAfterWord() mit Längenvorgabe der Variable $mxtext).
Mit ein paar wenige Handgriffe kannst du das wahrscheinlich an deine Bedürfnisse anpassen, je nachdem was genau du erreichen möchtest.
Gruß
René
damit das Newsmodul Inhalte anzeigen kann, müssen diese in den Artikeln in den richtigen Feldern eingetragen sein.
Damit geht es nicht nur um CMS_HTMLHEAD und CMS_HTML, sondern auch die Feldnummern sind wichtig, also CMS_HTMLHEAD[1] und CMS_HTML[1].
Im Newsmodul werden die Texte aus CMS_HTML[1] zudem auf eine vorgegebene Länge abgeschnitten (Aufruf der Funktion capiStrTrimAfterWord() mit Längenvorgabe der Variable $mxtext).
Mit ein paar wenige Handgriffe kannst du das wahrscheinlich an deine Bedürfnisse anpassen, je nachdem was genau du erreichen möchtest.
Gruß
René
Re: Newsliste oder Blog
Hallo Skyjacker,
du kannst folgende Lösung dafür verwenden.
Die Artikel, deren Inhalt in der Liste erscheinen sollen, sollten im Layout die Marker "<!--start:content-->" und "<!--end:content-->", das kann man später dafür verwenden, um den Inhalt darin zu extrahieren. Hier ein Beipsiel für das Layout:
Dann erstelle ein Modul, das follgenden Code im Module-Output hat:
Der Code ist einfach gehalten ist also nicht mit Validierung/Fehlerbehandlung aufgebläht, du kannst es deinen Wünschen entsprechend erweitern.
Die Variable $myCategoryId enthält die Id der Kategorie, das kannst du mit CMS_VAR konfigurierbar achen, oder über Mandanteneinstellungen...
Bei dieser Variante wird zu jedem Artikel ein Request abgeschickt, d. h. die Seiten werden per file_get_contents() vom Server angefragt.
Es sollte sichergestellt sein, dass HTTP Requests mit file_get_contents erlaubt sind oder du verwendest Alternativen wie Sockets oder Curl.
Es wäre nicht schlecht, die Seiten zu Cachen, so dass nicht jedes Mal alle Artikel vom Server angefragt werden, z. B. nur alle 30 Minuten. Bedenke aber auch, dass ein einfacher Cache nicht Synchron mit dem Backend sein kann, d. h. Änderungen an Artikeln könnten erst später im Frontend erscheinen, also wenn der Cache ungültig und daher erneuert wird.
Wichtig:
Das Beispiel ist nicht getestet, bitte vorher Prüfen!
Gruß
xmurrix
du kannst folgende Lösung dafür verwenden.
Die Artikel, deren Inhalt in der Liste erscheinen sollen, sollten im Layout die Marker "<!--start:content-->" und "<!--end:content-->", das kann man später dafür verwenden, um den Inhalt darin zu extrahieren. Hier ein Beipsiel für das Layout:
Code: Alles auswählen
<html>
<body>
<!--start:content-->
<!--- ... content of article --->
<!--end:content-->
</body>
</html>
Code: Alles auswählen
<?php
// include some files
cInclude('classes/Contenido_Category', 'Contenido_Category_Articles.class.php');
cInclude('classes/Contenido_Category', 'Contenido_Category.class.php');
if (!is_object($db)) {
$db = new DB_Contenido();
}
$oCat = new Contenido_Category_Articles($db, $cfg, $client, $lang);
// Load all articles in $myCategoryId
$aArticles = $oCat->getArticlesInCategory($myCategoryId);
$oUrl = Contenido_Url::getInstance();
// Loop through article list
foreach ($aArticles as $oArticle) {
// full url to article
$aParams = array(
'idart' => $oArticle->get('idart'),
'lang' => $lang
);
$url = $oUrl->build($aParams, true);
// get article output
$articleContent = file_get_contents($url);
// extract content
$startPos = strpos($articleContent, "<!--start:content-->");
$endPos = strpos($articleContent, "<!--end:content-->");
$articleCode = substr($articleContent, $startPos, $endPos - $startPos);
// output content
echo '<div class="my-article-list-item">' . $articleCode . "</div>\n";
}
?>
Die Variable $myCategoryId enthält die Id der Kategorie, das kannst du mit CMS_VAR konfigurierbar achen, oder über Mandanteneinstellungen...
Bei dieser Variante wird zu jedem Artikel ein Request abgeschickt, d. h. die Seiten werden per file_get_contents() vom Server angefragt.
Es sollte sichergestellt sein, dass HTTP Requests mit file_get_contents erlaubt sind oder du verwendest Alternativen wie Sockets oder Curl.
Es wäre nicht schlecht, die Seiten zu Cachen, so dass nicht jedes Mal alle Artikel vom Server angefragt werden, z. B. nur alle 30 Minuten. Bedenke aber auch, dass ein einfacher Cache nicht Synchron mit dem Backend sein kann, d. h. Änderungen an Artikeln könnten erst später im Frontend erscheinen, also wenn der Cache ungültig und daher erneuert wird.
Wichtig:
Das Beispiel ist nicht getestet, bitte vorher Prüfen!
Gruß
xmurrix
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.
Re: Newsliste oder Blog
Ah-! Danke schonmal für die Antworten, ich werde beides mal ausprobieren! Wo kann ich denn einstellen wo cms_html(1) usw ist? Ich mach ich das im Template oder wo ist das hinterlegt?
Re: Newsliste oder Blog
Das steht in den genutzten Modulen, also im Headlinemodul muss CMS_HTMLHEAD[1] und im Textmodul CMS_HTML[1] verwendet sein.Skyjacker hat geschrieben:Wo kann ich denn einstellen wo cms_html(1) usw ist?
Achte auch auf die Schreibweise, also GROSSSCHREIBUNG und eckigen Klammern.
Gruß
René
Re: Newsliste oder Blog
Super! Hat fast alles geklappt mit dem normalen Newslisten modul! Jetzt nur ein problem. wie bekomme ich mehr zeichen des Textes darein als nur die paar und den mehr button weg? Ihr seid super!
Re: Newsliste oder Blog
Wie ich anfangs schon geschrieben habe, gibt es im Modul (im Output-Bereich) eine Variable $mxtext, welche für die maximale Anzahl Zeichen steht.
Diese kannst du natürlich einfach auf einen astronomischen Wert setzen, dann wird dein Text nicht mehr gekürzt.
Im Modul-Template (teaser-standard.html) ist der Link enthalten, diesen kannst du dort am besten auskommentieren (mit <!-- und -->).
Gruß
René
Diese kannst du natürlich einfach auf einen astronomischen Wert setzen, dann wird dein Text nicht mehr gekürzt.
Im Modul-Template (teaser-standard.html) ist der Link enthalten, diesen kannst du dort am besten auskommentieren (mit <!-- und -->).
Gruß
René
Re: Newsliste oder Blog
Ja das hattest du geschrieben, allerdings ist alles was ich im Modul "News" in der Ausgabe finde das hier...
:-/
Code: Alles auswählen
<?php
/**
* Description: News output
*
* @version 1.0.0
* @author unknown
* @copyright four for business AG <www.4fb.de>
*
* {@internal
* created unknown
* $Id: news_output.php 2755 2012-07-25 20:10:28Z xmurrix $
* }}
*/
echo "CMS_TEASER[1]";
?>
Re: Newsliste oder Blog
Hmmm, dann hab ich hier wohl ein älteres im Einsatz.
Gibt es da keinen Konfigurationsparameter?
Bei den neueren CMS-Typen kann man im Editor doch einen Stift anklicken um sie zu konfigurieren, ich habe aber mit CMS_TEASER noch nichts gemacht.
Gruß
René
Gibt es da keinen Konfigurationsparameter?
Bei den neueren CMS-Typen kann man im Editor doch einen Stift anklicken um sie zu konfigurieren, ich habe aber mit CMS_TEASER noch nichts gemacht.
Gruß
René
Re: Newsliste oder Blog
Ja ich bin zu doof! Habs gefunden man kann das direkt im Artikel einstellen