Frage zu SSI und Unterseiten.

  • Hallo.


    Ich habe wie üblich, im nav eine Startseite mit Unterseiten, was heißt, dass ich bisher bei jeder neuen Unterseite die ich dazufüge, oder bei jeder Änderung im nav-Bereich, diese Änderung auch auf jeder Seite bearbeiten muss.


    Da jedoch die Unterseiten immer mehr werden, möchte ich diese nun mit SSI organisieren, so dass ich die Änderungen auf einer Seite durchführen kann und nicht jede Änderung oder jede Unterseite die ich neu hinzufüge, einzeln auf jeder Seite eintragen muss.


    Ich habe nun die Anleitungen dazu durchgelesen, jedoch auf eine wichtige Frage habe ich leider keine Antwort gefunden, weshalb ich hoffe dass mir hier jemand weiterhelfen kann.


    Es geht um folgendes:


    Ich habe alle meine Seiten in Nav mit Hover Effekt, so dass sich die Farbe beim überfahren mit der Maus ändert und dass die Seite die dann gerade vom User angeklickt wird, schwarz angezeigt ist.


    Also habe ich auf bei nav die Seite die jeweils vom User angeklickt wurde, ohne <a href … </a> angegeben,


    Beispiel:


    <ul >


    <li><strong>Startseite</strong></li>


    <li><a href="Übermich.htm">Über mich</a> </li>


    <li><a href="meineHobbys">meine Hobbys</a> </li>


    <li><a href="Freizeit.htm">Freizeit</a> </li>


    </ul>


    Beispiel:


    <ul >


    <li><a href="Startseite.htm">Startseite</a> </li>


    <li><strong>Über mich</strong></li>


    <li><a href="meineHobbys">meine Hobbys</a> </li>


    <li><a href="Freizeit.htm">Freizeit</a> </li>


    </ul>


    usw.


    Was auch alles ohne Probleme funktioniert.


    Nur funktioniert das auch alles auch noch mit einer SSI Datei, wo ich ja dann alle Seiten in nav anspreche und nicht, wie bisher, auf jeder einzelnen Unterseite die gerade angezeigte Unterseite ohne <a href … </a> angebe? ?(


    Viele Grüße

  • ne sry ich kenn ssi nicht
    habe kurz gegoogelt ist anscheinen nicht das include was man mit php machen kann sonern noch ein anderes.
    kann dir da leider nicht helfen.

  • Schade dass du SSI (Server Sides Include) nicht kennst, wird im HTML5/CSS Tutorial gelernt. SSI und htaccess, sowie auch individuelle Fehlerseite über htaccess und 404 usw.


    Aber vielen Dank für deine Antwort. :)


    Ich wünsche dir noch einen schönen Tag.

  • Sind php befehle wie include nicht auch serverseitig?


    PHP
    1. include('inc/navigation.php');
    2. require_once('inc/navigation.php');


    Warum willst du das nicht verwenden?
    Welches Tutorial?

  • Warum willst du das nicht verwenden?

    Würde ich gerne, aber php kann ich noch nicht, habe bisher erst html und css gelernt.



    Welches Tutorial?

    HTML-Seminar, Kapitel 10: " Serververhalten und Passwortschutz "

  • Also das ist mit eines der einfachsten dinge die es gibt:


    Du hast deine Navi:

    Code
    1. <ul>
    2. <li><a href="index.php">Startseite</a></li>
    3. // usw...
    4. </ul>


    Du nimmst die navi aus deinen html seiten und machst ne leere datei im editor auf, da tuste nur die navi rein und speicherst diese als navi.php ab, und dann tuste in jeder html seite wo die stelle der navigation ist php code einfügen

    PHP
    1. <?php
    2. include('navi.php');
    3. ?>


    dann bennest du deine seiten in index.php, about.php, impressum.php um. Wichtig ist das du die dateien mit der endung .php anstatt .htm oder .html speicherst. Das wars dann kannste die links in der navi.php erweitern und sie werden in alle seiten angezeigt



    Das ist serverseitiges include :D

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von redo ()

  • Das ist ja echt einfach, vielen Dank für deine ausführliche Erklärung. :thumbup:


    Denn ich dachte das php viel schwieriger ist, da ich gelesen habe:


    Zitat:


    Da PHP eine Server-seitige Programmiersprache ist, sollte man sich lokal eine entsprechende Serverumgebung einrichten. Das geht schnell und einfach mit XAMPP.


    - XAMPP herunterladen und installieren
    - Über das Control-Panel Apache starten
    - Deine Website im XAMPP-Ordner unter htdocs ablegen
    - Im Browser deine index.php über localhost/name-des-ordners/index.php aufrufen usw.

    Ich bin sehr froh darüber, dass es jedoch mit php so einfach ist, denn im Html Seminar wird das Auslagern der Unterseiten nur mit SSI und htaccess erklärt, wobei dabei auch gewarnt wird, dass die htaccess Datei sehr sensibel ist und man damit sehr vorsichtig sein muss, denn wenn schon eine versteckte htaccess Datei auf dem Server ist und man diese überschreibt, geht gar nichts mehr. Weshalb ich mich da auch nicht recht herangetraut habe. Aber mit deiner php Erklärung ist das jetzt ohne htaccess ja kein Problem mehr.


    Nur noch eine Frage zu Php:


    Wenn ich die navi aus meinen html Seiten in eine leere Datei im editor gebe und diese als navi.php abspeichere und dann aus all meinen Unterseiten herausnehme, wie kann ich dann die einzelnen Untereiten ansprechen? Da ich ja alle meine Seiten in Nav mit Hover Effekt habe, so dass sich die Farbe beim überfahren mit der Maus ändert und zusätzlich so eingestellt habe, dass die Seite die gerade vom User angeklickt wird, schwarz angezeigt wird, wenn ich diese Seite ohne <a href … </a> angebe.


    Ich meine damit, dass ich ja bisher auf jeder einzelnen Unterseite in der nav, die gerade angezeigte Unterseite ohne <a href … </a> angeben musste, damit die Farbe der Seite, die gerade aufgerufen ist, in nav in einer anderen Farbe angezeigt wird, damit der User auch in nav sieht, auf welcher Seite er sich gerade befindet.


    Wie mache ich dass mit einer php Datei damit das auch noch funktioniert? ?( Denn ich finde es wichtig, dass der User bei einer langen nav mit vielen Unterseiten, immer direkt in der nav sehen kann auf welcher Seite er sich gerade befindet.


    Oder funktioniert mit php im nav nur noch der hover-Effekt, aber nicht mehr die Farbänderung der jeweils angezeigten Seite, da ich ja dort nicht mehr jede einzelne Unterseite direkt ohne <a href … </a> ansprechen kann ?

  • Also eigentlich läuft alles über eine css datei, dabei spielt es keine rolle ob die navigation über php eingebunden wird. Oder was meinste genau?

  • In css habe ich den nav Bereich mit folgenden Befehlen angegeben: ( die in /* ...... */ angegebenen Kommentare, habe ich in css nur für mich eingetragen zum lernen.


    nav {
    width: 230px;
    float: left;
    padding-top: 20px;
    color: white;
    }


    nav p strong{
    color: white;
    }


    nav ul {
    list-style-type: none;
    width: 10em; /* width - background = Rahmen-kasten*/
    margin: auto; /* linker Randabstand */
    padding: 0.2em 0.8em 0.8em;
    border: 1px solid black;/* Rahmen und border-bottom = Rahmen unten ende ul*/
    background-color: #2D2825 ;
    }


    Nav li { /* versuch selfhtml für nav*/
    list-style: none;
    margin: 0.1em; /* Aussenabstand */
    padding: 0; /* Innenabstand */
    }


    nav strong, nav a {
    padding: 6px 6px 6px 4px;
    display:block;
    border: 1px solid black;
    line-height: 15px; /* höhe der a href texte */
    font-weight: bold; /* Schrift dick */
    text-decoration: none;
    color: maroon;
    background-color: #FF8AFF ;
    /* Breitenangaben nur fuer IE */
    width: 100%;
    width: 8.8em;
    }


    nav strong{
    color: white;
    background-color: #2D2825;
    }


    Nav a:hover {
    border-color: black;
    border-left-color: black;
    border-top-color: black;
    color: white;
    background-color: #FF2AFF ;
    }


    Aber bei der Html Seite muß ich laut Seminar die jeweilige Seite die gerade aufgerufen ist, ohne a href angeben, damit die Seite schwarz angezeigt wird.


    <ul >
    <li><strong>Startseite</strong></li> --- ohne a href ------------
    <li><a href="Übermich.htm">Über mich</a> </li>
    <li><a href="meineHobbys">meine Hobbys</a> </li>
    <li><a href="Freizeit.htm">Freizeit</a> </li>
    </ul>


    Wenn ich die <a href an jede Seite setze, dann wird die aufgerufene Seite nicht in schwarz angezeigt, sondern wird im hover Effekt angezeigt.


    Geht das auch ohne <a href in html, über css? Wenn ja, wie?

  • Versuchs mal mit nav:hover , ansonsten poste mir die html und css datei und ich schau mal intensiver drüber... hab grad nix zu tun :D

  • Das ist sehr nett von dir, aber leider kann ich meine html Seite gerade nicht öffnen, benutze scriptly und der macht manchmal Probleme. :cursing:


    Aber nav hover habe ich in css ja schon angegeben mit:


    Nav a:hover {
    border-color: black;
    border-left-color: black;
    border-top-color: black;
    color: white;
    background-color: #FF2AFF ;
    }


    muss ich dort noch einen anderen Befehl eingeben, damit die Seite schwarz angezeigt wird, ohne a href in html angeben zu müssen?


    Auf meinen html Seiten habe ich auf der Startseite:


    <ul >
    <li><strong>Startseite</strong></li>
    <li><a href="Übermich.htm">Über mich</a> </li>
    <li><a href="meineHobbys">meine Hobbys</a> </li>
    <li><a href="Freizeit.htm">Freizeit</a> </li>
    </ul>


    auf der Über mich Seite:


    <ul >
    <li><a href="Startseite.htm">Startseite</a> </li>
    <li>strong><Über mich</strong></</li>
    <li><a href="meineHobbys">meine Hobbys</a> </li>
    <li><a href="Freizeit.htm">Freizeit</a> </li>
    </ul>


    usw.


    und im head auch den link:


    <link href="style.css" type="text/css" rel="stylesheet" />

  • Da du ja gutes Fachwissen hast, habe ich noch eine andere Frage:


    Ich habe heute beim Suchen im Internet folgendes gefunden:


    " Bei »wachsenden« Content wäre ein CMS sicher der bessere (sinnvollere) Weg. Zumal alles so auch für den Betreiber der Website übersichtlicher bleibt. "


    Was sagst du dazu?

  • Spontane Idee von mir:
    Schau dir mal das hier an: OnePage-Tutorial. Da ist am Anfang sehr schön erklärt, wie per PHP der Inhalt dynamisch reingeladen wird (lass den Teil mit JS einfach weg).
    Bei der Methode bekommt nämlich jede Seite eine ID. Lies einfach diese ID aus und schalte entsprechend den Link aus. Frei nach dem Motto:


    Ausprobieren darfst du selber :P

  • Vielen Dank, werde mich mal durchlesen und ausprobieren.


    Was ich mit dem <a href in nav gemeint habe, ist hier als Beispiel, genau beschrieben, somit wird vielleicht verständlicher was ich gemeint habe:


    Eine Navigation sollte niemals einen Link auf sich selbst enthalten. Das bedeutet, wenn wir uns auf der Startseite befinden, sollte der Navigationspunkt »Startseite« nicht verlinkt sein, um Nutzern zu ersparen, dem Link zu folgen, um sich dann wundern zu müssen, dass sich offensichtlich nichts geändert hat. Das Element strong mit einer entsprechenden Anmerkung über das Universalattribut title ist hierbei das Element unserer Wahl.


    < body>
    <h1><img src="images/logo.png" alt="Kochbar" width="288" height="100" /></h1>


    <ul>
    <li><strong title="Hier befinden Sie sich gerade.">Startseite</strong></li>
    <li><a href="ueber-uns.html">Kochbar</a></li>
    <li><a href="speisekarte.html">Speisekarte</a></li>
    <li><a href="oeffnungszeiten.html">Öffnungszeiten</a></li>
    <li><a href="kontakt.html">Kontakt</a></li>
    </ul>
    < /body>


    Listing 8.6: Navigationslinks sollten niemals auf sich selbst verweisen

    Link: http://jendryschik.de/wsdev/einfuehr...auptnavigation


    Das ist genau das was ich gemeint habe, und deshalb auch meine Frage, wie das dann mit der php Datei funktioniert. ?(


  • Du sollst auch nav:hover schreiben und nicht nav a:hover ;)


    Also den Link wegzulassen wäre verkehrt, event. das er nicht anklickbar ist ok :huh: , aber besser über css das er anders aussieht als die anderen links

  • Du sollst auch nav:hover schreiben und nicht nav a:hover


    Oh, vielen Dank, werde ich heute Abend ausprobieren.


    Also den Link wegzulassen wäre verkehrt, event. das er nicht anklickbar ist ok , aber besser über css das er anders aussieht als die anderen links


    Man soll doch lauf Seminar den Link weglassen, dass er nicht mehr anklickbar ist, oder?


    Du schreibst besser über css - wie vereinbart sich das mit hover, da ja dort die Links beim überfahren mit der Maus, bereits eine andere Farbe anzeigen.
    Welchen Befehl muss ich dort eingeben, damit er anders aussieht wie die anderen Links? ?(


    Es wäre sehr nett von dir, wenn du mir das noch schreiben könntest.

  • Achso du meinst wenn die navi per php eingebunden ist, dann willst du dass der lin k nicht ankllickbar ist. nee das geht meines wissens nach nicht, dann musst du das a tag manuell in jeder seite weglassen, sprich du schreibst in jeder seite wo du geöffnet hast nur <li>Name</li> ohne a tag



    Also es wäre echt nett wenn du dir alle videos anschaust:


    http://www.youtube.com/user/webmastercrashkurs/videos
    http://www.youtube.com/user/gimptutorialdeutsch/videos
    http://www.youtube.com/user/PHPtutorialDeutsch/videos



    p.s. ich bin selber kein profi, hab in den letzen jahren nur viel gelernt :D

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von redo ()

  • Einen schönen guten Morgen.

    Achso du meinst wenn die navi per php eingebunden ist, dann willst du dass der lin k nicht ankllickbar ist. nee das geht meines wissens nach nicht, dann musst du das a tag manuell in jeder seite weglassen, sprich du schreibst in jeder seite wo du geöffnet hast nur [*]Nameohne a tag

    Also muss ich doch weiterhin jede Unterseite einzeln bearbeiten.


    Kennst du CMS und was sagst du dazu?


    Zitat:


    " Bei »wachsenden« Content wäre ein CMS sicher der bessere (sinnvollere) Weg. Zumal alles so auch für den Betreiber der Website übersichtlicher bleibt. "


    Ich habe jedoch auch schon gelesen, dass CMS nicht besonders geeignet für Suchmaschinen ist. ?(


    Also es wäre echt nett wenn du dir alle videos anschaust:


    Vielen Dank für die Links. Ich wusste nicht dass es diese Videos auf YouTube gibt und werde mir alle die ich nicht kenne anschauen und kann damit wieder etwas dazulernen. :)



    p.s. ich bin selber kein profi, hab in den letzen jahren nur viel gelernt


    Das hört sich gut an, denn ich bin auch am Lernen. ;) Wie lange hast du zum lernen gebraucht und wie lange arbeitest du nun schon als Webentwickler?


  • Also, CMS steht einfach für Content Management System, quasi ein Organisationstool für den Inhalt der Website.
    Und auch hier heißt es wieder: nicht verallgemeinern. Es gibt viele verschiedene (zB Joomla, Redaxo, Typo3), wobei sie natürlich alle ihre Vor- und Nachteile haben.


    Eine richtige Empfehlung kann ich dir leider nicht geben, da ich selber keines verwende (aber drüber nachdenk ^^), allerdings wird sehr oft Typo3 empfohlen, da es sehr stabil und flexibel aufgebaut ist, d.h. wenig Bugs und viele Tools zum einbauen.
    Nur ist es am Anfang recht schwer vorzubereiten, bis es wirklich zu verwenden ist. Aber dafür gibt es (wieder von Lars Ebert) eine (wie ich finde) sehr ausführliche und auch für Anfänger geeignete Artikelserie, die hier beginnt: HowTo: Photoshop-Entwurf in HTML & CSS umsetzen In diesem Artikel sind auch die Links zu den nächsten Teilen.
    Weiterführend findest du dann auf Advitum sehr viele weitere Artikel zu dem Thema Typo3.