我目前正在爲客戶端的Wordpress網站。這個客戶有很多人會管理網站的內容。話雖如此,我想要主菜單自動填充,並且只有1級子頁面自動填充到子菜單(下拉菜單)。PHP MySQL的WordPress的菜單
我開始使用MySQL構建PHP(顯然是因爲這就是網站的用途)。我目前的PHP腳本工作得非常接近完美,除了我一直在搞搞搞清楚如何爲子菜單設置一個循環。
我比PHP初學者多一點,當涉及到MySQL時,我確信有一些事情我正在做的事情可以做得更乾淨。
下面你會發現我寫的PHP腳本。此腳本目前適用於「主菜單」,但您可以看到,我沒有「子菜單」的循環。如果你可以請告訴我做我想在這裏嘗試的最佳方式,那太棒了!
function mainMenu() {
// connect to mysql
$link = mysql_connect('localhost', 'db_user', 'db_password');
// select the database
mysql_select_db('db_name', $link);
$mSql = "
SELECT a.*,
b.post_title AS sub_title,
b.post_name AS sub_name
FROM wp_posts AS a
LEFT JOIN wp_posts AS b
ON a.ID = b.post_parent
AND a.post_type = b.post_type
WHERE a.post_type='page'
AND a.post_status='publish' AND a.post_parent=0
GROUP BY a.ID
";
$mItems = mysql_query($mSql);
echo '<ul id="menu-main-nav" class="menu">';
while($mResults = mysql_fetch_assoc($mItems)){
echo '<li>';
echo '<a href="'.$mResults['post_name'].'">'.$mResults['post_title'].'</a>';
if($mResults['sub_title'] && $mResults['sub_name'] != null){
echo '<ul class="sub-menu">';
echo '<li>';
echo '<a href="'.$mResults['sub_name'].'">'.$mResults['sub_title'].'</a>';
echo '</li>';
echo '</ul>';
}
echo '</li>';
}
echo '</ul>';
}
非常感謝您的幫助!
-Tyler
爲什麼不使用WordPress的功能呢? –
我其實並不很熟悉很多Wordpress的功能。我會研究這一點。我一直在谷歌試圖找出這一點。但我沒有想到看看Wordpress的功能。 – usmck405
好的,我發現我需要一個Wordpress功能。謝謝Rob W! – usmck405