Ergebnis 1 bis 12 von 12

Thema: [pageimage]- Bild als background-image einbinden

  1. #1
    Contao-Fan Avatar von operatorone
    Registriert seit
    19.06.2009.
    Ort
    Kitzingen
    Beiträge
    547

    Standard [pageimage]- Bild als background-image einbinden

    Hallo zusammen,

    ich habe mich gefragt, ob es mit der Extension pageimage funktionieren würde, die zu einer Seite zugeordneten Bilder in CSS im body als background-image einzubinden. Die normale Funktionsweise stellt ja ein div mit image-container zur Verfügung.

    Vielen Dank für eure Antworten,
    operator

  2. #2
    Community-Moderator Avatar von schman
    Registriert seit
    19.06.2009.
    Ort
    Dornbirn
    Beiträge
    3.739
    User beschenken
    Wunschliste

    Standard

    also falls es dir darum geht, dass jede Seite einen eigenen Hintergrund erhält würde ich dir diess Tutorial empfehlen

  3. #3
    Contao-Fan Avatar von operatorone
    Registriert seit
    19.06.2009.
    Ort
    Kitzingen
    Beiträge
    547

    Standard

    Hi schman,

    so mache ich das sonst auch immer unddas funktioniert prima. Doch ist es für einen Redakteur eher umständlich die Bilder entweder mit dem page-alias oder mit der page-id zu benennen und anbzulegen. Gerade bei sich wiederholenden Bildern. Genau da wäre es supercool, wen man mit pageimage einfach ein background-image pro Seite im Backend definieren könnte. Kann von mie aus auch direkt am body kleben. Das wäre die Lösung.

    Viele Grüße,
    operator

  4. #4
    Contao Core-Team
    Association Vorstand
    Avatar von andreas.schempp
    Registriert seit
    15.06.2009.
    Ort
    Lyss
    Beiträge
    5.613
    Partner-ID
    8667
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das geht natürlich schon, braucht aber etwas Handarbeit.

    1. Das Template des Moduls so anpassen das nur eine CSS-Anweisung ausgegeben wird.
    2. An passender Stelle diese Ausgabe mittels {{insert_module::id}} ausgeben.
    terminal42 gmbh
    Wir sind Contao Premium-Partner! Für Modulwünsche oder Programmierungen kannst du uns gerne kontaktieren.
    Hilfe für Isotope eCommerce kann man auch kaufen: Isotope Circle

  5. #5
    Contao-Fan Avatar von operatorone
    Registriert seit
    19.06.2009.
    Ort
    Kitzingen
    Beiträge
    547

    Lachendes Gesicht

    Hi Andreas,

    danke für den Tip. Ich habe folgenden Code in das Modul-Template gepackt

    HTML-Code:
    style="background-image:url(<?php echo $this->src; ?>); background-position:left top; background-repeat:no-repeat;">
    und ins fe_page.tpl habe ich dann noch folgendes eingebaut:

    HTML-Code:
    <body {{insert_module::5}} id="top" ...
    und es scheint gut zu funktionieren. Auch die übergeordneten Bilder für Unterseiten ohne Bilder werden übernommen.

    Klasse. Vielen Dank für den Tip. Ich hoffe, dass ich anderen damit auch ein wenig weiterhelfen kann, weil es die Zuordnung von background-images in der Pflege doch wesentlich erleichtert.

    Viele Grüße,
    operator

  6. #6
    Contao-Fan Avatar von Bobi
    Registriert seit
    19.06.2009.
    Ort
    Tübingen
    Beiträge
    331

    Standard

    Zitat Zitat von operatorone Beitrag anzeigen
    Ich habe folgenden Code in das Modul-Template gepackt
    HTML-Code:
    style="background-image:url(<?php echo $this->src; ?>); background-position:left top; background-repeat:no-repeat;">
    und ins fe_page.tpl habe ich dann noch folgendes eingebaut:
    HTML-Code:
    <body {{insert_module::5}} id="top" ...
    und es scheint gut zu funktionieren. Auch die übergeordneten Bilder für Unterseiten ohne Bilder werden übernommen.

    ...Ich hoffe, dass ich anderen damit auch ein wenig weiterhelfen kann, weil es die Zuordnung von background-images in der Pflege doch wesentlich erleichtert.

    Viele Grüße,
    operator
    Hallo operator,
    kannst du mir dies bitte nochmals ein wenig genauer erklären?
    Welchen Code man hierfür jetzt direkt braucht?
    Bei mir will das einfach nicht wirklich klappen, kapiere allerdings auch nicht wirklich was nun in dem Code steckt.
    Wäre echt nett - da ich genau das gleiche benötige.

    LG
    Bobi

  7. #7
    Contao-Nutzer
    Registriert seit
    20.04.2011.
    Beiträge
    39

    Standard Tutorial

    Hallo Bobi

    Falls noch nicht beantwortet oder gelöst, hier ein kleines Tutorial, weil ich es auch gerade gebraucht habe ;-).

    Backend-Module --> Themes --> Frontend-Module --> Neu erstellen: Modultyp: Bild der Seite, Bildbreite und Bildhöhe eingeben. Datensatz ID merken!

    Backend-Module --> Templates: mod_pageimage.html5 anpassen. Alles ersetzen mit
    PHP-Code:
    style="background-image:url(<?php echo $this->src?>); background-position:left top; background-repeat:no-repeat;">
    Backend-Module --> Templates: fe_page.html5 anpassen. Beim Body-Tag insert_module einfügen:
    PHP-Code:
    <body {{insert_module::Datensatz_ID_einfügen}} id="top" 
    Jetzt via Seitenstruktur --> Seitendefinition pro Seite das gewünschte Bild zuordnen und schon klappt's.

    Mit Gruss
    Daniel

  8. #8
    Gesperrt
    Registriert seit
    17.05.2012.
    Ort
    Darmstadt
    Beiträge
    23

    Standard geht leider nicht

    Hallo,

    kann jemand evtl. noch mal genau erklären wie man mit der Erweiterung Seitenbilder / pageimage das Bild als Hintergrund einbauen kann?
    Ich bekomm es irgendwie nicht hin.

    vielen Dank

  9. #9
    Contao-Nutzer Avatar von chrizdee
    Registriert seit
    24.08.2009.
    Ort
    Reichenschwand
    Beiträge
    73

    Standard

    Einfache Lösung

    Lege einfach im /templates-Ordner eine Datei mod_pageimage.html5 (oder .xhtml, falls Du kein html5 benutzt) an und kopiere folgenden Inhalt rein:

    PHP-Code:
    <?php 
    $GLOBALS
    ['TL_HEAD'][] = '
    <style type="text/css">
        body { background: url('
    .<?php echo $this->src?>. ') no-repeat; }
    </style>
    '; 
    ?>
    Erweiterte Lösung

    Solltest Du ein Javascript zum dynamischen Skalieren der Hintergrundbilder verwenden, dann kannst Du obigen Code ja entsprechend umbauen.

    Beispiel SuperBGImage (http://dev.andreaseberhard.de/projects/superbgimage/):

    HTML-Code:
    <div id="superbgimage"> 
    <img src="<?php echo $this->src; ?>" alt="<?php echo $this->alt; ?>" /> 
    </div>
    Anschließend müsstest Du natürlich noch dein SuperBGImage-Script einbinden und im Seitenlayout oder einer eingebundenen Javascript-Datei initieren:

    Code:
    // SuperBGImage
    jQuery('#thumbs').superbgimage().hide();

  10. #10
    Gesperrt
    Registriert seit
    17.05.2012.
    Ort
    Darmstadt
    Beiträge
    23

    Standard weiterin Probleme

    Hallo chrizdee,

    erst einmal vielen Dank für deine Hilfe, aber wenn ich das wie oben beschrieben

    als code :

    <?php
    $GLOBALS['TL_HEAD'][] = '
    <style type="text/css">
    body { background: url('.<?php echo $this->src; ?>. ') no-repeat; }
    </style>
    ';
    ?>

    angebe, bekomme ich fim Backendeditor in Zeile 4: Syntax error, unexpectedt T_ECHO
    und im Frondend: Parse error: syntax error, unexpected

    hast du evtl. eine Idee woran das liegt?

    Mfg
    Steffen

  11. #11
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Zitat Zitat von Stockinger01 Beitrag anzeigen
    Hallo chrizdee,

    erst einmal vielen Dank für deine Hilfe, aber wenn ich das wie oben beschrieben

    als code :

    <?php
    $GLOBALS['TL_HEAD'][] = '
    <style type="text/css">
    body { background: url('.<?php echo $this->src; ?>. ') no-repeat; }
    </style>
    ';
    ?>

    angebe, bekomme ich fim Backendeditor in Zeile 4: Syntax error, unexpectedt T_ECHO
    und im Frondend: Parse error: syntax error, unexpected

    hast du evtl. eine Idee woran das liegt?

    Mfg
    Steffen
    ->
    PHP-Code:
    <?php 
    $GLOBALS
    ['TL_HEAD'][] = '
    <style type="text/css">
        body { background: url('
    .$this->src.') no-repeat; }
    </style>
    '

    ?>

  12. #12
    Gesperrt
    Registriert seit
    17.05.2012.
    Ort
    Darmstadt
    Beiträge
    23

    Standard Seitenbilder werden immmer noch nicht als Background dargestellt.

    Hallo Spooky,

    jetzt habe ich zwar keinen Fehlercode mehr, aber es wird nur ein weißer Hintergrund angeziegt nicht das Bild welches ich in der Erweiterung Pageimage für die Seite definiert hab. Wie gesagt ich möchte das Bild in der Spalte Main als Hintergund anzeigen lassen. Habt Ihr eine Idee was ich falsch mache?


    das waren meine Schritte:

    mod_pageimages.html5 erstellt, code von Spooky reinkopiert
    in Frondendmodule ein Modul vom Typ Pageimage / Seitenbilder erstellt
    in der Erweiterung Pageimage für die Seiten Bilder definiert
    im Theme Layout das Frontendmodul Pageimage / Seitenbilder der Spalte Main / Hauptspalte zugewiesen

    mittels firebug, kann ich mir kann ich mir für den Container Main die CSS Regeln ansehen, hier sehe ich keine Definition für den Backgrund, welche aus der Erweiertung kommen müsste.

    Mfg
    Steffen

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. CSS Background-Image
    Von leguano im Forum Newsletter
    Antworten: 2
    Letzter Beitrag: 04.02.2011, 07:14
  2. Background-Image im Header verlinken
    Von LutzWinkler im Forum Layout / Templates / Holy Grail
    Antworten: 4
    Letzter Beitrag: 08.12.2010, 12:44
  3. body und background-image
    Von Bernd im Forum Layout / Templates / Holy Grail
    Antworten: 3
    Letzter Beitrag: 12.10.2009, 08:33
  4. Problem background-image #left gelöst im IE6
    Von cubano im Forum Layout / Templates / Holy Grail
    Antworten: 1
    Letzter Beitrag: 14.09.2009, 15:05
  5. [JS] background-image per RegEx ändern
    Von FloB im Forum Off Topic
    Antworten: 3
    Letzter Beitrag: 14.09.2009, 13:58

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •