Seite 1 von 1
Auf Meta-Daten eines Bildes zugreifen
Verfasst: Di 26. Mai 2015, 18:58
von frogli
Hallo
Ich würde gerne auf meine Meta-Daten meiner Bilder zugreifen. Vor allem geht es mir um die Interne Notiz (internalNotice).
Meine Vorgehensweise is folgende:
Code: Alles auswählen
$n = 1;
$artLang = new cApiArticleLanguage();
$imgObj = $artLang->getContentObject('CMS_IMGEDITOR', $n);
$arrayMetaData = $imgObj ->getMetadata();
echo $internalNotice = $arrayMetaData[internalnotice];
Ich herhalte leider nicht die gewünschte Daten. Skuril ist aber, dass ich die Daten sehr wohl
umgehend erhalte wenn ich den Image Editor mit speichern (grünes Häckchen) schliesse. Nachher sind sie nicht mehr wieder zugreifbar.
array von $imgObj (Kopfteil):
Code: Alles auswählen
cContentTypeImgeditor Object
(
[_dirname:cContentTypeImgeditor:private] =>
[_filename:cContentTypeImgeditor:private] =>
[_imagePath:protected] =>
[_fileType:cContentTypeImgeditor:private] =>
[_fileSize:cContentTypeImgeditor:private] =>
[_medianame:cContentTypeImgeditor:private] =>
[_description:protected] =>
[_keywords:cContentTypeImgeditor:private] =>
[_internalNotice:cContentTypeImgeditor:private] =>
[_copyright:cContentTypeImgeditor:private] =>
[_type:protected] => CMS_IMGEDITOR
[_prefix:protected] => imgeditor
[_settingsType:protected] => plaintext
[_id:protected] => 1
[_contentTypes:protected] => Array
(
)
...
Da sieht man schon, dass das Array keine Daten mitliefert, obwohl die ID richtig wäre.
Was mache ich hier falsch?
frogli
Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 08:25
von Oldperl
Hallo frogli,
"falsch" ist hier relativ...
Du vergisst nur etwas. Woher soll denn bitte die Klasse
cApiArticleLanguage wissen von welchem Artikel sie den Content nehmen soll?
Folgende 2 Punkte sind in deinem Fall zu beachten:
- Handelt es sich um Bilder im aktuellen Artikel, so solltest du auch cApiArticleLanguage entsprechend verwenden. Hierbei kannst du in diesem Fall einfach die cRegistry von Contenido nutzen.
Andernfalls musst du beim Aufruf die entsprechende Artikel- und Sprach-Id mit übergeben in der dein(e) Bild(er) sich befinden, ansonsten wird kein Content gefunden und damit auch der ImgEditor nicht korrekt initialisiert.
Code: Alles auswählen
$artLang = new cApiArticleLanguage();
$artLang->loadByArticleAndLanguageId($idart, $idlang, true);
- Das ImgEditor-Objekt das du nutzt wird intern anhand der RAW-Content-Daten initialisiert (diese müßtest du auch übergeben wenn du die Typ-Klasse direkt nutzt).
Code: Alles auswählen
public function __construct($rawSettings, $id, array $contentTypes) {
Beim Speichern per ImgEditor ist/sind natürlich diese Content-Daten(-Variablen) entsprechend bereits vorbelegt und daher auch zu sehen bzw. zu nutzen.
Hoffe das hilft Dir etwas weiter.
Gruß aus Franken
Ortwin
Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 08:59
von Faar
Moin Ortwin,
funktioniert das hier ...
... auch noch mit dieser Schreibweise?
Grüße,
Frank
Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 10:05
von frogli
Servus Ortwin,
danke für die ausführliche Erklärung und die mögliche Varianten (die ich bald in andere Modulen brauchen werde

) .
In diesem Fall hast du gleich ins Schwarze getroffen:
freundliche Grüße
frogli
Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 11:51
von Oldperl
Faar hat geschrieben:Moin Ortwin
Mahlzeit
Faar hat geschrieben:funktioniert das hier ...
Dürfte eigentlich nicht. Du hast ja in diesem Fall keine Instanz mit "new" erzeugt.
http://www.peterkropff.de/site/php/statisches.htm
Meine IDE setzt gleich automatisch den Doppelpunkt
http://www.peterkropff.de/site/php/dopp ... lpunkt.htm wenn ich kein "new" nehme.
frogli hat geschrieben:Servus Ortwin,
danke für die ausführliche Erklärung und die mögliche Varianten (die ich bald in andere Modulen brauchen werde

) .
In diesem Fall hast du gleich ins Schwarze getroffen:

Immer gerne, werde das mal in meine Tipps & Tricks-Ecke aufnehmen (vielleicht sollte ich doch mal ne eigene FAQ online stellen). Freut mich wenn ich helfen konnte, immer gern gesehen ein Einwurf in meine Kaffeekasse...
Gruß aus Franken
Ortwin
Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 12:45
von Faar
Oldperl hat geschrieben:Dürfte eigentlich nicht. Du hast ja in diesem Fall keine Instanz mit "new" erzeugt.
Oh ja, stimmt. Ich hatte im Kopf irgendwie das new dingens() schon vorausgesetzt.
So nebenbei: Kannst du den :: (Paamayim Nekudotayim) aussprechen?

Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 12:57
von Oldperl
Faar hat geschrieben:So nebenbei: Kannst du den :: (Paamayim Nekudotayim) aussprechen?

WIeso?
Ist doch einfach!
DOPPELTER DOPPELPUNKT!
Gruß aus Franken
Ortwin
PS: Wir sollten mal wieder teflonieren!

Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 13:56
von Faar
Oldperl hat geschrieben:PS: Wir sollten mal wieder teflonieren!

Gut, Teflon'ieren wir mal wieder
Aber nicht dass dabei einer die Haftung verliert!

Re: Auf Meta-Daten eines Bildes zugreifen
Verfasst: Mi 27. Mai 2015, 14:10
von Oldperl
Ach herje, da hat sich doch ein Fehlerle eingeschlichen in meinem Code-Beispiel. Bei einem anderen als dem aktuellen Artikel muss man natürlich nicht die Artikel-Id der Klasse
cApiArticleLanguage übergeben, die erwartet nämlich die
idartlang, sondern die entsprechende Methode
loadByArticleAndLanguageId($idart, $idlang, true) mit der Artikel- und Sprach-Id nach der Instanzierung der Klasse aufrufen. Der 3. Parameter auf TRUE lädt gleich den Artikel-Content in die Klasse.
Ich hab das mal im entsprechenden Post geändert.
http://forum.contenido.org/viewtopic.ph ... 83#p167383
Gruß aus Franken
Ortwin
@Faar: RUF - MICH - AN!!!
