+ Antworten
Ergebnis 1 bis 6 von 6

Thema: rechte Modulspalte auf bestimmten Seiten UND bei registrierten Usern ausblenden

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

    Standard rechte Modulspalte auf bestimmten Seiten UND bei registrierten Usern ausblenden

    Hallo,

    ich hab folgendes Problem: ich möchte bei meiner Vereinsseite mit dreispaltigem Layout auf manchen Seiten die rechte Spalte ausblenden, wenn der Content in der Mitte mehr Platz braucht. Dafür hab ich im Forum auch folgende Lösung gefunden, die prima funktioniert, wenn man diesen Code in den head der Seite einfügt:
    PHP-Code:
    <?php if($this->countModules('right') == 0) { ?>

    <style type="text/css" media="screen">
       #rightcolumn { display:none; }
       #main_full { width:690px; }

    </style>
    <?php ?>
    Nun möchte ich aber auch, dass bei registrierten Usern grundsätzlich auf allen Seiten die rechte Spalte mit Modulen ausgeblendet wird und sich der Content-Bereich dann auf die gesamte Fläche vergrößert.
    Auch hierfür hab ich eine Lösung im Forum gefunden:
    PHP-Code:
    <?php 
    $user 
    = &JFactory::getUser();
    if(
    $user->get('guest')) : ?> 
    <div id="newsflash">
             <jdoc:include type="modules" name="user12" style="xhtml" />
         </div>  
    <?php endif; ?>
    Dieser Code muss aber wohl an der Stelle der Index.php eingefügt werden, wo die rechte Spalte mit den Modulen hinsoll.

    Ich möchte nun gerne beide Bedingungen verbinden und weiß leider nicht, wie ich das anstellen soll. Könnte man die beiden Bedingungen vielleicht in einer if-Abfrage verbinden, z. B. wenn es Module gibt und der User Gast ist, dann zeige die Module an, sonst nicht? Ich hab auch schon ein paar Möglichkeiten probiert, da ich aber von php nur sehr wenig Ahnung habe, hat es bis jetzt leider nicht geklappt!

    Kann mir da jemand weiterhelfen?

    Viele Grüße

  2. #2
    Hat hier eine Zweitwohnung
    Registriert seit
    16.09.2008
    Ort
    Braunschweig
    Beiträge
    1.189
    Bedankte sich
    89
    Erhielt 430 Danksagungen
    in 365 Beiträgen

    Standard

    ja, man kann beliebig viele if abfragen in eine zusammenfügen

    zb
    PHP-Code:
    <?php  
    $user 
    = &JFactory::getUser(); 
    if(
    $user->get('guest') && $this->countModules('right') != 0)
    {
        echo     
    '<div id="newsflash"> 
                     <jdoc:include type="modules" name="user12" style="xhtml" /> 
                 </div>'
    ;
    }  
    else
    {
        echo     
    '<style type="text/css" media="screen"> 
                    #rightcolumn { display:none; } 
                    #main_full { width:690px; } 
                </style>'
    ;
    ?>
    also,
    wenn der user ein gast ist und die modulanzahl ungleich 0 ist, dann zeige mir die modulposition an, wenn nicht, dann diesen css krams

  3. #3
    Neu an Board
    Registriert seit
    15.12.2008
    Beiträge
    49
    Bedankte sich
    5
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Super, vielen Dank erstmal! Wenn ich deinen Code in der Index.php an der gewünschten Modulposition einfüge, dann klappte es fast.
    Das einzige Problem ist, wenn ich mich registriere, dann werden zwar die Module in der rechten Spalte ausgeblendet, aber die Spalte bleibt trotzdem da, sprich, der Content wird teilweise von der rechten Spalte überdeckt!
    Was kann ich dagegen machen? Jemand eine Idee??

  4. #4
    Hat hier eine Zweitwohnung
    Registriert seit
    16.09.2008
    Ort
    Braunschweig
    Beiträge
    1.189
    Bedankte sich
    89
    Erhielt 430 Danksagungen
    in 365 Beiträgen

    Standard

    HTML-Code:
    <style type="text/css" media="screen">  
    #rightcolumn { display:none; }  
    #main_full { width:690px; }  
    </style>
    heißt denn deine rechte spalte #rightcolumn und dein content bereich #main_full ?
    das müsstest du schon auf deine bedürfnisse anpassen...

  5. Erhielt Danksagungen von:


  6. #5
    Neu an Board
    Registriert seit
    15.12.2008
    Beiträge
    49
    Bedankte sich
    5
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    ja, die entsprechenden divs heißen so. Der Code ist schon auf meine Seite angepasst, auch die Größen stimmen. Als Gast funktioniert das ausblenden auch, wenn man eine Seite anklickt, wo kein Modul erscheinen soll, dann ist die Spalte komplett weg. Aber wenn man angemeldet ist, dann ist die Spalte - ohne Module - trotzdem noch da und überdeckt den Content.



    Gruß

  7. #6
    Neu an Board
    Registriert seit
    15.12.2008
    Beiträge
    49
    Bedankte sich
    5
    Erhielt 0 Danksagungen
    in 0 Beiträgen

    Standard

    Alles klar! Passt schon, ich hatte mich nur vertippt

    Vielen Dank!

+ Antworten

Lesezeichen

Berechtigungen

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