LLMS_Nav_Menus::filter_nav_items( array $items )

Filters Nav Menu Items to convert #llms- urls into actual URLs.


Description Description

Also hides URLs that should only be available to logged in users.


Top ↑

Parameters Parameters

$items

(array) (Required) Nav menu items.


Top ↑

Return Return

(array)


Top ↑

Source Source

File: includes/class.llms.nav.menus.php

	public function filter_nav_items( $items ) {

		$urls = array(
			'#llms-signout',
			'#llms-signin',
		);

		foreach ( $items as $i => &$data ) {

			if ( in_array( $data->url, $urls, true ) ) {

				if ( '#llms-signin' === $data->url ) {
					if ( is_user_logged_in() ) {
						unset( $items[ $i ] );
					} else {
						$data->url = llms_get_page_url( 'myaccount' );
					}
				} elseif ( '#llms-signout' === $data->url ) {
					if ( is_user_logged_in() ) {
						$data->url = wp_logout_url( llms_get_page_url( 'myaccount' ) );
					} else {
						unset( $items[ $i ] );
					}
				}
			}
		}

		return $items;
	}


Top ↑

Changelog Changelog

Changelog
Version Description
3.37.12 Use in_array with strict types comparison.
3.14.7 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.