Suppose that I create a page in the admin section (under 'Pages') and I have permalinks turned on and this pages slug is 'my-new-page', then is there a WordPress function that will work outside the (blog) Loop that I can use in that page's template on my theme that will retrieve that page's permalink?

  • 1
    get_permalink() ? Jan 14, 2011 at 0:14

2 Answers 2


Hi @racl101:

I think what you are after is to use get_page_link($post->ID). The value $post will have been set by the default query to be equal to the post for the current page and should be in scope when your page template is run.

  • Also if your code is in a function, make sure that you make $post global. Jan 14, 2011 at 3:08
  • @Manny Fleurmond - Good point. Jan 14, 2011 at 5:59
  • @racl101 - You are welcome. :) Jan 20, 2011 at 6:49

yes first of all you would need to require wp-load.php in your custom area using this code:

 require( '../my_wordpress_install_root/wp-load.php' ); ?>

And after that you can follow thsi tut to call any page : http://www.snilesh.com/resources/wordpress/wordpress-tips-and-tricks/wordpress-get-page-content-by-page-id/

  • The original question describes then need to call it outside the Loop, but still in WordPress templates - core would be loaded just fine as usual.
    – Rarst
    Jan 14, 2011 at 6:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.