Membuat Judul Halaman & Menu Dinamis pada Web Statis


Status
Not open for further replies.

Fadli

Poster 2.0
teman-teman... kalau di WordPress sudah otomatis menampilkan judul halaman & link menu yang dinamis, maka bisa ga misalnya saya buat web statis pakai PHP tanpa database untuk bikin hal serupa?

jadi nanti kalau saya ada di halaman Home, maka:
Judul Halaman = Nama Website
Menu yang disorot = Home

tapi begitu saya saya buka halaman About, maka:
Judul Halaman = About
Menu yang disorot = About

tentu maksud saya tanpa perlu saya buat secara manual di dalam header masing-masing file index.php, about.php untuk menyebutkan judul halaman & menu yang dimaksud, tapi sudah terotomatisasi tiap kali saya berpindah halaman. terima kasih ya sebelumnya...
 

hostnic.id

Hosting Guru
Verified Provider
ini maksudnya ketika cursor di arahkan ke menu HOME muncul tulisan home berkotak kecil?

ex:
PHP:
<a href="index.php" title="home">Home</a>
 

Fadli

Poster 2.0
kayak menu di atas forum DWH ini mas, jadi kalau kita ada di halaman yang dimaksud, maka tampilannya berbeda, contohnya DWH itu kan halaman tempat kita berada pake blok Putih, sementara halaman lainnya masih berwarna Gelap.

kalau manualnya kan seperti ini, misalnya:
Code:
<ul>
     <li><a href="index.php">HOME</a></li>
     <li><a href="about.php" class="current">About</a></li>
     <li><a href="contact.php">Contact</a></li>
</ul>

nah, kalau kita ada di halaman About, maka tampilan link menu About akan berbeda karena diatur dengan class current di CSS. begitu juga title-nya bernama "About" (<title>About</title> kalau HOME maka <title>HOME</title). masalahnya, saya blm tau gimana caranya supaya bisa dibuat otomatis setiap kali kita buka halaman itu mereka menggenerate link menu yang bersangkutan sampai punya atribut class="current" dan tag title berubah sesuai nama halaman yang dimaksud.

moga ga bingung ya mas sama tata bahasa saya... hehehe...
 

hostnic.id

Hosting Guru
Verified Provider
Ooo.. pake style saja mas :1:

untuk site static cukup mudah hanya set per halaman saja
untuk home page misalkan
PHP:
<style>
.current {
Background-image:url(/images/current.jpg);
}
</style>
<ul>
     <li><a href="index.php" class="current">HOME</a></li>
     <li><a href="about.php">About</a></li>
     <li><a href="contact.php">Contact</a></li>
</ul>

untuk About misalkan
PHP:
<style>
.current {
Background-image:url(/images/current.jpg);
}
</style>
<ul>
     <li><a href="index.php">HOME</a></li>
     <li><a href="about.php" class="current">About</a></li>
     <li><a href="contact.php">Contact</a></li>
</ul>
 

Fadli

Poster 2.0
:D

kayaknya saya salah jelasinnya yah :D

kalo untuk stylesheet saya sudah bisa mas, cuma kalo untuk PHPnya yg masih blm tau gimana caranya supaya class="current" & tag <title> ini bisa muncul secara otomatis di tiap <li><a href="" xxx></li> setiap kali saya klik halaman tertentu. jadi bukan secara manual saya tulis di tiap file halaman seperti ini:

(file index.php)
Code:
<head>
<title>[COLOR="Red"]HOME[/COLOR]</title>
</head>
<body>
<ul>
     <li><a href="index.php" [COLOR="Red"]class="current"[/COLOR]>HOME</a></li>
     <li><a href="about.php">About</a></li>
     <li><a href="contact.php">Contact</a></li>
</ul>  
</body>

(file about.php)
Code:
<head>
<title>[COLOR="Red"]About[/COLOR]</title>
</head>
<body>
<ul>
     <li><a href="index.php">HOME</a></li>
     <li><a href="about.php" [COLOR="Red"]class="current"[/COLOR]>About</a></li>
     <li><a href="contact.php">Contact</a></li>
</ul>  
</body>

(file contact.php)
Code:
<head>
<title>[COLOR="Red"]Contact[/COLOR]</title>
</head>
<body>
<ul>
     <li><a href="index.php">HOME</a></li>
     <li><a href="about.php">About</a></li>
     <li><a href="contact.php" [COLOR="Red"]class="current"[/COLOR]>Contact</a></li>
</ul>  
</body>

jadi maksudnya ada ga ya satu kode PHP yang bisa mengidentifikasi sebuah halaman untuk kemudian menggenerate secara otomatis nilai-nilai yang saya maksud diatas (class & title)?


**bener2 sorry banget kalo bahasanya berantakan :D**
 

galuh82

Hosting Guru
Verified Provider
gunakan logika yang simple saja, gunakan if atau pengkondisian pavorit anda berdasarkan nama file.

logikanya:

jika nama file aktif contact.php maka class current tersebut di sisipkan dalam navigasi dst ..

semoga membantu
 

galuh82

Hosting Guru
Verified Provider
untuk pengambilan variabel nama cari refnya di php.net dulu atau buat file php untuk tampilkan phpinfo ... biar lebih mantap lagi referensinya heee

untuk file navigasi buat terpisah/modular .. jadi nantinya cukup di include ditiap file yang diperlukan.

semoga tidak puas hee
 

Fadli

Poster 2.0
saya nemu di http://jontangerine.com/log/2008/02/designer-php-a-dynamic-menu-with-if-and-else

file pages:
PHP:
<?php 
$page = 'xxx'; 
?>
<!DOCTYPE…

navigasinya:
PHP:
<div id="nav">
<ul>

<?php if ($page == 'home') { ?>
<li class="live">
<em><a href="index.php">Home</a></em>
</li>
<?php } else { ?>
<li><a href="index.php">Home</a></li>
<?php } ?>

<?php if ($page == 'about') { ?>
<li class="live">
<em><a href="about.php">About</a></em>
</li>
<?php } else { ?>
<li><a href="about.php">About</a></li>
<?php } ?>

<?php if ($page == 'contact') { ?>
<li class="live">
<em><a href="contact.php">Contact</a></em>
</li>
<?php } else { ?>
<li><a href="contact.php">Contact</a></li>
<?php } ?>

</ul>
</div>


yang masih saya blm puas, kita masih harus nyantumin
PHP:
<?php 
$page = 'xxx'; 
?>
di tiap halaman. jadi misalnya halaman Home, maka di file index.php dikasih:
PHP:
<?php 
$page = 'Home'; 
?>
nah, ada ga caranya tanpa perlu kita masukkan secara manual di tiap file page itu bisa mendeteksi secara otomatis itu halaman apa? Lewat nama file mungkin? seperti:
about.php -> maka terdeteksi sebagai $page = 'About'

saya coba bandingin sama wordpress di http://codex.wordpress.org/Dynamic_Menu_Highlighting ternyata dia bisa pake is_page() nah kalo untuk PHP statisnya gimana cara bikinnya ya?
 

galuh82

Hosting Guru
Verified Provider
mestinya cari referensi langsung ke php.net :)

Bisa gunakan variabel server misalnya $_SERVER["SCRIPT_FILENAME"] nanti yang didapat nama filenya. tinggal buat pengkondisiannya yang disesuaikan dengan kebutuhan
 
Status
Not open for further replies.

Top