modul auf mobile geräte

Hilfe zu Modulen und Tags
Locked
markus
Forum Members
Forum Members
Posts: 98
Joined: Mon Dec 17, 2007 4:13 pm

modul auf mobile geräte

Post by markus »

hallo, gibt es eine modul oder eine möglichkeit das die website in einer optimierten version für mobile geräte ausgegeben wird? z.b. das man die seite sich auf dem iphone (optimiert)anschauen kann.
antibart
Power Poster
Power Poster
Posts: 1161
Joined: Sun Aug 17, 2008 9:29 am

Re: modul auf mobile geräte

Post by antibart »

Du kannst style-sheets für die Wiedergabe auf kleinen Handheld-Displays erstellen und  jene explizit unter Layout -> Stylesheets für diese Verwendung zuweisen.


Nun bräuchtest Du noch eine Art "Browserweiche", damit auch das jeweils passende css ausgewählt wird. Ob es dafür ein Modul gibt, kann ich dir leider nicht sagen. Aber mit einer "gewöhnlichen" Browserweiche, die die Bildschirm-Auflösung abfragt, sollte es auch klappen.
nhaack

Re: modul auf mobile geräte

Post by nhaack »

Hallo Markus,

wenn du Mobilen Conten anzeigen lassen willst, gibt es mehrere Möglichkeiten. Zum einen sollten die Templates XHTML valide sein, dann lässt sich fast alles auf dem Handy darstellen (moderene Mobile-Browser sind ziemlich gut geworden).

Ich persönlich verwende für die Mobile Version i.d.R. den gleichen Content (mit weniger Bildern, reduzierte Funktionalität im Template). Die Variante erzeuge ich, indem ein Besucher über eine spezielle Mobile-Subdomain die Site besucht. Erfolgt der Zugriff über die Subdomain, hänge ich an die Seiten per .htaccess Rewrite einen Parameter, der dann dafür sorgt, dass eine kompaktere Variante ausgegeben wird.

Die HTACCESS Regel sieht so aus (Domain und Subdomain müssen auf das gleiche Verzeichnis zeigen):

Code: Select all


# OTHER TEMPLATE IF PAGE IS LOCATED UNDER SUBDOMAIN
# ==================================================
#   Rewrites urls in the form of /parent/child/
# ==================================================
RewriteCond %{HTTP_HOST} ^mobile\.example\.com$ [NC]
RewriteRule ^(.+)$ index.php?page=$1&template=mobile [QSA,L]

Im Template selbst, ist dann eine Weiche eingebaut, die in etwa so aussieht (vereinfacht):

Code: Select all


{if $smarty.get.template == 'mobile'}
   HTML für Mobile Version
{else}
   HTML für normale Version
{/if}


Vielleicht ein gangbarer Ansatz für dich?

Beste Grüße
Nils
markus
Forum Members
Forum Members
Posts: 98
Joined: Mon Dec 17, 2007 4:13 pm

Re: modul auf mobile geräte

Post by markus »

ja besten dank, ich werde mal versuchen umzusetzen. lg, markus
cyberman

Re: modul auf mobile geräte

Post by cyberman »

Evtl. hilft dir auch das Mobile Detection Kit weiter

http://osnews.com/files/mobile-detection-kit-v1.0.zip
User avatar
amh
Forum Members
Forum Members
Posts: 187
Joined: Sun Apr 17, 2005 2:40 pm
Location: Germany -- Augsburg

Re: modul auf mobile geräte

Post by amh »

Servus!

Ich möchte gern einen etwas anderen Weg versuchen. Normaler und mobiler Inhalt sollte nach meiner Philosophie komplett getrennt sein. Daher würde ich gern einen Sniffer einsetzen, der direkt nach der (sicheren) Erkennung automatisch auf die spezielle Mobil-Version der Site umleitet. In meinem Fall einfach seite.de/mobile (schöne Urls und normaler CMSms Seitenbaum).

Sniffer: http://detectmobilebrowsers.mobi/ (Achtung: $50/Jahr)

Lieder passiert so gar nichts :-( Hier ist der Code und ich habe keine Ahnung wo der genau hin soll. Die Ausgabe ist: header('Location: URI);  Ich habe die Vermutung, dass das mit dem {process_pagedata} kollidiert. Hast da jemand schon Erfahrung?!

Code: Select all

<?php require_once('mobile_device_detect.php');
mobile_device_detect(true,false,true,true,true,true,true,'http://testseite.de/mobile/',false); ?>
{process_pagedata}
<!DOCTYPE html>
<__html lang="de">
<head>… 
Eine reine CSS-Weiche finde ich Quatsch.

Viele Grüße Andreas
__/\_|\/|_|-|__  --  designer not coder
cyberman

Re: modul auf mobile geräte

Post by cyberman »

Hmm, {process_pagedata} solltest du mit dem entsprechenden Eintrag in der config.php (false) als Fehlerquelle ausschalten können.

Ich kenne das Script auch nicht wirklich und um die 50$ isses mir ein bißchen zu schade 8).

Hast du schon mal das Mobile detection kit probiert?

http://www.osnews.com/story/19681/Open_ ... ection_Kit
nhaack

Re: modul auf mobile geräte

Post by nhaack »

Probier' mal, die Weiche im Body einzubauen, da dieser vor dem Head prozessiert wird.

Ich sende in einigen Fällen auch per Header eine neue Location und das hat erst funktioniert als ich den Aufruf im Body untergebracht hatte.

Grüezis
Nils
User avatar
amh
Forum Members
Forum Members
Posts: 187
Joined: Sun Apr 17, 2005 2:40 pm
Location: Germany -- Augsburg

Re: modul auf mobile geräte

Post by amh »

Hallo Cyberman,

vielen Dank für Deine Antwort!
[quote][{process_pagedata} solltest du mit dem entsprechenden Eintrag in der config.php (false) als Fehlerquelle ausschalten können./quote]
Die Frage ist hier: Wie? Eine Suche nach {process_pagedata} kann man komplett vergessen, da das ja in fast jedem Thread vorkommt. Ich habe es mal auskommentiert und es scheint nicht schlimmes zu passieren.  ;D

Mein Problem besteht vor Allem darin, herauszubekommen wie ich eine PHP-Ausgabe erreiche????!!!!  >:( >:( >:(

Mein Template:

Code: Select all

header('Location: http://www.example.com/');
exit;
{*process_pagedata*}
<!DOCTYPE html>
<__html lang="de">
<head>
  <meta charset="utf-8" />
  <title>{sitename} – {title}</title>
  <meta name="desc …
Es passiert NICHTS :-((((( Es wird einfach nur alles als Text ausgegeben.

Code: Select all

header('Location: http://www.example.com/');
exit;
Welches Skript: Das von Dir vorgeschlagene OSNews_Mobile_Detection_Kit verstehe ich noch nicht und ist  IMHO mit Kanonen auf Spatzen geschossen. Die ganzen Exoten mag ich gar nicht ansprechen und WML fasse ich auch nie wieder an.
Android, iOS, Blackberry und meinetwegen noch Windows Mobile (;-)) sind Arbeit wert, sonst nix. Aber das ist Philosophie. Und da ich eh gerade an einer no-profit-Site arbeite darf ich die Lizenzgebühr ignorieren. :-(

Ich suche mal weiter …

Viele Grüße Andreas
__/\_|\/|_|-|__  --  designer not coder
User avatar
amh
Forum Members
Forum Members
Posts: 187
Joined: Sun Apr 17, 2005 2:40 pm
Location: Germany -- Augsburg

Re: modul auf mobile geräte

Post by amh »

@ Nils: wie geben ich denn da was aus? Ich habe im Forum gefunden, dass man :(  :'(

Code: Select all

</__body class="{$page_alias}">
header('Location: http://www.example.com/');

Viele Grüße Andreas
__/\_|\/|_|-|__  --  designer not coder
uniqu3

Re: modul auf mobile geräte

Post by uniqu3 »

wenn ich mich nicht täusche sollte php mit {php}dein code hier{/php} eingefügt werden.
Besser wäre ein UDT "erweiterungen -> benutzer definierte tags" dort fügst Du dein php code ohne <?php rein und rufst es im template mit {deinUDTname}
cyberman

Re: modul auf mobile geräte

Post by cyberman »

Performance-seitig dies nicht vergessen ;)

http://www.cmsmadesimple.de/cmsms-suppo ... ndeln.html
Die Frage ist hier: Wie? Eine Suche nach {process_pagedata} kann man komplett vergessen, da das ja in fast jedem Thread vorkommt.
Ich meinte aber die config.php 8)

Code: Select all

$config['process_whole_template'] = false;
Last edited by cyberman on Mon Aug 30, 2010 7:03 pm, edited 1 time in total.
User avatar
amh
Forum Members
Forum Members
Posts: 187
Joined: Sun Apr 17, 2005 2:40 pm
Location: Germany -- Augsburg

[gelöst] Re: modul auf mobile geräte

Post by amh »

Servus!

Ich danke allen für die Tipps. Nachdem ich alles gelöscht und nochmals angefangen habe, funktioniert es nun. Hier die Lösung, die bei mir gerade funktioniert:

Mein Hauptfehler: Statt dem UDT habe ich einen globalen Inhaltsblock verwendet und hatte sicherlich ein paar Syntaxfehler  ::)  :-[  :-\
@unique: {PHP} code {/PHP}: funktioniert
@cyberman: Das Du die config.php meintest war mir schon klar, aber auch nach config braucht man nicht suchen. Ich habe {process_pagedata} und $config['process_whole_template'] = false; einfach nicht zusammengebracht.
Performance kommt bei mir – wenn überhaupt – später. Aber danke für den Link!
@nils: es funktioniert auch direkt vor dem {process_pagedata} und musste bei mir nicht in den body.

Step 1: Sniffer installieren und konfigurieren: http://detectmobilebrowsers.mobi/ ($50/Jahr)

Step 2: Benutzerdefinierten Tag (UDT) z.B. namens »mobile_switch« anlegen. Inhalt:

Code: Select all

require_once('uploads/tpl/mobile_device_detect.php');
mobile_device_detect(true,false,true,true,true,true,true,'http://testseite.de/mobile/',false);
Step 3: {mobile_switch} in Template ganz oben einfügen. Im kurzen Test klappt es aber auch im Body. Ob das jetzt vor unser nach {process_pagedata} erscheinen muss, kann ich nicht sagen, da beiden funktioniert hat.

Zusatz: Das kostenlose OSNews_Mobile_Detection_Kit habe ich auch noch getestet und es klappt. Hier muss ich mich aber erst durch den Code wühlen. Die Configuration von detectmobilebrowsers.mobi ist für Nicht-Programmierer einfacher :-)

Vielen Danke und viele Grüße
Andreas
Last edited by amh on Tue Aug 31, 2010 11:58 am, edited 1 time in total.
__/\_|\/|_|-|__  --  designer not coder
Locked

Return to “Module und Tags”