function glm_get_visable_page_ids()
{
- $publishPageIds = array();
- // Find all pages marked published
- $publishedPages = get_pages(
- array(
- 'post_type' => 'page',
- 'post_status' => 'publish',
- )
- );
- foreach ( $publishedPages as $page ) {
- if ( !$page->post_password ) {
- $publishPageIds[] = $page->ID;
+ static $publishPageIds = array();
+ if ( empty( $publishPageIds ) ) {
+ // Find all pages marked published
+ $publishedPages = get_pages(
+ array(
+ 'post_type' => 'page',
+ 'post_status' => 'publish',
+ )
+ );
+ foreach ( $publishedPages as $page ) {
+ if ( !$page->post_password ) {
+ $publishPageIds[] = $page->ID;
+ }
}
}
return $publishPageIds;