Jump to content

Navigatiemenu 'vastzetten'


Recommended Posts

Geplaatst:

Hoi iedereen!

Misschien is mijn vraag al een keer gesteld, maar ik had eerlijk gezegd geen enkel idee op welke termen ik dan moest zoeken. Daarom stel ik hem maar even... :)

Ik ben voor iemand een website aan het maken met behulp van html en css, dus nog geen vormen van php etc, omdat ik die met wat meer ervaring wil leren, maar dat even terzijde. Nu bestaat de website die ik maak uit een hoop pagina's. Bij iedere pagina die ik maak moet ik het hele hoofdmenu/navigatiemenu (Hier bij GTAGames.nl is dat waar Forum, nieuws, blods, chat, etc. staat). Daarnaast als ik 1 link wil toevoegen moet ik die op alle andere 10 de pagina's gaan toevoegen.

Als ik de website straks klaar heb en ik wil een link toevoegen zal ik heel wat pagina's moeten gaan aanpassen.

Waarschijnlijk is mijn vraag dan al gesteld: is het mogelijk om dit hoofdmenu/navigatiemenu ergens apart vast te zetten, zodat ik het slechts in een minimaal aantal bestanden hoef aan te passen. Zelf dacht ik al een soort verwijzing naar een apart html bestand dat dan geladen word? Of eventueel een betere oplossing? Ik weet eerlijk gezegd totaal niet in welke richting ik moet zoeken.

Kortom: Hoe kan ik het menu op een website zodanig 'vastzetten', dat als ik later bijvoorbeeld een link wil wijzigen dat ik die niet op alle 20 pagina's hoef te wijzigen?

Alvast hartelijk bedankt!

Geplaatst:

Dit kun je doen met PHP Include.

Zet de code van je menu in een apart document (in mijn voorbeeld heet deze menu.php). Vervolgens komt op je pagina waar het menu komt de staan de volgende tekst:

<?php include ("menu.php") ?>

Zorg er dan natuurlijk wel voor dat je extensie van je document .php wordt, anders werkt het niet. ;)

Geplaatst:

Heb het geprobeerd en heb die include ook meteen opgezocht op W3Schools. Tot nu toe krijg ik 'm nog niet werkend.

Er is ook sprake van een .js bestand dat wordt gebruik in de code om een dropdown aan het menu toe te voegen. Hier de code:

<ul id="sddm">
<li>
	<a href="index.html">Home</a>
</li>
<li>
               <a href="link.html" 
	        onmouseover="mopen('m2')" 
	        onmouseout="mclosetime()">Link</a>
	<div id="m2" 
		onmouseover="mcancelclosetime()" 
		onmouseout="mclosetime()">
	<a href="link.html">Link</a>
	<a href="#">Link</a>
	</div>
</li>
	<li>
               <a href="#" 
		onmouseover="mopen('m3')" 
		onmouseout="mclosetime()">Link</a>
	<div id="m3" 
		onmouseover="mcancelclosetime()" 
		onmouseout="mclosetime()">
	<a href="#">Link</a>
	</div>
</li>
<li>
<a href="#">Help</a>
</li>

</ul>

De dingen als mclosetime zijn van een javascript dat ik heb gebruik om een dropdown toe te voegen. Dus dat als je over een bepaalde link in het menu gaat dat er dan een menutje naar beneden komt met nog een aantal links.

Nu heb ik in eerste instantie dit stuk code verplaatst naar een bestand menu.php. Vervolgens heb in het index.html bestand de hele code van het menu (zie hierboven) vervangen door de php-include. Als ik dan ga kijken op de website is het menu verdwenen? :S Nu heb ik al een beetje gepuzzeld met alles, maar kom er dus niet helemaal uit. Waarschijnlijk omdat ik te maken heb met UL, LI. Overigens de div's verwijzen allen naar een stukje CSS. Of moet ik dus ook ergens verwijzen naar de css?

Geplaatst:

Wijzig je index.html in index.php, zoals ik ook al zei. :puh: Dan zou hij moeten werken. Een .html kan namelijk geen php uitlezen, dus alles wat binnen PHP-tags staat negeert hij compleet.

Uiteraard moet je ook ergens naar je CSS linken, maar ik denk dat je dat al gedaan hebt? Gewoon binnen de HEAD tags op je index.php de volgende link toevoegen:

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

Geplaatst:

Bedankt maar het wil nog steeds niet werken. Kan Windows geen php lezen dan?

Overigens link in in de index.php (voorheen index.html) naar de CSS. In het bestand menu.php heb ik slechts de code van het menu gezet. Zou de css daarin ook moeten of verschillende tags? In ieder geval bedankt voor de hulp. Maar kom er nog niet uit. :puh:

Geplaatst:

Nee, in je menu.php hoeft je geen link te zetten.

Wat er gebeurd bij het lezen van de index.php is het volgende: hij begint met lezen, komt aan bij de include, zoekt deze op, plaatst de volledige tekst uit de include op de plek waar je in de index.php naar verwees, en gaat verder met lezen.

Je hoeft dus ook verder geen HTML-tags te plaatsen in je menu.php.

Standaard kan windows inderdaad geen PHP lezen. Ik weet helaas niet hoe je dit kunt oplossen, ik test de pagina's altijd uit op een server. :)

Geplaatst:

Ik heb even snel XXAMP geïnstalleerd en even snel alle menu's vervangen met de include-code. Gewoon m'n hele menu weer in menu.php geplakt en het werkt! Lag denk ik aan het feit dat ik op Windows veelal die functies test en de host die ik gebruik om online te kijken hoe de website oogt geen php ondersteunt. Maar het werkt, dus hartstikke bedankt!!

Een ander vraagje. Toen ik mijn website voor de eerste keer online uploadde zag alles er toch wel degelijk anders uit dan als ik het in windows opende. Nu ben ik dus van plan te gaan testen op XXAMP (server). Weergeeft deze zoals het uiteindelijk op de website kom te staan?

Geplaatst:

Een WAMP of XAMPP server verzorgt alleen het verwerken van serverside programmeren (waar PHP onder valt). HTML en CSS is clientside en wordt dus door een browser verwerkt. Ofwel, het uiterlijk zou in principe niet moeten veranderen.

Geplaatst:

Een WAMP of XAMPP server verzorgt alleen het verwerken van serverside programmeren (waar PHP onder valt). HTML en CSS is clientside en wordt dus door een browser verwerkt. Ofwel, het uiterlijk zou in principe niet moeten veranderen.

Heb 't nagekeken in XAMPP en je hebt gelijk. Uiterlijk toont hetzelfde als dat het doet offline. Zodra ik het op een testhost (zonder php-ondersteuning) upload werkt de site zoals ie eruit moet zien. Maar alsnog bedankt voor jullie reacties!

Geplaatst:

http://www.w3schools.com/ajax/default.asp

AJAX is the art of exchanging data with a server, and update parts of a web page - without reloading the whole page.

Ideaal voor als iemand in het navigatiemenu op een link klikt naar een andere webpagina op je website, zal enkel de content veranderen en blijft het navigatiemenu gewoon staan ;)

  • 3 weken later...
Geplaatst:

Ajax is echt slecht, ze blijven constant verliezen! :N

>>> Door Megadreams: *Schopt voetbal* Loop er maar achter dan kom je uit in Sport.<<<

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...