How to create a custom page menu in WordPress using wp_page_menu

The wp_page_menu function in WordPress is used to display a list of pages as a navigation menu on a website. It can be useful for creating a simple and straightforward navigation structure for a website, especially when the website has a small number of pages. This function can be easily integrated into a WordPress theme to provide users with an easy way to navigate through the different pages of the website.

Parameters Accepted by wp_page_menu Function

  • $args (array|string, optional, default value: array()): Array or string of arguments to generate a page menu

Return Value of wp_page_menu Function

The function returns void if the 'echo' argument is true, and it returns the HTML menu if 'echo' is false.


How to display a simple page menu using wp_page_menu function


This code snippet simply displays a simple page menu using the wp_page_menu function. It will output an unordered list of pages, with each page as a list item.

How to customize the page menu using wp_page_menu function

 wp_page_menu( array(
 'show_home' => true,
 'sort_column' => 'menu_order',
 'menu_class' => 'custom-menu-class'
 ) );

This code snippet customizes the page menu by specifying additional parameters in the wp_page_menu function. It shows the home page link, sorts the pages by menu order, and applies a custom CSS class to the menu.

How to conditionally display a page menu using wp_page_menu function

 if ( is_user_logged_in() ) {

This code snippet uses an if statement to conditionally display the page menu using the wp_page_menu function. It checks if the user is logged in, and if true, it will output the page menu.


The wp_page_menu function provides a convenient and flexible way to incorporate a dynamic page menu into WordPress websites. By allowing for customization through various parameters, this function enables developers to tailor the menu to fit the specific needs of their site. Additionally, its straightforward usage and integration make it a valuable tool for efficiently managing page navigation. As a result, the wp_page_menu function stands as a reliable and effective solution for creating and displaying page menus within WordPress.

Related WordPress Functions