PageRenderTime 25ms CodeModel.GetById 17ms RepoModel.GetById 1ms app.codeStats 0ms

/instructions_de.htm

https://bitbucket.org/vins13pattar/adaptive-images
HTML | 177 lines | 152 code | 25 blank | 0 comment | 0 complexity | bab3e3d9be5db896e8c830af94a7e473 MD5 | raw file
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <style>
  6. body {
  7. width : 90%; margin : 1em auto;
  8. background : #333; color : #aaa; font : 100%/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif; }
  9. h1, h2, h3, h4, h5, h6 {
  10. color : #fff; }
  11. p code { color : #99e; }
  12. pre > code { display : block; padding : 1em; border : 1px solid #999; }
  13. :target { background-color : #000;}
  14. a,a:visited{ color : #99f; }
  15. </style>
  16. </head>
  17. <body>
  18. <h1>Adaptive-Images Installationsanweisungen</h1>
  19. <h2>Basis Anweisungen</h2>
  20. <p>Kopieren Sie <code>adaptive-images.php</code> und <code>.htaccess</code>
  21. in das Hauptverzeichniss ihres Internetauftritts.
  22. Wenn Sie bereits eine htaccess Datei haben BITTE NICHT ÜBERSCHREIBEN, lesen sie die dafür vorgesehenen Instruktionen.</p>
  23. <p>Erstellen Sie ein Verzeichniss mit dem Namen <code>ai-cache</code> im Hauptverzeichniss
  24. mit Schreibberechtigung (CHMOD 777).</p>
  25. <p>Kopieren Sie folgendes Javascript in den &lt;head&gt; Bereich ihrer Seiten.
  26. Das Script MUSS sich im head Bereich befinden damit es ausgeführt wird bevor
  27. die gesamte Seite geladen ist und die ersten Bilder vom Server ausgeliefert werden.</p>
  28. <pre><code>&lt;script&gt;document.cookie='resolution='+Math.max(screen.width,
  29. screen.height)+'; path=/';&lt;/script&gt;</code></pre>
  30. <p>Das wars. Sie sind fertig</p>
  31. <p>ANMERKUNG: Die <code>ai-cookie.php</code> Datei wird normalerweise nicht
  32. benötigt. Nur beim Einsatz der <a href="#alternate">Alternativen Methode</a>
  33. zum Feststellen der Displaygrösse wird sie benötigt ansonsten kann sie gelöscht werden.</p>
  34. <h2>Sie haben bereits eine .htaccess Datei</h2>
  35. <p>Sichern Sie bitte diese Datei bevor Sie Änderungen daran vornehmen.</p>
  36. <p>Öffnen Sie bitte ihre bestehende .htaccess Datei und editieren Sie den Inhalt.
  37. Suchen Sie nach einem Abschnitt suchen der so beginnt:</p>
  38. <p><code>&lt;IfModule mod_rewrite.c&gt;</code></p>
  39. <p>Sollten Sie ihn gefunden haben kopieren Sie folgenden Code in den Bereich:</p>
  40. <pre><code># Adaptive-Images -----------------------------------------------------------------------------------
  41. # Add any directories you wish to omit from the Adaptive-Images process on a new
  42. line, as follows:
  43. # RewriteCond %{REQUEST_URI} !some-directory
  44. # RewriteCond %{REQUEST_URI} !another-directory
  45. RewriteCond %{REQUEST_URI} !assets
  46. # Send any GIF, JPG, or PNG request that IS NOT stored inside one of the above
  47. directories
  48. # to adaptive-images.php so we can select appropriately sized versions
  49. RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php
  50. # END Adaptive-Images -------------------------------------------------------------------------------</code></pre>
  51. <p>Gibt es keinen solchen Abschnitt in ihrer Datei kopieren Sie stattdesen folgenden Code in die Datei:</p>
  52. <pre><code>&lt;IfModule mod_rewrite.c&gt;
  53. Options +FollowSymlinks
  54. RewriteEngine On
  55. # Adaptive-Images -----------------------------------------------------------------------------------
  56. # Add any directories you wish to omit from the Adaptive-Images process on a
  57. new line, as follows:
  58. # RewriteCond %{REQUEST_URI} !some-directory
  59. # RewriteCond %{REQUEST_URI} !another-directory
  60. RewriteCond %{REQUEST_URI} !assets
  61. # Send any GIF, JPG, or PNG request that IS NOT stored inside one of the above
  62. directories
  63. # to adaptive-images.php so we can select appropriately sized versions
  64. RewriteRule \.(?:jpe?g|gif|png)$ adaptive-images.php
  65. # END Adaptive-Images -------------------------------------------------------------------------------
  66. &lt;/IfModule&gt;</code></pre>
  67. <h2>Weitere Einstellungen</h2>
  68. <h3>.htaccess</h3>
  69. <p>Anweisungen sind in der Datei als Kommentare enthalten (alle Zeilen die
  70. mit # beginnen sind Kommentare und werden nicht ausgeführt)</p>
  71. <p>Folgen Sie den Anweisungen im Code um Verzeichnisse die nicht mit
  72. Adaptive-Images benutzt werden sollen einzutragen.</p>
  73. <h3>PHP</h3>
  74. <p>Sie können die PHP-Datei öffnen und die Einstellungen im CONFIG Bereich ändern.
  75. Die Standardwerte sehen so aus:</p>
  76. <pre><code>/* CONFIG ----------------------------------------------------------------------------------------------------------- */
  77. $resolutions = array(1382,992,768,480,320); // Die Auflösungsschritte für die Bilder erzeugt werden (Bildschirmbreite in Pixel)
  78. $cache_path = "ai-cache"; // Wo die verkleinerten Bilder gespeichert werden. Der Ordner muss beschreibbar sein.
  79. $jpg_quality = 80; // Die Qualität der erzeugten JPGs 0 bis 100
  80. $sharpen = TRUE; // Verkleinerte Bilder verlieren an Schärfe, bei TRUE werden die Bilder geschärft
  81. $watch_cache = TRUE; // stellt sicher das neu hochgeladene Bilder neu verkleinert werden
  82. $browser_cache = 60*60*24*7; // Die Zeit in Sekunden für den BROWSER cache (Standard 7 Tage)
  83. $mobile_first = TRUE; // Ist kein Cookie vorhanden wird zuerst die mobile Version gesendet (wenn FALSE, wird das grösste Bild gesendet)
  84. /* END CONFIG ----------------------------------------------------------------------------------------------------------
  85. ------------------------ Verändern Sie nichts nach dieser Zeile wenn Sie nicht wissen was Sie tun -------------------------
  86. --------------------------------------------------------------------------------------------------------------------- */</code></pre>
  87. <p><code>$resolutions</code> sind die Bildschirmauflösungen mit denen gearbeitet wird.
  88. Als Standard werden verkleinerte Bilder für grosse Bildschirme, normale Bildschirme,
  89. Tablets, Smartphones, und Handys gespeichert.</p>
  90. <p>Im allgemeinen, wenn Sie die CSS Methode nutzen, werden diese Auflösungen
  91. dieselben wie in den 'media queries' sein.</p>
  92. <p><code>$cache_path</code> Der Pfad in den die Bilder zwischengespeichert werden.
  93. Er kann beliebig geändert werden. Der Pfad wird hier eingetragen und es muss
  94. sichergestellt sein das er auf dem Server existiert.</p>
  95. <p><code>$sharpen</code> Die bilder werden nach dem Verkleinern geschärft.
  96. Normal funktioniert das gut sollte ihr Server sehr sehr ausgelastet sein kann es hier abgeschaltet werdn. .</p>
  97. <p><code>$watch_cache</code> Bei Performanceproblemen ihres Servers kann diese Option abgeschaltet werden.
  98. Sollten Sie allerdings ihre Quell-Bilder ersetzen müssen Sie den Cache Ordner manuell leeren.</p>
  99. <p><code>$mobile_first</code> Wenn TRUE und kein cookie ist gesetzt, sendet Adaptive
  100. Images Bilder in der 'mobilen' Auflösung. Wenn FALSE gesetzt ist werden die am
  101. höchten aufgelössten Bilder gesendet.</p>
  102. <h2 id="alternate">Alternative Methode ohne JavaScript</h2>
  103. <p>Eine Schwäche von Adaptive Images ist das JavaScript zum Erkennen der
  104. Bildschirmgrösse des Besuchers benötigt wird.
  105. Im folgenden wird eine Methode ohne Javascript gezeigt.
  106. Diese Methode funktioniert unter Vorbehalt wird allerdings vom Autor nicht empfohlen und nicht unterstützt.
  107. </p>
  108. <h3>Die alternative Methode</h3>
  109. <p>Benötigt kein JavaScript stattdessen aber, muss ÜBER ihrem normalen
  110. CSS, folgende Zeilen eingefügt werden:</p>
  111. <pre><code>&lt;style&gt;
  112. @media only screen and (max-device-width: 479px) {
  113. html { background-image:url(ai-cookie.php?maxwidth=479); } }
  114. @media only screen and (min-device-width: 480px) and (max-device-width: 767px) {
  115. html { background-image:url(ai-cookie.php?maxwidth=767); } }
  116. @media only screen and (min-device-width: 768px) and (max-device-width: 991px) {
  117. html { background-image:url(ai-cookie.php?maxwidth=991); } }
  118. @media only screen and (min-device-width: 992px) and (max-device-width: 1381px) {
  119. html { background-image:url(ai-cookie.php?maxwidth=1381); } }
  120. @media only screen and (min-device-width: 1382px) {
  121. html { background-image:url(ai-cookie.php?maxwidth=unknown); } }
  122. &lt;/style&gt;</code></pre>
  123. <p>Wenn Sie diese Mehode verwenden müssen Sie sicherstellen das die verwendeten
  124. Bildschirmauflösungen dennen in Ihrer adaptive-images.php Datei entsprechen,
  125. Sie benötigen zudem die <code>ai-cookie.php</code> Datei im Hauptverzeichniss ihres Internetauftritts.
  126. (ansonsten wird diese Datei nicht benötigt).</p>
  127. <h3>Der Vorbehalt</h3>
  128. <p>Benutzen Sie diese Methode anstatt JS ist es möglich das besucher bei ihrem
  129. ersten Besuch ihrer Seiten, die original hoch aufgelössten Bilder gesendet bekommen.
  130. ALLE Seiten ihres Auftritts werden wie vorgesehen funktionieren.
  131. Das bedeutet allerdings das Sie die Option $mobile_first auf FALSE setzen müssen.
  132. Ansonsten werden die meisten ihrer Besucher feststellen das die angezeigten Bilder,
  133. bei ihrem ersten Besuch zu klein dargestellt werden.
  134. Otherwise, the majority of people who
  135. </p>
  136. <p>Der Grund dafür ist die Reihenfolge wie Browser Internetseiten verarbeiten.
  137. Als erstes wird das HTML geladen, und in der Reihenfolge wie es geschrieben wurde abgearbeitet.
  138. Das eingebettete JavaScript wird sofort ausgeführt und erzeugt das Cookie.
  139. Danach werden Bilder in der Reihenfolge ihres Auftrettens geladen. das heisst
  140. werden die ersten Bilder vom Server angefordert ist das Cookie mit der Bildschirmgrösse
  141. bereits geschrieben.</p>
  142. <p>Das ist bei der CSS Methode nicht unbedingt der Fall. Die CSS
  143. Methode setzt eine externe Datei voraus - sie fordert vom Server
  144. "background-image" an, welche von der PHP Datei nur benötigt wird um das Cookie zu setzen.
  145. Das Problem ist das der Browser beim laden der externen Datein nicht anhält,
  146. er arbeitet weiter während er auf die externe datei wartet. Das bedeutet das
  147. schon Bilddateien angefordert werden können bevor die PHP Datei abgearbeitet wurde
  148. und somit noch kein Cookie gesetzt wurde. Das wiederum heisst, daß wenn $mobile_first TRUE ist
  149. die für mobile Geräte verkleinerten Bilder gesendet werden. Aber nur wenn die
  150. allererste Seite geladen wird.</p>
  151. </body>
  152. </html>