Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Subdomain mit eigenem Theme
#11
Hallo und willkommen,

was du bisher gemacht hast hört sich erstmal logisch an. Ich habe das leider noch nicht versucht und kann daher keine Tipps aus der Praxis nennen, hätte aber eine Idee: Um möglichen Komplikationen aus dem Weg zu gehen könntest du auf der Domain für mobile Geräte einen Cookie setzen und im Forum abfragen, ob dieser existiert. Falls ja, wird das mobile Theme geladen. Dadurch würdest du allen Komplikationen bezüglich der URL aus dem Weg gehen.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#12
Ich sehe auch Probleme bei Links in den Beiträge. Nicht, dass dann kreuz und quer verlinkt wird...
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#13
Das problem mit den links habe ich bereits per plugin gelöst. Dabei setze ich folgenden hook:

$plugins -> add_hook('parse_message','staymobile_fixlinks');

der code der fixelinks:

PHP-Code:
function staymobile_fixlinks($m){
if(
$_SERVER["SERVER_NAME"] == "m.theandroidblog.de")
{
   
$m preg_replace('|http://theandroidblog.de|i''http://m.theandroidblog.de'$m);
   
$m preg_replace('|object type="application/x-shockwave-flash" (.*?) value="http\://www\.youtube\.com/v/(.*?)"(.*?)object|smi''<a href="http://www.youtube.com/watch?v=$2&feature=player_embedded">YouTube Video Link</a>'$m);

}
else
{   
    
$m preg_replace('|http://m.theandroidblog.de|i''http://theandroidblog.de'$m);
}

return 
$m;


Das klappt auch gut und die User bleiben immer in der entsprechenden Domain. Der zweite preg_replace ersetzt nur die Ausgabe des mybb youtube-codes durch links, da eingebettete Videos das "Design sprengen"
#14
So, hab mich nun ein wenig in die Cookie-Thematik eingelesen (ist Neuland für mich)

Wenn ich das alles richtig verstanden habe, dann müsste ich, sollte ein User per mobile-sub auf die Seite kommt, ein cookie erzeugen.
PHP-Code:
setcookie("usemobile","1",time()+(3600*24)); 
bei der Themeauswahl überprüfe ich das cookie auf den entsprechenden Wert. Dazu auslesen mit
PHP-Code:
$cookie $_COOKIE["usemobile"]; 
und dann per if-abfrage das theme zuweisen. Sollte der User auf die normale Version wechseln dann kann ich das cookie löschen oder eben umschreiben
PHP-Code:
setcookie("usemobile","",time() - 3600); bzw setcookie("usemobile","0",time()+(3600*24)); 

Was ich mich nun frage, wie soll mir das Cookie beim Problem der URLs helfen. Die Breadcrumb, Suchergebnisse etc werden doch weiterhin unter Zuhilfenahme der mybb->settings['bburl'] erstellt und damit sind auch die Links im Theme zum Teil noch "ohne" die m-subdomain. Daher würde man bei entsprechenden Links auch wieder in der normalen Version landen. Per Cookie werde ich die bburl ja nicht überschreiben/anpassen können, das holen sich die einzelnen Funktionen ja weiterhin über mybb->settings['bburl']. Vielleicht steh ich aber auch auf dem Schlauch und übersehe etwas grundsätzliches bei der Funktionsweise Cookies/mybb. Derzeit scheint mir daher das Zuweisen der bburl in der Global der Weg mit den geringsten Änderungen zu sein und daher auch mit dem geringsten Update-Aufwand.
#15
Welches Theme verwendet wird, wird ja in der global.php festgelegt. Und du hast es richtig beschrieben: Wenn das Cookie existiert, gibst du Theme x vor, ansonsten nicht. Vorteil dieser Variante ist, dass du nicht 2 verschiedene URLs benötigst und somit beide Versionen der Webseite unter der gleichen URL erreichbar sind.

* User ruft m.domain.tld auf -> Cookie wird gesetzt -> User wird weitergeleitet zu domain.tld -> da Cookie existiert, wird das mobile Theme benutzt.
* User ruft domain.tld auf -> kein Cookie, deshalb normales Theme.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#16
achso Smile dann haben wir wohl aneinander vorbeigeredet. die subdomain würde ich gerne behalten, die ist auch schon länger im Einsatz. Das vorherige mobile Theme war aber vom Funktionsumfang viel geringer und daher war dort auch das meiste egal bzw. wurde mit kleinen Code-Anpassungen erledigt. Das Neue ist da schon um einiges "kompletter" und soll auch mobile den vollen Zugriff auf die Optionen gewähren.

Ich werde die aktuelle Methode jetzt einfach mal testen. Sollte es zu Problemen kommen, dann kann ich immer noch die cookie-methode aufgreifen. Alternativ könnte ich dann auch mal auf den user-agent abfragen und anhand diesem ein entsprechendes Theme schalten.

Edit: Fast vergessen. Danke für den netten Support und die hilfreichen Hinweise Smile


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Inhalt eigener Profilfelder in eigenem Template frage_zeichen 6 2.293 26.02.2009, 20:30
Letzter Beitrag: frage_zeichen