+ Antworten
Ergebnis 1 bis 8 von 8

Thema: Content in iFrame und Index.php wiedergeben

  1. #1
    Neu an Board
    Registriert seit
    22.12.2010
    Beiträge
    4
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard Content in iFrame und Index.php wiedergeben

    Hallo,

    habe folgendes anliegen:
    ich habe eine Seite die ein iframe benötigt.
    der inhalt des iframes soll der normale content sein welcher in einem gewissen takt refreshed werden soll. Ich benötige ihn im iframe da ich einen footer habe der nicht mit refreshed werden soll.
    meine idee wäre demnach das entweder:
    in die src des iframes <jdoc:include type="modules" name="user2" style="xhtml" target="frame1" /> iwie einzufriemeln
    oder
    das der iframe auf eine content.php verweist und dort <jdoc:include type="modules" name="user2" style="xhtml" target="frame1" /> geladen wird.

    erstes bekomme ich nicht hin und zweites funktioniert bei mir nicht da der content nicht angezeigt wird.

    ich habe die content.php in mein template geschoben (ich habe es auch im joomla verzeichnis versucht jedoch ohne erfolg) und ich bekomme nicht den content wiedergegeben.

    index.php

    <iframe id="frame1" runat="server" style="position:absolute;top:142px;left:0px;width: 1270px;height:495px;border:1px solid black;">
    </iframe>

    content.php

    <body class="all" onLoad="refreshiframe();">
    asdf
    <div id="infocon">
    <jdoc:include type="modules" name="user2" style="xhtml" />
    </div>
    </body>
    </html>

    das asdf wird im iframe angezeigt und die formatierung über den div funktioniert ebenfalls. nur der content wird nicht angezeigt.

    vielen dank für jegliche hilfe.

    mit freundlichem gruß
    Blackeye
    Geändert von blackeye (22.12.2010 um 12:19 Uhr)

  2. #2
    Moderator Avatar von Lacki
    Registriert seit
    27.04.2006
    Ort
    Direkt um die Ecke
    Beiträge
    8.736
    Bedankte sich
    337
    Erhielt 3.611 Danksagungen
    in 2.970 Beiträgen

    Standard

    Hallo und willkommen im Forum.
    Das was Du vorhast, wird so nicht funktionieren. Die content.php "läuft" nicht innerhalb des Joomla-Frameworks, da Du sie nur im iframe laufen lässt. Die Anweisung zur Einbindung des Moduls in der content.php wird daher nicht geparst, d. h. die Modulanweisung wird nicht durch die Modulausgabe ersetzt.

    Ein wenn auch etwas umständlicher Workaround: Neues Template mit nur der Modulposition, Zuordnung dieses Templates zu einem Menüpunkt innerhalb eines neuen, versteckten Menüs (Hidden Menü -> Forensuche), URL des Menülinks im iframe verwenden. Möglicherweise gehts auch noch viel einfacher, wenn Du etwas konkreter schreibst, wieso der r e f r e s h nötig ist, was für ein Modul verwendet wird und wieso der Footer nicht mit aktualisiert werden darf?
    Geändert von Lacki (22.12.2010 um 11:37 Uhr) Grund: Korrektur

  3. #3
    Neu an Board
    Registriert seit
    22.12.2010
    Beiträge
    4
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    es handelt sich um infodisplays in verschiedenen teilen des gebäudes, dort soll ein footer und ein infotext sein.
    Der footer soll durchlaufen und durch den content gesteuert werden und die displays sollen je nach standort verschiedene content bereiche abdecken wodurch der content schon in mehreren kategorien steckt.


    das das modul was ich für die content geschichte nutze (display news):
    http://joomla.rjews.net/downloads/ca...-for-joomla-15

    funktioniert auch wunderbar.


    habe grade das 2te template erstellt und in mein java script eingefügt

    <script type="text/javascript">
    function refreshiframe()
    {
    parent.document.getElementById('frame1').src="./templates/content/index.php?option=com_content&view=section&layout=b log&id=1&Itemid=1"
    setTimeout("refreshiframe()",3000);
    }

    </script>

    leider ohne erfolg.
    er liest wieder das asdf aus (habs abgeändert aktualisierung funtkioniert ebenfalls)
    jedoch kein content.

    vielleicht hab ich einen fehler mit de link gemacht. werde das noch prüfen


    ich benötige kein hidden menu wenn ich das richtig verstanden habe da die infodisplays direkt den richtigen link aufrufen (firefox.exe mit passendem link zum server)
    Geändert von blackeye (22.12.2010 um 11:39 Uhr)

  4. #4
    Moderator Avatar von Lacki
    Registriert seit
    27.04.2006
    Ort
    Direkt um die Ecke
    Beiträge
    8.736
    Bedankte sich
    337
    Erhielt 3.611 Danksagungen
    in 2.970 Beiträgen

    Standard

    So ganz komme ich nicht mehr mit. Vielleicht postest Du mal den gesamten inhalt der index.php beider Templates. Bitte Codeeinfügen Funktion nutzen, dass macht das ganze überschtlicher. Wo steht denn jetzt das "asdf" drin?

  5. #5
    Neu an Board
    Registriert seit
    22.12.2010
    Beiträge
    4
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    index.php
    PHP-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <
    link rel="stylesheet" type="text/css" href="./css/template_css.css";>
    <
    link href="./templates/brabklee3/css/template_css.css" rel="stylesheet" type="text/css" />
    <
    html>


    <
    script type="text/javascript">
    function 
    refreshiframe()
    {
        
    parent.document.getElementById('frame1').src="./templates/content/index.php?option=com_content&view=section&layout=blog&id=1&Itemid=1"
        
    setTimeout("refreshiframe()",3000);
    }

    </script>

    <head>
    <title>brabklee3</title>
    </head>
    <body class="all" onLoad="refreshiframe();">
    <div id="ah"></div>
    <div id="bh"></div>
    <div id="ch"></div>
    <div id="dh"></div>
    <div id="eh"></div>
    <div id="fh"></div>
    <div id="gh"></div>
    <div id="hh"></div>
    <div id="ih"></div>
    <div id="jh"></div>
    <div id="grid"></div>

    <div id="logo"><jdoc:include type="modules" name="user1" style="xhtml" /></div>

    <iframe id="frame1" runat="server" style="position:absolute;top:142px;left:0px;width:1270px;height:495px;border: 0px;">
    </iframe>

    <div id="footer"><marquee scrollamount="5" gehavior="scroll" loop="infinite"><jdoc:include type="modules" name="footer" style="xhtml" /></marquee></div>
    </body>
    </html> 

    index.php (2tes template)
    PHP-Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <
    link rel="stylesheet" type="text/css" href="./css/template_css.css";>
    <
    link href="./templates/content/css/template_css.css" rel="stylesheet" type="text/css" />
    <
    html>
    <
    head>
    <
    title>brabklee3</title>
    </
    head>
    <
    body class="all" onLoad="refreshiframe();">
    <
    div id="ah"></div>
    <
    div id="bh"></div>
    <
    div id="infocon">

    <
    jdoc:include type="modules" name="user2" style="xhtml" />
    </
    div>
    </
    body>
    </
    html
    das sind die beiden php dateien die ich aktuell nutze. (mit der änderung das die eine index.php in einem neuen template gemacht habe)

    Also das Problem liegt ja an der stelle das:
    das es ein iFrame gibt welches aktualiesiert werden kann ohne das die ganze seite aktualisiert werden muss. (das funktioniert)
    content soll innerhalb des iFrames ausgegeben werden, da dieser durch ein modul, welches per zufallsverfahren einen beitrag wählt, aktualisiert werden soll.
    folglich habe ich bei jeder aktualisierung ein neuen beitrag und der infodisplay funktioniert. (PROBLEM)

    vielen dank für die bisherige hilfe.

  6. #6
    Moderator Avatar von Lacki
    Registriert seit
    27.04.2006
    Ort
    Direkt um die Ecke
    Beiträge
    8.736
    Bedankte sich
    337
    Erhielt 3.611 Danksagungen
    in 2.970 Beiträgen

    Standard

    Eigenlich machst Du den gleichen Fehler wie zuvor. Wenn Du als URL des iframe den direkten Pfad zur index.php des Templates aufrufst, wird wieder der Modulplatzhalter Code nicht ersetzt. Richtig ist eine URL im Format "/pfad_zu_joomla/index.php?option=com_content&view=article&Itemid=1 ", wobei eben diese URL zu dem Menüpunkt gehört, den Du wie beschrieben extra anlegen musst. Und eben diesem Menüpunkt weisst Du das zweite Template zu. Wobei fast egal ist, welchen Menüpunkttyp Du nutzt, im Template wird eh nur das Modul ausgegeben.

  7. Erhielt Danksagungen von:


  8. #7
    Neu an Board
    Registriert seit
    22.12.2010
    Beiträge
    4
    Bedankte sich
    1
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    da ich das menü schon hatte brauchte ich nur noch das template selbst zuweisen.

    damit die lösung auch im ganzen steht.
    den link anpassen auf den server (menülink in meinem fall):
    http://localhost:8888/joomla/index.p...&id=1&Itemid=1

    diesem menüpunkt über den templatemanager das richtige template zuweisen:
    template manager -> das template auswählen : bearbeiten -> einen menüpunkt auswählen -> speichern


    dieser thread hat mir geholfen (über google suche):
    http://www.psd-tutorials.de/modules/...ert-nicht.html

    vielen dank für die hilfe !
    mit freundlichen grüßen
    Blackeye


    kann geclosed werden. weis aber nicht wie

  9. #8
    Moderator Avatar von Lacki
    Registriert seit
    27.04.2006
    Ort
    Direkt um die Ecke
    Beiträge
    8.736
    Bedankte sich
    337
    Erhielt 3.611 Danksagungen
    in 2.970 Beiträgen

    Standard

    Zitat Zitat von blackeye Beitrag anzeigen
    kann geclosed werden. weis aber nicht wie
    Schau mal in meine Signatur
    EDIT: zu spät

+ Antworten

Lesezeichen

Berechtigungen

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