[Website] Verzeichnisstrukturen von Beginn an richtig einrichten

  • Ersteller Ersteller Mr. Snoot
  • Erstellt am Erstellt am
M

Mr. Snoot

Gast
Hio,

mich ereilt immer wieder das Problem mit dem includen von Dateien und den unterschiedlichen Verzeichnisebenen, so dass ich früher oder später für Dateien in unterschiedliche tiefen Pfaden Notlösungen basteln muss, da sich sonst Pfadangaben auf falsche Verzeichnisebenen beziehen.

Konkret sieht das meistens so aus, dass ich Kopf-, Navigations- und Fußbereiche habe, die auf jeder Seite erscheinen sollen, diese binde ich also via include ein.

Doch da fängt es ja schon mit der Startseite (index.php im Root) an, die eben nicht, wie andere Teile der Seite in Unterordnern liegt. Meist kommt dann auch noch ein anderes Script daher (z.B. mein Suchscript), das teils wiederrum eine Ebene tiefer liegt als die anderen Teile.

Somit kann ich für die Startseite, die Suche und die anderen "Teile" nicht die identischen Kopf-, Navigations- und Fußdateien benutzen.


Vielleicht könnte man das alles mit absoluten Pfadangaben umgehen (ich meine aber, dass es da auch irgendwo gescheitert ist), aber das ist ja nicht besonders schön.

Wie geht man sowas denn von Beginn an richtig an?
 
Hallo Gauder,

wieso legst du denn die Datein alle in Unterverzeichnisse? bei dem Footer, Navigation etc kann ich das wohl verstehen, aber wieso auch die Kontentseiten?

Grüße

tewes
 
Damit es ordentlich strukturiert ist!? :) Startseite, Footer, Navi, Header sind alle im Root.

Ich habe aber dann ja nicht nur eine index.php pro Unterordner, sondern dazu gehören dann weitere themespezifische Seiten, die jeweiligen Bilder, Downloads usw.

Okay, vielleicht könnte man die Bilder und Downloads in einen Ordner ins Rootverzeichnis stellen der entsprechende Unterordner für jedes Thema beinhaltet, aber die ganzen Seiten ..

Ich denke einfach, dass es ist etwas unübersichtlich ist wenn ich alles ins Root klatsche.
 
Alles im Root ist unübersichtlich das ist klar.

Also die ganzen Grafiken und Downloads würde ich schon alle in ein Unterordner legen.
Und die Startseite, Footer etc in ein Unterordner.

Willst du denn nur die Index im Rootverzeichnis haben?

Wäre am besten wenn du mal einen Teil der Aktuellen Verzeinisstruktur posten könntest. Dann sieht man am besten wo man was verbessern kann.
 
Hauptseiten --> Root (z.B.: index, kontakt, impressum, kategorieA, usw. )
Grafiken, Include-Dateien, eingebundene Bilder, usw. --> Unterverzeichnis
Inhalt von verschiedenen Kategorien --> unterschiedliche Ordner (/kategorieA/....) usw.
....
 
Willst du denn nur die Index im Rootverzeichnis haben?
Naja, bisher eigentlich immer Index, Header, Footer (, Navi).

Ich kann mich einfach wenig damit anfreunden, alles ins Rootverzeichnis zu stopfen :)

Hab mal die Verzeichnisstruktur dargestellt wie es jetzt ist und wie es Black.Hawk beschreibt.

dir.gif


Ist das so sinnvoll?
 
>> Ist das so sinnvoll?

Auf diese Frage gibt es keine eindeutige Antwort. Es gibt nämlich nicht die richtige Verzeichnisstruktur schlechthin. Ich verwende sogar in verschiedenen Projekten verschiedene Verzeichnisstrukturen. Alle haben sie Vor- und Nachteile. Beispielsweise war es bei deiner alten Verzeichnisstruktur doch gar nicht so dumm, alle Dateien (Inhalte, Bilder, Downloads), die zu einem Thema gehören, auch in einem Verzeichnis abzulegen. Entscheide dich einfach für die Verzeichnisstruktur, mit der du "besser leben" kannst. ;)
 
Okay, das mit den Bildern in den jeweiligen Unterordner kann ich natürlich lassen, nur die Probleme mit dem inlcuden aus verschiedenen Verzeichnisebenen kann man nicht umgehen!?

Oder gibts dafür ganz anderen Möglichkeiten?
 
Dazu könntest du doch den Pfad für die aktuelle Kategorie in einer Variable wie include_path speichern und das vor jedem include speichern und schon ist das problem gelöst.
 
Dein Problem würde ich genaus wie tewes lösen.

Habe da einfach eine Variable gesetzt, bei mir heißt die "$root_path" und die hängste dann vor jeden Link / Pfad wie auch immer.
 
Okay, das hatte ich teilweise schon mal irgendwo so gelöst. Muss ich mir noch mal näher ansehen.

Danke :)
 
Bei meinem aktuellen projekt mache ich das folgendermaßen:
Code:
root
|
+--> index.php + alle rohdateien für die inhalte (z.b. kontakt.php)
|
+--> inc
|   |
|   +--> ie7 (javascript)
|   |
|   +--> func
|   |   |
|   |   +--> func.php
|   |   |
|   |   +--> kopf.php
|   |   |
|   |   +--> fuß.php
|   |   |
|   |   +--> bilder.php
|   |
|   +--> css
|   |   |
|   |   +--> style.css
|
+--> bin
|   |
|   +--> img (javascript)
|   |   |
|   |   +--> die ganzen bilder


Bei den Rohdateien steht dann z.B. nur
PHP:
<?php
require_once "inc/func.php";
xhtmlHead("Geschichte", date("Y-m-d"));
?>
<div class="text">Hallo, bin ein Blindtext</div>
<?php
xhtmlFoot("7. Dezember 2007");
?>
 

Ähnliche Themen

Zurück
Oben