[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • [solved] Medienkategorie auslesen in R5
Seite 1 von 1

[solved] Medienkategorie auslesen in R5

Verfasst: 12. Jan 2017, 14:08
von Tizian
hallo,
kann mir jemand bei der übersetzung von diesem codeschnipsel in das R5 framework behilflich sein?

Code: Alles auswählen

  
$category = OOMediaCategory::getCategoryById(REX_VALUE[5]);
$mediafiles  = $category->getFiles();
danke!

Re: Medienkategorie auslesen in R5

Verfasst: 12. Jan 2017, 15:36
von Gregor.Harlan

Code: Alles auswählen

$category = rex_media_category::get(REX_VALUE[5]);
$mediafiles  = $category->getMedia();

Re: Medienkategorie auslesen in R5

Verfasst: 12. Jan 2017, 16:02
von Tizian
danke gregor,
langsam blicke ich es…

jetzt hänge ich mit meinen rudimentären php-kenntnissen noch hier:

Code: Alles auswählen

$category = rex_media_category::get(REX_VALUE[5]);
$mediafiles  = $category->getMedia();

$imagelist2 = explode(',', '$mediafiles');

foreach ($imagelist2 as $file) {
				$media = rex_media::get($file);

echo '<a href="'.rex_url::base('media/'.$file).'" ><img src="'.rex_url::base('index.php?rex_media_type=thumb&rex_media_file='.$file.'').'" alt=" "  /></a>';
}
ich will eine liste der in der medienkategorie enthaltenen files.

ich schätze der fehler liegt in der falschen verwendung des 'explode'…
wie bekomme ich das array mit allen $mediafiles aufgelöst?

Re: Medienkategorie auslesen in R5

Verfasst: 12. Jan 2017, 16:30
von Gregor.Harlan
$mediafiles ist schon ein Array von Medienobjekten, da brauchst du kein explode mehr.

So in der Art würde ich das wohl schreiben:

Code: Alles auswählen

$category = rex_media_category::get(REX_VALUE[5]);
$mediafiles  = $category->getMedia();

foreach ($mediafiles as $file) {
    echo '<a href="'.rex_url::media($file->getFileName()).'" ><img src="'.rex_url::frontendController(['rex_media_type' => 'thumb', 'rex_media_file' => $file->getFileName()]).'" alt=" "  /></a>';
}

Re: Medienkategorie auslesen in R5

Verfasst: 13. Jan 2017, 12:15
von Tizian
hallo gregor,

erstmal danke für deine hilfe!

leider schmeißt er mir für das getMedia einen fehler aus:

"ErrorException" thrown in rex:///module/15/output on line 33
Fatal error: Call to a member function getMedia() on a non-object

liegt's an R5 vs R4?

Re: Medienkategorie auslesen in R5

Verfasst: 13. Jan 2017, 12:25
von Gregor.Harlan
Bedeutet: Die Medienkategorie existiert nicht.
War in R4 genauso.

Wenn das vorkommen kann, musst du das abfangen:

Code: Alles auswählen

if ($category) {
     // kategorie existiert
} else {
     // kategorie existiert nicht
} 

Re: Medienkategorie auslesen in R5

Verfasst: 13. Jan 2017, 13:36
von Tizian
hi gregor,

super, danke!
jetzt klappt das mit der ausgabe.
mit diesem code bekomme ich die medienkategorie meiner wahl ausgegeben:

Code: Alles auswählen

$category = rex_media_category::get(REX_VALUE[5]);

if ($category) {     

$mediafiles  = $category->getMedia();

foreach ($mediafiles as $file) {

echo '<a href="'.rex_url::media($file->getFileName()).'" >
<img src="'.rex_url::frontendController(['rex_media_type' => 'thumb', 'rex_media_file' => $file->getFileName()]).'" alt=" "  /><p>'.$file->getFileName().'</p></a>';

}
} else {

echo 'Kategorie nicht vorhanden';

} 
ein ähnlicher code zum thema, von darwin: http://www.redaxo.org/de/forum/module-a ... 21509.html

moduleingabe zur auswahl einer medienpoolkategorie per select für R5:

Code: Alles auswählen

$cats = new rex_media_category_select();
$cats->setStyle('class="rex-form-select"');
$cats->setSize(1);
$cats->setName('REX_INPUT_VALUE[5]');
$cats->setSelected('REX_VALUE[5]');
echo $cats->get();

Re: [solved] Medienkategorie auslesen in R5

Verfasst: 9. Apr 2018, 10:18
von aludch
Ich habe ein ähnliches Problem.
Kann zwar die Medienkategorien anzeigen, aber nur untereinander.
Wie kann ich die Bilder aber nebeneinander anzeigen und am Bildende automatisch auf die nächste Zeile umbrechen?

Danke für Eure Hilfe
Andreas