Menu
6 augustus 2007 - 19:36   
geplaatst door: Jurrian
Ik heb een layout gemaakt in photoshop en deze in dreamweaver cs3 als backgroundimage gecentreerd. ik wil nu een menu maken in fireworks en deze dan naar dreamweaver exporteren. Alleen ik wil niet elke keer een nieuwe pagina helemaal moeten opzetten met het menu. Ik wil graag als er een knop word aangeklikt dat ze als een target een tabel of iets dergelijks. Ik wil geen gebruik maken van frame borders. Kan iemand mij helpen? hoop dat het duidelijk is
Menu
6 augustus 2007 - 21:05    reactie #1
geplaatst door: iMaarten
Jurrian, welkom bij Macfreak!

Als je geen gebruik wil maken van frames (wat ik uit je vraagstelling begrijp), dan ontkom je er niet aan om het menu op iedere pagina te zetten. Maar op zich hoef je de code en de afbeelding die je in het menu toepast maar een keer te maken, daarna is het een kwestie van kopieren.

Menu
6 augustus 2007 - 21:23    reactie #2
geplaatst door: Jurrian
ik snap je maar wil niet elke keer mijn menu moeten vervangen als er een nieuw onderwerp in komt want daar gaat gigantisch veel tijd inzitten. heb je daar ook een oplossing voor
Menu
6 augustus 2007 - 21:45    reactie #3
geplaatst door: iMaarten
Zoek / vervang in meerdere documenten tegelijkertijd is een simpele oplossing (kan met tekst-editors als BBEdit en Textwrangler).

Verder kan je natuurlijk overwegen om een systeem op te zetten dat gebaseerd is op templates, waarin verschillende vormen van content binnen een template past. Een voorbeeld is Joomla, of een weblogpakket als Wordpress. Dat is iets meer werk in het begin, maar daarna wel heel eenvoudig aan te passen. Wat voor website wil je maken?

Menu
6 augustus 2007 - 22:20    reactie #4
geplaatst door: Ward
Als je webruimte hebt die php ondersteund kan je ook zelf je php schrijven.
Het enige wat je moet doen is al je pagina's in html te maken, saven als .php en overal je menu in php te includen.

Vb:
Je menu.php


<ul>
 <li><a href="">Link 1</a></li>
 <li><a href="">Link 2</a></li>
 <li><a href="">Link 3</a></li>
 <li><a href="">Link 4</a></li>
 <li><a href="">Link 5</a></li>
</ul>

Pagina van je site:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
 "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
 <meta http-equiv="Content-type" content="text/html; charset=utf-8">
 <title>Page Title</title>
 
</head>

<body>

<!-- INCLUDE MENU -->
<?php<br>include("menu.php");<br>?>
<!-- END INCLUDE -->

<p>Andere content</p>

</body>
</html>

Als je nu je menu.php file aanpast, wordt die automatisch op alle pagina's veranderd.

(Bewerkt door Ward om 22:21, 6-08-2007)

(Bewerkt door Ward om 22:21, 6-08-2007)

[+]  
  •    [+]  
Menu
7 augustus 2007 - 10:56    reactie #5
geplaatst door: Cailin Coilleach
Citaat
Als je geen gebruik wil maken van frames (wat ik uit je vraagstelling begrijp), dan ontkom je er niet aan om het menu op iedere pagina te zetten. Maar op zich hoef je de code en de afbeelding die je in het menu toepast maar een keer te maken, daarna is het een kwestie van kopieren.

Gatver-de-gatver-de-gatver!  :shutup:

Nee, zo moet je absoluut niet werken. De kans dat je dingen over het hoofd ziet, of kapot maakt, is te groot. Zelf heb ik een aantal jaar zo mijn website onderhouden, wat veel te veel werk was. Toen ben ik overgestapt naar de methode die Ward noemt en dat werkt een heel stuk beter.

Mijn site is begin 2005 overgegaan van statische HTML+Frames naar statische HTML+PHP includes. Op die manier kan je, zoals Ward zegt, het menu op een vaste plek bij houden en op een vaste plek aanpassen. Om op deze manier te werken hoef je nauwelijks PHP te kennen, want het is een eenmalige actie. Daarna kan je, als je wilt, al je content gewoon nog steeds in HTML houden.

Overigens ben ik sinds die tijd ook steeds meer van de code achter mijn site dynamisch gaan maken. Content zit nu in de database en menu's worden automatisch opgebouwd aan de hand van deze database. Dat zou voor later, na een jaartje leren, een logische evolutie kunnen zijn voor de topic starter.

Maar laten we eerst maar eens met includes gaan werken.

EDIT:
@Ward. Ik denk dat je die menu.php beter menu.html zou kunnen noemen. D'r staat geen greintje PHP in :)

(Bewerkt door Cailin Coilleach om 10:59, 7-08-2007)

Menu
7 augustus 2007 - 19:02    reactie #6
geplaatst door: Ward
Kan je inderdaad doen, maar moest je later eventueel je menu wel dynamisch willen laten invullen, moet je niet al je pagina's opnieuw gaan editen.  :satisfied:
[+]  
  •    [+]  
Menu
7 augustus 2007 - 19:53    reactie #7
geplaatst door: Cailin Coilleach
Fair enough :p

Of je kan het -nog- leuker doen :D

1. In al je PHP/HTML files -> include functions.php en run de functie BuildMenu().
2. Maak functions.php -> maak daarin de functie  BuildMenu().
3. Maak je menu in menu.html.

Zorg dat BuildMenu() aanvankelijk alleen maar een include van menu.html doet. Dan kan je later heel gemakkelijk overschakelen naar dynamische menu's, zonder dat je al je PHP files af moet gaan :D Zo doe ik het in elk geval.

Een van -DE- regels van programmeren voor web sites: zet zo veel mogelijk van je code op een vaste plaats neer en herhaal die nergens anders. Roep die code aan via functies op de plaatsen waar ze nodig is. Op die manier hoef je steeds maar op een locatie te editen en houd je zowel het werk, als de kans op fouten minimaal :)