12.08.2005, 10:10
|
#9 (permalink)
|
| PostRank: 2
Registriert seit: 07.08.2005
Beiträge: 61
| Hallo Monika,
hier ist der Aufbau der Navigation aus der header.php: Code: <div id="navigation">
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="get">
<fieldset>
<input value="<?php echo wp_specialchars($s, 1); ?>" name="s" id="s" />
<input type="submit" value="Go!" id="searchbutton" name="searchbutton" />
</fieldset>
</form>
<ul>
<li<?php if (is_home()) echo " class='selected'"; ?>>Home
<?php
$pages = BX_get_pages();
if ($pages) {
foreach ($pages as $page) {
$page_id = $page->ID;
$page_title = $page->post_title;
$page_name = $page->post_name;
if ($page_name == "archives") {
(is_page($page_id) || is_archive() || is_search() || is_single())?$selected = ' class="selected"':$selected='';
echo "<li".$selected."><a href=\"".get_page_link($page_id)."\">[b]Archives[/b]</a>\n";
}
elseif($page_name == "about") {
(is_page($page_id))?$selected = ' class="selected"':$selected='';
echo "<li".$selected."><a href=\"".get_page_link($page_id)."\">[b]About[/b]</a>\n";
}
elseif ($page_name == "contact") {
(is_page($page_id))?$selected = ' class="selected"':$selected='';
echo "<li".$selected."><a href=\"".get_page_link($page_id)."\">[b]Contact[/b]</a>\n";
}
elseif ($page_name == "about_short") {/*ignore*/}
else {
(is_page($page_id))?$selected = ' class="selected"':$selected='';
echo "<li".$selected."><a href=\"".get_page_link($page_id)."\">$page_title</a>\n";
}
}
}
?>
[/list]
</div> Wobei die FETT markieten Seitennamen bei mir anders heissen, die habe ich umbenannt. Mich wundert nur warum diese dort Hardcoded im Code stehen.
Sobald man eine neue Seite anlegt, wird diese samt Titel automatisch im Header Menü angezeigt.
Hier noch ein Aszug aus der Datei BX_functions.php. Dort wird auch die Navigation behandelt: Code: /**
* Function BX_get_pages
* ------------------------------------------------------
* Returns the following of all WP pages:
* ID, title, name, (content)
*
* $withcontent specifies if the page's content will
* also be returned
*/
function BX_get_pages($with_content = '')
{
global $wpdb;
$query = "SELECT ID, post_title, post_name FROM " . $wpdb->posts . " WHERE post_status='static' ORDER BY menu_order ASC";
if ($with_content == "with_content") {
$query = "SELECT ID, post_title,post_name, post_content FROM " . $wpdb->posts . " WHERE post_status='static' ORDER BY menu_order ASC";
}
return $wpdb->get_results($query);
}
/**
* Function BX_excluded_pages()
* ------------------------------------------------------
* Returns the Blix default pages that are excluded
* from the navigation in the sidebar
*
*/
function BX_excluded_pages()
{
$pages = BX_get_pages();
$exclude = "";
if ($pages) {
foreach ($pages as $page) {
$page_id = $page->ID;
$page_name = $page->post_name;
if ($page_name == "archives" || $page_name == "about" || $page_name == "about_short" || $page_name == "contact") {
$exclude .= ", ".$page_id;
}
}
$exclude = preg_replace("/^, (.*?)/","\\1",$exclude);
}
return $exclude;
} |
| |