einbinden von "Metafile/Bild" in das template

Wie verwendet man Templates oder erstellt Navigationen und passt diese an.

einbinden von "Metafile/Bild" in das template

Beitragvon t-horst » 30. Aug 2005, 08:36

Hallo,

zunächst einmal vielen Dank für das Engement das ihr mit redaxo an den Tag legt!

Zur Frage:

Gehe ich recht in der Annahme, dass ich unter:

:arrow: Metadaten/Sonstiges:
:arrow: Metafile/bild

Ein Bild/Banner auswählen kann um es dann im template einzubinden, genauso wie hier auf der Seite das Bild mit den Kaffeetassen?
Und wenn ja, mit welchem Befehl kann ich es dann im template einbinden? Bin darüber leider nicht fündig geworden!

Vielen Dank vorab

Gruß Thorsten
t-horst
 
Beiträge: 10
Registriert: 16. Aug 2005, 22:30
Wohnort: Oberhausen

Re: einbinden von "Metafile/Bild" in das template

Beitragvon Markus.Staab » 30. Aug 2005, 08:53

Hi Thorsten,

zuerst mal, ein herzliches Willkommen bei REDAXO!

t-horst hat geschrieben:zunächst einmal vielen Dank für das Engement das ihr mit redaxo an den Tag legt!


Das machen wir doch gerne, REDAXO ist unsere Familie :)

t-horst hat geschrieben:Gehe ich recht in der Annahme, dass ich unter:

:arrow: Metadaten/Sonstiges:
:arrow: Metafile/bild

Ein Bild/Banner auswählen kann um es dann im template einzubinden, genauso wie hier auf der Seite das Bild mit den Kaffeetassen?


Genauso wird das hier gemacht.
Das ganze noch nach dem Vererbungsprinzip, aber sonst, hast du genau recht :).

Im Template sieht das so aus:
Code: Alles auswählen
$cat = OOCategory::getCategoryById( REX_CATEGORY_ID);
$metaFile = $metaFile = $cat->getFile();
while ( $metaFile == '') {
   $cat = $cat->getParent();
   if ($cat == null) {
     break;
   }
   $metaFile = $cat->getFile();
}


Ist ungetestet!

Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Danke

Beitragvon t-horst » 30. Aug 2005, 09:06

DankeBild

Funktioniert nur leider nicht...

bekommen einen Fatal error:

Call to a member function on a non-object in /homepages/....


:cry: :cry: :cry: :cry: :cry: :cry:
Zuletzt geändert von t-horst am 30. Aug 2005, 09:15, insgesamt 1-mal geändert.
t-horst
 
Beiträge: 10
Registriert: 16. Aug 2005, 22:30
Wohnort: Oberhausen

Re: Danke

Beitragvon Markus.Staab » 30. Aug 2005, 09:10

t-horst hat geschrieben:DankeBild

Hehe,

funktioniert das auch was ich da gepostet hab? :)

Wenn ja, dann stell ich das auf die Modulsammlung

Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Re: Danke

Beitragvon t-horst » 30. Aug 2005, 09:16

kills hat geschrieben:
t-horst hat geschrieben:DankeBild

Hehe,

funktioniert das auch was ich da gepostet hab? :)

Wenn ja, dann stell ich das auf die Modulsammlung

Gruß,
Markus


Nein leider nicht...
t-horst
 
Beiträge: 10
Registriert: 16. Aug 2005, 22:30
Wohnort: Oberhausen

Beitragvon Markus.Staab » 30. Aug 2005, 09:22

Hi,

Jetzt, aber getestet:

Code: Alles auswählen
$cat = OOCategory::getCategoryById( $this->getValue( 'category_id'));
$metaFile = $metaFile = $cat->getFile();
while ( $metaFile == '') {
   $cat = $cat->getParent();
   if ($cat == null) {
     break;
   }
   $metaFile = $cat->getFile();
}


Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Beitragvon t-horst » 30. Aug 2005, 10:21

aufgerufen wird das ganze dann mit:

Code: Alles auswählen
<img src="../files/
<?php
echo $metaFile
?>
">
???

Funktioniert! Aber auch gut so? Oder eher unschön :oops: ???
t-horst
 
Beiträge: 10
Registriert: 16. Aug 2005, 22:30
Wohnort: Oberhausen

Beitragvon Markus.Staab » 30. Aug 2005, 10:28

Hi,

so
Code: Alles auswählen
<img src="../files/<?php echo $metaFile ?>"/>


oder xhtml konform mit width u. height tag, sowahl alt text und title.

Code: Alles auswählen
if ( $metaFile != '') {
  $media = OOMedia::getMediaByName( $metaFile);
  $path = $REX['HTDOCS_PATH'].'files/'. $media->getOrgFileName();
  $desc = htmlentities( $media->getDescription());
  $width = $media->getWidth();
  $height = $media->getHeight();
  printf ('<div class="banner"><img src="%s" alt="%s" title="%s" style="width: %spx; height:%spx" /></div>', $path, $desc, $desc, $width, $height);
}


Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Umgesetzt

Beitragvon t-horst » 30. Aug 2005, 12:06

Yearr, vielen Dank bin auch gerade dabei die einzelnen Banner zu erstellen/fotografieren!!!

Bild Bild Bild Bild Bild Bild Bild Bild Bild Bild
t-horst
 
Beiträge: 10
Registriert: 16. Aug 2005, 22:30
Wohnort: Oberhausen

modul "banner/bild" ins template integrieren ??

Beitragvon ape » 27. Nov 2005, 20:26

hi,

hab mich jetzt ne ganze weile damit beschäftigt wie man das bannerbild aus dem metabereich des artikels ersetzt.
dazu hab ich das modul banner/bild eingebaut. nun bekomme ich zwar ein bild das aus dem metabereich gesteuert wird, aber leider auf der falschen position. --> ich hätts nämlich gern anstatt des ursprünglichen banners.

da das aber als hintergrundbild per css angegeben wird find ich ausser eben im css keine angabe in der der banner angegeben wird.
also kurz gesagt würd ich gern das modulskript im template einsetzen, nur weiss ich nicht wo.. :roll:

wär lieb wenn mir da kurz wer drüberhilft,

lg,
ape
ape
 
Beiträge: 22
Registriert: 5. Apr 2005, 06:30

Beitragvon Markus.Staab » 27. Nov 2005, 20:53

Hi ape,

ich versteh dein Problem nicht ganz.

Wenn du das Bild als hintergrund einbinden willst, dann machst du eben anstatt

Code: Alles auswählen
<img src="<?php echo $REX['HTDOCS_PATH'].'files/'.$metaFile ?>"/>


dann so:

Code: Alles auswählen
<div style="background-image: url( '<?php echo $REX['HTDOCS_PATH'].'files/'.$metaFile ?>')>&nbsp;</div>

Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Beitragvon ape » 27. Nov 2005, 21:31

hi markus,

vielen dank für die schnelle antwort.

also was ich meine ist:
ich möchte anstelle des redaxo-demo-standard-banners einen metainfo-banner.
den standard banner finde ich aber nicht im default-template referenziert. deshalb weiss ich nicht wo

Code: Alles auswählen
<img src="<?php echo $REX['HTDOCS_PATH'].'files/'.$metaFile ?>"/>

hingehört.

lg,
ape
ape
 
Beiträge: 22
Registriert: 5. Apr 2005, 06:30

Beitragvon Markus.Staab » 27. Nov 2005, 21:45

Hi ape,

in der REDAXO Demo wird der Banner via externem CSS einem Container hinzugefügt. Durchsuch mal die CSS Files..

Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Beitragvon ape » 27. Nov 2005, 22:22

hallo markus,

vielen dank für die schützenhilfe. habs jetzt hinbekommen :)
habe den bild/banner code statt als modul im default-template zwischen main-block und main-block2 eingefügt

Code: Alles auswählen
<?php
$art = OOArticle::getArticleById( REX_ARTICLE_ID);
$metaFile = $art->getFile();

if ( $metaFile == '') {
  $cat = OOCategory::getCategoryById( $art->getCategoryId());
  while ( $metaFile == '') {
     if ($cat == null) {
       break;
     }
     $metaFile = $cat->getFile();
     $cat = $cat->getParent();
  }
}

if ( $metaFile != '') {
  $media = OOMedia::getMediaByName( $metaFile);
  $path = $media->getFullPath();
  $desc = htmlentities( $media->getDescription());
  $width = $media->getWidth();
  $height = $media->getHeight();
  printf ('<div class="banner"><img src="%s" alt="%s" title="%s" style="width: %spx; height:%spx" /></div>', $path, $desc, $desc, $width, $height);
}
?>


solange ein bild bei der metainformation angegeben wurde funktioniert auch alles wie es sollte, nur wenn eben kein bild angegeben ist, bekommme ich folgende fehlermeldung:

Fatal error: Call to undefined function: getcategoryid() in ..cms/redaxo/include/classes/class.article.inc.php(382) : eval()'d code on line 25


es handelt sich also um die erste if-schleife die nicht funktioniert. weisst du vielleicht warum ?
ape
 
Beiträge: 22
Registriert: 5. Apr 2005, 06:30

Beitragvon Markus.Staab » 28. Nov 2005, 15:48

Hi ape,

bitte den Hinweis unter "Beschreibung" beachten:

http://www.redaxo.de/165-Moduldetails.html?module_id=29

Gruß,
Markus
Benutzeravatar
Markus.Staab
Entwickler
 
Beiträge: 9781
Registriert: 29. Jan 2005, 14:50
Wohnort: Aschaffenburg/Germany

Nächste

Zurück zu Templates/Navigationen [R3]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron