Button für Wechsel Desktop / Mobile Ansicht!?

  • Guten Abend zusammen,

    ich habe nun seit zwei Monaten ein iPhone 11 (iOS 13.3), nachdem ich sonst immer nur Android hatte. Nun habe ich das Problem, dass bei manchen Webseiten die Desktop Version partout nicht angezeigt wird, obwohl diese Seite definitiv responsiv ist und unter Android alles funktioniert. Insbesondere fällt mir das bei Joomla auf. Das Problem tritt sowohl mit dem Chrome als auch mit dem Safari auf. Bei beiden erzwinge ich jeweils das Laden der Desktop Version, aber die Seite wird weiterhin in der mobilen Version geladen.


    Ich administriere mehrere Feuerwehr Webseiten und muss daher auch mal beide Ansichten haben / nutzen. Somit die Frage, ob es eine Möglichkeit gibt einen Button im Menu einzubauen, wo man die jeweilige Ansicht darüber erzwingen kann?!


    Genutzt wird übrigens auf den Seiten Joomla 3.9.14 mit Protostar als Template.


    Gruß

    Alex

  • Hallo,

    danke für die Antwort.
    ja, zwischen Static und Fluid habe ich auch gewechselt. Außer, dass das Layout dann geringfügig anders ist, ändert sich nichts.


    Grundsätzlich wird auch alles angezeigt, in der mobile Version ist jedoch alles auf einer Seite lang runter. In der Desktop Version eben „normale“ Webseiten Aufteilung. Zusätzlich habe ich das Problem, dass bei einer Komponente in der mobilen Ansicht einige Infos gekürzt werden.


    Das Problem ist ja zum Beispiel jetzt auch beim iPhone 11 vorhanden. Ein Freund der ein iPhone 10 hat, hat sogar das Phänomen, dass wenn er hochkant hält die mobile Version genutzt wird und Quer dann die normale. Deswegen ist dein Ansatz glaube sogar der richtige.

  • Ändere mal die viewport-Zeile im Template-index.php nach

    Code
    <meta name=viewport content="width=device-width, initial-scale=1.0, shrink-to-fit=no"/>

    Es gab nach Safari 9 diesbzgl. Änderungen wie sich der Browser verhält. Und da auch Chrome auf Apples die Safari-Engine verwenden (muss), erklärt das vielleicht dann auch, warum auch auf Chrome.


    Browser-Cache dann löschen. Man weiß ja nie ;)

  • Moin,


    danke auch dafür. Hab ich geändert, jedoch ist dann die Seite auf dem iOS / Chrome direkt gezoomt, am Layout ändert sich aber nichts :(

    Ein Update nur für das Template scheint es nicht zu geben?! Da steht nämlich noch: Version 1.0 vom 4/30/2012 ... was mich alleine an 2012 doch sehr wundert :/

  • Wenn du das Protostar kopierst, kannst du die index.php anpassen und einen Link zum Wechseln für Admin User einbauen.

    Damit setzt du die viewport Breite fix auf 1024 und speicherst den Modus in der Session.


    /templates/protostarkopie/index.php


    Suche Zeile 137:

    Code
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />

    ersetze diese durch:



    Den Link zum Wechseln kannst du direkt an den Seitenanfang setzen (oder manuell ?desktop=on bzw. ?desktop=off aufrufen).

    Suche nach

    Code
    <div class="body" id="top"> 

    dahinter einfügen

    PHP
    <?php
    if ($user->authorise('core.admin')) {
        if ($_GET['desktop'] == 'off') {
            ?> <a href="<?php echo JUri::current(); ?>?desktop=on">Desktop-Modus einschalten</a><?php
        } else { ?> 
            <a href="<?php echo JUri::current(); ?>?desktop=off">Desktop-Modus ausschalten</a><?php
        }
    }
    ?>


    Besoders elegant ist das nicht, aber sollte funktionieren.

  • Ein Update nur für das Template scheint es nicht zu geben?! Da steht nämlich noch: Version 1.0 vom 4/30/2012 ... was mich alleine an 2012 doch sehr wundert

    Das Datum ist nicht unbedingt ein Kriterium. Die Version und Datum wurde nie nachgebessert, obwohl es einige Änderungen im Protostar gab.


    Es verwendet veraltetes Bootstrap-2-CSS.


    Was ich machen würde: Eine frische Joomla unter selber Umgebung mit Demodaten installieren. Das sind die, die bei der Installation mit "Test-Daten" oder so gekennzeichnet sind.


    Wenn du dann das selbe Verhalten beobachten kannst, wäre das wohl ein Protostar-Bug und du könntest das als solchen einreichen.


    Vielleicht aber auch ein Bootstrap-2-Bug. Da hilft bei Bootstrap einreichen nichts mehr. Aber vielleicht trotzdem bei Joomla. Zumindest wissen sollte man das dort, dass da was gar nicht mehr funktioniert.

  • <?phpif($_GET['desktop'] == 'on') {

    Besoders elegant ist das nicht, aber sollte funktionieren.


    Eben. Zumal Joomla den Globalen Scope bereinigt und alles rauswirft, was nicht vom Joomla gesetzt wurde,- auch für die Session hat Joomla eigene Routinen, welche man verwenden sollte

    Linux ist wie guter Sex, man kann es beschreiben oder darüber reden, man weiß erst, was es bedeutet, wenn man es erlebt hat.

  • Danke, hier verbessert:
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    ersetzen durch


    Wechsel Button hinter
    <div class="body" id="top">
    einfügen:


    PHP
    <?php
    if ($user->authorise('core.admin')) {
        if ($session->get('desktop') == 'on') {
            ?> <a href="<?php echo JUri::current(); ?>?desktop=off">Desktop-Modus ausschalten</a><?php
        } else { ?> 
            <a href="<?php echo JUri::current(); ?>?desktop=on">Desktop-Modus einschalten</a><?php
        }
    }
    ?>


    So hat ma dann auch kein Burgermenu in der Desktopansicht.

  • Hallo,


    vielen Dank an Euch. Ich habe das so eingebaut, in der Template Vorschau wird mir der Button oben links auch angezeigt "Desktop-Modus einschalten". Auf der normalen Webseite habe ich den Button jedoch nicht. Der Cache wurde geleert, im Inkognito Modus versucht und der Safari, Edge und Chrome versucht :/


    Edit: Ich nehme alles zurück und behaupte das Gegenteil :) Hab jetzt nochmal neu versucht und nun geht es. Einzig mein Logo im Header ist nun weg.