搜尋
首頁CMS教程&#&按增強 WordPress 主題中的導覽:轉換靜態 HTML

如果您已經學習了這個系列,那麼您現在已經有了一個工作主題,其中包含已上傳到 WordPress 的模板檔案。在本教程中,您將繼續處理在第 2 部分中建立的 header.php 檔案。您將學習如何新增可透過 WordPress 選單管理畫面進行編輯的導覽選單。為此,您還需要為您的主題建立一個新檔案:函數檔案。


您需要什麼

要完成本教學課程,您將需要以下內容:

  • 您選擇的程式碼編輯器
  • 用於測試您的工作的瀏覽器
  • 本機或遠端 WordPress 安裝
  • 如果您在本機上工作,則需要 MAMP、WAMP 或 LAMP 才能運行 WordPress。
  • 如果您遠端工作,則需要透過 FTP 存取您的網站,並在 WordPress 安裝中擁有管理員帳戶。

1.註冊導覽選單

要註冊導覽選單,請使用 register_nav_menu() 函數,您需要將其新增至主題的 functions.php 檔案中。

由於您的主題還沒有此文件,因此您首先要建立一個。

在主題資料夾中,建立一個名為 functions.php 的新空白檔案。

開啟新檔案並在其中加入以下內容:

<?php
function wptutsplus_register_theme_menu() {
    register_nav_menu( 'primary', 'Main Navigation Menu' );
}
add_action( 'init', 'wptutsplus_register_theme_menu' );
?>

您剛剛創建了主題的第一個功能,拍拍自己的背吧!

您建立的函數名稱為wptutsplus_register_theme_menu(),我在其名稱開頭添加了wptutsplus 前綴,以確保該名稱是唯一的,並且不會與註冊的任何其他函數衝突通過您可能在網站上運行的插件。

此函數包含 register_nav_menu() WordPress 函數,用於建立選單。然後,您的函數將透過 init 操作掛鉤激活,這意味著 WordPress 將在初始化時運行您的函數。

注意:您必須透過正確的掛鉤來啟動此類函數,否則它們將無法運作。

register_nav_menu()函數有兩個參數:

  • 這些參數之一包括選單的位置。在本例中,我們將該位置稱為 'primary'。稍後您會將其新增至您的 header.php 檔案中,以便 WordPress 顯示正確的選單。
  • 第二個參數是選單的描述。在本例中,'主導航選單'。這將在“選單”管理畫面中可見。

2. 設定導覽選單

您現在可以存取「選單」儀表板螢幕,該螢幕以前不可用,因為您的主題沒有註冊選單。目前,其內容並不完美,但我們很快就會更改:

增强 WordPress 主题中的导航:转换静态 HTML增強 WordPress 主題中的導覽:轉換靜態 HTML增强 WordPress 主题中的导航:转换静态 HTML

#當您建立頁面、貼文和其他內容時,您可以透過此畫面將它們新增至導覽選單中。我將新增兩個新頁面,名為「部落格」和「關於」。我將透過「設定」畫面將「部落格」頁面指定為顯示我的貼文的頁面。您可以建立任何您喜歡的頁面。

完成此操作後,返回「選單」畫面編輯選單,新增頁面。將新頁面拖曳到選單後,按一下「建立選單」以建立新選單。

最後,選取“主題位置”下的“主導航選單”,以確保該選單將顯示為您剛剛註冊的主選單並儲存該選單。

增强 WordPress 主题中的导航:转换静态 HTML增強 WordPress 主題中的導覽:轉換靜態 HTML增强 WordPress 主题中的导航:转换静态 HTML

#注意:在對選單進行任何更改後,請務必記住儲存選單 - 與小工具不同,WordPress 不會自動儲存選單。


3. 将菜单添加到您的主题

目前,此菜单在您的网站上仍然不可见;您需要将菜单添加到头文件中才能实现此目的。

打开主题的 header.php 文件并找到以下代码:

<nav class="menu main">
    <?php /*  Allow screen readers / text browsers to skip the navigation menu and get right to the good stuff */ ?>
    <div class="skip-link screen-reader-text">
        <a title="Skip to content" href="#content">Skip to content</a>
    </div>
    <ul>
        <li>
            <a href="#">Home</a>
        </li>
        <li>
            <a href="#">Latest news</a>
        </li>
        <li>
            <a href="#">Featured articles</a>
        </li>
    </ul>
</nav><!-- .main -->

并将其替换为:

<nav class="menu main">
    <?php /*  Allow screen readers / text browsers to skip the navigation menu and get right to the good stuff */ ?>
    <div class="skip-link screen-reader-text">
        <a title="Skip to content" href="#content">Skip to content</a>
    </div>
    <?php wp_nav_menu( array( 'container_class' => 'main-nav', 'theme_location' => 'primary' ) ); ?>
</nav><!-- .main -->

这将添加您在主题中的此位置注册的导航菜单,使用 wp_nav_menu() 函数并指定 'primary' (您在注册时为菜单指定的位置)为'主题位置'

这现在反映在我网站的导航菜单中:

增强 WordPress 主题中的导航:转换静态 HTML增強 WordPress 主題中的導覽:轉換靜態 HTML增强 WordPress 主题中的导航:转换静态 HTML

摘要:菜单不仅仅用于网站标题!

在本教程中,您学习了如何注册导航菜单、向其中添加项目以及将其添加到网站标题。

需要注意的是,菜单不仅仅必须位于网站标题中。您可以在多个位置添加菜单,包括:

  • 侧边栏 - 可能是网站某个部分的部分菜单或当前页面的子页面列表
  • 页脚 - “小字体”页面或最常访问的页面的菜单。
  • 在主导航下方 - 也许是主导航下方的部分菜单。

您可以通过三种方式之一在主题中的更多位置添加菜单。

我按照难度升序列出了它们:

  • 通过“菜单”管理屏幕创建额外的菜单,然后使用“自定义菜单”小部件将它们显示在主题中具有小部件区域的任何位置
  • 通过“菜单”管理屏幕创建额外的菜单,然后将它们添加到主题的代码中,如上面所做的那样。在本例中,您向 wp_nav_menu() 函数调用的数组添加一个附加参数,指定 'menu' 参数作为您为创建的每个菜单指定的名称。
  • 使用 register_nav_menus() 函数注册多个菜单,并将它们添加到主题中的相关位置,如上所述

为什么不尝试一下呢?


资源

  • 导航菜单指南
  • register_nav_menu() 函数
  • wp_nav_menu() 函数

以上是增強 WordPress 主題中的導覽:轉換靜態 HTML的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何輕鬆地將博客從 WordPress.com 移至 WordPress.org如何輕鬆地將博客從 WordPress.com 移至 WordPress.orgApr 18, 2025 am 11:33 AM

您想將博客從 WordPress.com 移至 WordPress.org 嗎? 許多初學者從 WordPress.com 開始,但很快意識到其局限性,並希望切換到自託管 WordPress.org 平台。 在本分步指南中,我們將向您展示如何正確地將博客從 WordPress.com 移動到 WordPress.org。 為什麼從 WordPress.com 遷移到 WordPress.org? WordPress.com 允許任何人通過創建帳戶來

如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多)如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多)Apr 18, 2025 am 11:27 AM

您是否正在尋找自動化 WordPress 網站和社交媒體帳戶的方法? 通過自動化,您將能夠在 Facebook、Twitter、LinkedIn、Instagram 等平台上自動分享您的 WordPress 博客文章或更新。 在本文中,我們將向您展示如何使用 IFTTT、Zapier 和 Uncanny Automator 輕鬆實現 WordPress 和社交媒體的自動化。 為什麼要自動化 WordPress 和社交媒體? 自動化您的WordPre

如何修復 WordPress 中的自定義菜單項限制如何修復 WordPress 中的自定義菜單項限制Apr 18, 2025 am 11:18 AM

就在幾天前,我們的一位用戶報告了一個不尋常的問題。問題是他達到了自定義菜單項的限制。達到菜單項限制後他保存的任何內容都將根本無法保存。我們從未聽說過這個問題,因此我們決定在本地安裝上嘗試一下。創建了 200 多個菜單項並保存。效果很好。將 100 個項目移至下拉列表中,保存效果非常好。那時我們就知道這與服務器有關。經過進一步研究,似乎還有許多其他人也遇到了同樣的問題。深入挖掘後,我們發現了一張 trac 票證 ( #14134 ) 強調了這個問題。在閱讀了非常

如何在 WordPress 中將自定義元字段添加到自定義分類法如何在 WordPress 中將自定義元字段添加到自定義分類法Apr 18, 2025 am 11:11 AM

您需要將自定義元字段添加到 WordPress 中的自定義分類法嗎? 自定義分類法可讓您組織除類別和標籤之外的內容。有時添加其他字段來描述它們很有用。 在本文中,我們將向您展示如何將其他元字段添加到他們創建的分類法中。 何時應將自定義元字段添加到自定義分類法? 當您在WordPress 網站上創建新內容時,您可以使用兩種默認分類法(類別和標籤)對其進行組織。 一些網站受益於自定義分類法的使用。這些允許您以其他方式對內容進行排序。 例如,

如何使用 Windows Live Writer 遠程發佈到 WordPress如何使用 Windows Live Writer 遠程發佈到 WordPressApr 18, 2025 am 11:02 AM

Windows live writer 是一款多功能工具,可讓您直接從桌面將帖子發佈到 WordPress 博客上。這意味著您根本不需要登錄 WordPress 管理面板來更新您的博客。在本教程中,我將向您展示如何使用 Windows Live Writer 為您的 WordPress 博客啟用桌面發布。 如何在 WordPress 上設置 Windows Live Writer 第 1 步: 要通過 Windows Live Writer 在 WordPr

如何修復 WordPress 可視化編輯器中的白色文本和缺失按鈕如何修復 WordPress 可視化編輯器中的白色文本和缺失按鈕Apr 18, 2025 am 10:52 AM

最近,我們的一位用戶報告了一個非常奇怪的安裝問題。寫帖子時,他們看不到自己寫的任何內容。因為帖子編輯器的文字是白色的。更重要的是,所有可視化編輯器按鈕都丟失了,並且從可視化切換到 HTML 的功能也不起作用。在本文中,我們將向您展示如何修復 WordPress 可視化編輯器中的白色文本和缺失按鈕問題。 初學者註意事項:如果您正在尋找可能在其他網站的屏幕截圖中看到的隱藏按鈕,那麼您可能正在尋找廚房水槽。您必須單擊廚房水槽圖標才能看到其他選項,例如下劃線、從單詞複製等。

如何在 WordPress 中顯示用戶電子郵件中的頭像如何在 WordPress 中顯示用戶電子郵件中的頭像Apr 18, 2025 am 10:51 AM

您想在 WordPress 中顯示用戶電子郵件中的頭像嗎? Gravatar 是一項將用戶的電子郵件地址連接到在線頭像的網絡服務。 WordPress 會自動在評論部分顯示訪問者的頭像,但您可能也想將它們添加到網站的其他區域。 在本文中,我們將向您展示如何在 WordPress 中顯示用戶電子郵件中的頭像。 什麼是 Gravatar 以及為什麼要顯示它? Gravatar代表全球認可的頭像,它允許人們將圖片鏈接到他們的電子郵件地址。 如果網站支

如何更改 WordPress 中的默認媒體上傳位置如何更改 WordPress 中的默認媒體上傳位置Apr 18, 2025 am 10:47 AM

您想更改 WordPress 中的默認媒體上傳位置嗎? 將媒體文件移動到其他文件夾可以提高網站的速度和性能,並幫助您更快地創建備份。它還使您可以自由地以最適合您的方式組織文件。 在本文中,我們將向您展示如何更改 WordPress 中的默認媒體上傳位置。 為什麼要更改默認媒體上傳位置? 默認情況下,WordPress 將所有圖像和其他媒體文件存儲在 /wp-content/uploads/ 文件夾中。 在此文件夾中,您將找到不同年份和月份的子

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具