Thorsten: Technische Umsetzung einer Website

Hallo zusammen!

Ich arbeite derzeit für einen Kunden an einer Website.
Die Website soll nach der Entwicklung jedoch nicht mehr weiter von mir betreut werden.
Dies soll der Kunde auf eigenen Wunsch übernehmen.
Der Kunde verfügt jedoch nur über wenig bis gar keine Erfahrung in HTML, CSS und PHP.

Für die Umsetzung habe ich mir zwei verschiedene Varianten überlegt:

Variante I:

Ich habe eine index.php, in welcher das Grundgerüst meiner Seite dargestellt wird.
Mit Hilfe der Methode "get" übergebe ich den Namen der Datei die den Inhalt enthält.
Diese wird per include an der entsprechenden Stelle der Seite eingefügt.
Die einzelnen Seiten werden also folgendermaßen aufgerufen:

Homepage: index.php bzw. index.php?seite=home
Kontaktseite: index.php?seite=kontakt
Impressum: index.php?seite=impressum
...

Variante II:

Ich habe mein Gerüst in zwei Teile gesplittet:
oben.inc - Alles überhalb meines Inhalt-Divs.
unten.inc - Alles unterhalb meines Inhalt-Divs.

Bei jeder einzelnen Seite werden überhalb und unterhalb des Inhaltes per include die entsprechenden Teile der Seite eingefügt.

Die einzelnen Seiten werden über den entsprechenden Dateinamen aufgerufen:
index.php, kontakt.php, impressum.php, ...

Ich hoffe, dass die Erklärungen verständlich waren.

Hier nun meine Fragen:

Welche Vor- und Nachteile seht ihr in diesen beiden Varianten?
Welche dieser beiden Varianten Varianten würdet ihr mir empfehlen?
Gibt es Alternativen zu diesen Varianten? Wenn ja, welche?

Schonmal vorab Vielen Dank für die Antworten!

Viele Grüße
Thorsten

  1. Hi Thorsten,

    erstere Variante ist vielleicht etwas schneller / einfacher zu programmieren, letztere evtl. geringfühig Suchmaschinen freundlicher. Tut sich im Grunde beides nicht viel, aber vielleicht eher die zweite Lösung.

    Hauptsächlich solltest du vorab genau klären, was / welche Inhalte vom Kunden änderbar sein sollen. Und wenn das ein gewisses Ausmaß überschreitet (und z.B. auch anlegen/löschen von Seiten beinhaltet, News-Sektion, Bilder Galerien, Stellenanzeigen, Gästebuch etc), solltest du evtl. überlegen, ein fertiges CMS zu benutzen. Denn sonst hast du u.U. ne Menge coding vor dir (front- u. backend der Seite plus front- und backend der wie auch immer gearteten Lösung zur Pflege der Inhalte).

    Falls du dich dann für ein CMS entscheidest, würde ich für ein relativ kleines Projekt ohne Know how und Ressourcen auf Kundenseite von Typo dringend abraten (Elefanten > Spatzen), aber Joomla käme vielleicht in Frage.

    Gruß
    Antipitch

    1. Hallo Antipitch,

      erstere Variante ist vielleicht etwas schneller / einfacher zu programmieren, letztere evtl. geringfühig Suchmaschinen freundlicher. Tut sich im Grunde beides nicht viel, aber vielleicht eher die zweite Lösung.

      Dank mod_rewrite und Ähnlichem macht es keinen Unterschied, wie es intern realisiert ist.

      Für mich hört sich die Beschreibung aber auch nach dem klassichen Anwendungsfall für ein CMS an. Das kann man natürlich auch selber programmieren, aber im Endeffekt tut man dann meistens nichts anderes als das Rad neu zu erfinden.

      Schöne Grüße,

      Johannes

      1. Moin Johannes,

        Dank mod_rewrite und Ähnlichem macht es keinen Unterschied, wie es intern realisiert ist.

        doch, nämlich zumindest das

        mod_rewrite und Ähnlich(em)

        wenn wir das zu

        intern realisiert

        zählen. Ich persönlich verzichte auch lieber auf mod_rewrite.

        ;-)
        Antipitch

        PS: Schon klar (dachte geht vorwiegend um die interne Umsetzung, Google war nur'n Hinweis). Welches CMS benutzt du denn für eher kleine Projekte?

        1. Hallo Antipitch,

          Dank mod_rewrite und Ähnlichem macht es keinen Unterschied, wie es intern realisiert ist.

          doch, nämlich zumindest das

          mod_rewrite und Ähnlich(em)

          wenn wir das zu

          intern realisiert
          zählen.

          Mit intern realisiert meinte ich, dass es völlig irrelevant ist, ob jede Seite ihre eigene PHP-Datei hat oder alles als Parameter einer index.php übergeben gibt. Mein Argument war, dass es für die "Suchmaschinenfreundlichkeit" völlig egal ist, da man beispielsweise mit mod_rewrite nach außen eine ganz andere URL-Struktur präsentieren kann, die wenig mit der eigentlichen Struktur der Dateien auf der Festplatte zu tun hat. Vielleicht hätte ich das etwas detaillierter ausführen sollen.

          Ich persönlich verzichte auch lieber auf mod_rewrite.

          Warum denn?

          PS: Schon klar (dachte geht vorwiegend um die interne Umsetzung, Google war nur'n Hinweis). Welches CMS benutzt du denn für eher kleine Projekte?

          Wenn du konkrete Vorschläge für gute CMS suchst, musst du dich an jemand anderen wenden. Ich habe zur Zeit keinen wirklichen Überblick darüber, welche Produkte empfehlenswert sind, da es mich gerade auch nicht wirklich interessiert.

          Johannes

          1. Hi Johannes

            Vielleicht hätte ich das etwas detaillierter ausführen sollen.

            Nee, hab ich so verstanden und seh ich realiter genauso (deshalb das ;-)

            Ich persönlich verzichte auch lieber auf mod_rewrite.
            Warum denn?

            Eher subjektiv/ Angewohnheit. Früher stand das ja nicht immer zur Verfügung und wollte irgendwann mal sehen, ob/ wie's auch anders geht. Hab mich mit dem Thema aber länger nicht beschäftigen müssen...

            Wenn du konkrete Vorschläge für gute CMS suchst

            Nur generelles Interesse (meine Favoriten hab ich ja schon kundgetan). Aber fragen / informieren kann ja nie schaden und danke für die Antwort.

            Gruß
            Antipitch

      2. Hallo Johannes,

        Dank mod_rewrite und Ähnlichem macht es keinen Unterschied, wie es intern realisiert ist.

        Da hast du sicher recht. In diesem Fall wird mod_rewrite jedoch leider vom Webspace-Anbieter _nicht_ unterstützt bzw. gesperrt.

        Viele Grüße
        Thorsten

        1. Hi Thorsten,

          hatte mich gerade mit Johannes zum Thema mod_rewrite unterhalten und gesagt, "füher wurde das ja nicht immer unterstützt". Offensichtlich bin da aber doch gar nicht so altmodisch wie ich dachte...

          Kommen bestimmt noch andere Vorschläge, aber ein Weg für ein kleines Projekt wäre dann, feste Dateinamen zu vergeben (.php) und die dann in einer zentralen include Datei via $_SERVER['PHP_SELF'] auszulesen und über so gebildete Variablen die jeweiligen Daten zu holen und zu platzieren (Headerbild, Überschrift, Text etc.. Automatische (Sub-)Navigationen gehen natürlich dann auch). Das CMS dann halt genauso...

          Gruß
          Antipitch

    2. Hallo Antipitch,
      danke für deine Antwort.

      Hauptsächlich solltest du vorab genau klären, was / welche Inhalte vom Kunden änderbar sein sollen. Und wenn das ein gewisses Ausmaß überschreitet, solltest du evtl. überlegen, ein fertiges CMS zu benutzen.

      Dieses gewisse "Ausmaß" überschreitet das Projekt _nicht_, werde also mit Sicherheit ohne ein CMS auskommen können.
      Es müssen nur einzelne Seiten abänderbar sein. Viele der Seiten sind "statisch", können also einmalig erstellt werden und müssen danach nicht regelmäßig verändert werden.
      Daher sollte der Kunde die Möglichkeit haben ohne großen Aufwandbei den relevanten Seiten den Inhalt zu verändern (ohne dabei das Layout versehentlich zu zerschießen).
      Da der spätere Admin gerne die Grundtechniken in HTML lernen möchte (was ich natürlich begrüße), werde ich wohl mit beiden Varianten an mein Ziel kommen.

      Viele Grüße
      Thorsten