Seite 1 von 1

Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Fr 13. Nov 2015, 14:35
von steve04
Hallo,

in der Konfiguration des Teasers kann ich beim automatischen Auslesen der Artikel einer Kategorie max 20 darzustellende Artikel wählen. Kann ich irgendwo diesen Wert auf z.B. 31 erhöhen?

Vielen Dank!

Stephan

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Do 19. Nov 2015, 09:13
von frederic.schneider_4fb
Lieber Stephan,

standardmäßig ist das nicht möglich. Du könntest das manipulieren, indem Du die Zeilen 735-740 in der Datei class.content.type.teaser.php (Ordner: contenido/classes/content_types):

Code: Alles auswählen

// generate a select box containing count 1 to 20 for maximum teaser
// count
for ($i = 1; $i <= 20; $i++) {
	$htmlSelectOption = new cHTMLOptionElement($i, $i, false);
	$htmlSelect->appendOptionElement($htmlSelectOption);
}
ersetzt mit:

Code: Alles auswählen

// generate a select box containing count 1 to 31 for maximum teaser
// count
for ($i = 1; $i <= 31; $i++) {
	$htmlSelectOption = new cHTMLOptionElement($i, $i, false);
	$htmlSelect->appendOptionElement($htmlSelectOption);
}
Bitte beachte jedoch, dass dies eine Änderung am Core-Code von CONTENIDO ist und nach jedem Update von CONTENIDO wieder eingebaut werden müsste.
Alternativ kannst Du auf den automatischen Teaser verzichten und Dir einen manuellen Teaser über das Teaser-Modul bauen.

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Do 19. Nov 2015, 14:44
von steve04
Die Änderung im Auge zu behalten, halte ich für bescherrschbar.

Vielen Dank!
Stephan

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Do 19. Nov 2015, 15:34
von frederic.schneider_4fb
Bitte ;)

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Fr 20. Nov 2015, 10:30
von rethus
Ich würde hier direkt ein WISH für den Core draus machen:

@4fb:
Packe doch da die Abfrage einer Mandantenvarible dazu.
Ist die Variable nicht gesetzt, ist 20 voreingestellt, ist Sie gesetzt, wird sie verwendet. Und schon haben wir einen hard-coded-Bereich weniger im Core.

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Do 26. Nov 2015, 09:05
von frederic.schneider_4fb
Ein sehr guter Vorschlag, rethus. Ich habe das für Version 4.9.10 einmal vorgesehen

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: So 27. Mär 2016, 09:51
von peanut
Hallo - Genau das brauche ich auch. Doch welche Werte wären das denn dann die man in der Mandanten Einstellung setzen muss um 20+ Artkel anzuzeigen ? Geht das wirklich erst ab der 4.10 oder gibt es bereits eine einfache Änderung des Codes, um die Werte gleich nehmen zu können ? However .... Ich schlage dazu auch Lazy Load vor damit man bei zB. 100 Artikeln mit Bild nicht gleich mit Tante Google oder seinem 3G User Ärger bekommt wegen der langen Ladezeit.

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: So 27. Mär 2016, 13:55
von rethus
Ja noch ist keine Abfrage einer Mandanten-Variable drin, daher habe ich es ja auch vorgeschlagen.
Du kannst Sie aber recht einfach selbst einbauen, und dir einen Namen deiner Wahl ausdenken.

Als kleines Beispiel:

Code: Alles auswählen

// Get Client-Vars
$oClient = new cApiClient($client);
$job_detail_page = $oClient->getProperty('xst_contactTeaserProJobs','jobDetailPage');
In den Mandanteneinstellungen:
mandanten_variablen.jpg
mandanten_variablen.jpg (11.71 KiB) 4430 mal betrachtet

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Mo 28. Mär 2016, 12:45
von Oldperl
Hmm :roll:

Also ich würde dafür nicht extra ein Mandanten-Objekt instanzieren. Einfacher und sogar mit Default-Wert geht es per Onboard-Funktion

Code: Alles auswählen

$iMaxTeaserCount = (int) getEffectiveSetting('cms_teaser', 'max_count', 20);
Den Wert dann einfach in der Schleife verwenden

Code: Alles auswählen

// generate a select box containing count 1 to 20 for maximum teaser
// count
for ($i = 1; $i <= $iMaxTeaserCount; $i++) {
    $htmlSelectOption = new cHTMLOptionElement($i, $i, false);
    $htmlSelect->appendOptionElement($htmlSelectOption);
}
Gruß aus Franken

Ortwin

Re: Teaser Einstellung der Anzahl auszulesender Artikel

Verfasst: Mo 28. Mär 2016, 15:36
von rethus
Jep, hast ja recht. getEffectiveSetting passt natürlich auch und kostet weniger (performance).
Jetzt hat er zwei Varianten und kann sich eine aussuchen.