Official WordPress URL with download, screenshots and more information: http://wordpress.org/extend/plugins/page-tree/
Do you have a WordPress site with lots of pages in a hierarchical structure? Are you trying to use WordPress like a “real” CMS? Then this plugin is for you!
Page Tree gives you a much-needed overview of your published pages in the admininstration panel using a common expand/collapse menu, which lets you navigate your page structure like a folder tree in Windows Explorer.
Now you can quickly and easily find the page you want to edit using the expandable tree view, and also get an admin view site map of your complete site.
The page tree is only displayed in WordPress administration panel, under your regular “Pages” menu. See the screen shot for a better understanding of how it works.


Dear Mans, thanks again
actually i am NOT using widgets in my site, I would appreciated if you tell me how i can add it to the template in my theme sidebar.
hi there.
i’m using the page tree and i really like it. can you tell me what i have to change , that also the other roles can see it in the backend?
thanks a bunch
[...] Version 2.1 | Par Måns Jonasson | Aller sur le site de l’extension [...]
Hi Mans, awesome plugin!
Regarding Stefan’s comment (oct 11): check out PageMash and MyPageOrder – they do drag&drop.
BUT, for simplicity (and safety!) i prefer pagetree (no drag-and-drop).
I would like to add my voice to the “how do we make pagetree the default for ‘edit pages’ in the admin area”. We have a site with ~300 pages, so pagetree is the best option for us. However, contributors cannot see the tool at all(!) and I would like to just make it the default.
Any help is appreciated! (Love the new widget option!)
Will
[...] WordPress Page Tree [...]
Marios: That question is in the FAQ, but here is the answer anyway:
< ?php pagetree_public(bool $expand, bool $show_controls); ?>
Defaults are “false” for both, which gives you a “naked” collapsed tree.
So, just use pagetree_public() for a simple, naked tree.
Will: I’m with you, I don’t think I’d want drag-and-drop either, but I’ll look into it when I have the time.
I’ll make some changes to make sure that all users in WordPress can see the page tree. Unfortunately I don’t think there is a way to replace the WP standard page view with the tree.
Hello, great plugin.!.but when i use Gogle translate the text switches to the next line, and makes the page tree twice as high compared with before.
Any suggestions?
Thanks Mans,
even just having all levels see the pagetree admin page would be a huge step.
Many thanks again for all your work!
w
Hasse: I’m not sure what you are doing there, are you using a Google Translate plugin on your site? Would you care to send a screen shot so I can take a look?
/M;
wp page tree it nice design….but i can’t change it to category ?? or it’s doesn’t work for category ?
mujecks: The Page tree only displays pages.
Everybody: I’ve uploaded version 2.2 to WordPress.org – this version lets ALL users inside WP see the page tree. Hope you like it!
/M;
Somehow, the page-tree menu-item isn’t shown to all of my users. pagetree Version 2.4, WP 2.8.6
no additional settings at adminimize-plugin…
quite helpless: liqui ;-)
Hi;
It’s a very nice clean design – congratulations.
What would I need to modify so that the pages shown are only the ‘current’ page and it’s children.
ie The page display does not show the siblings of the current page?
This way, as I navigated Hierachical pages, your plugin only shows my what is ‘deeper’ within that page
Kind regards
Carl
Thank you Carl,
this seems to be a highly requested feature, so I’ll probably add that to the next version.
I will probably also make it so that the widget can define what categories to work from and possible include/exclude, since not everybody want to show ALL pages in their tree.
/M;
Doesn’t seem to work in 2.9 Rare b1.
CN: Thanks for the heads up. I’ll install the beta and take a look.
/M;
Mans,
Thank you for making this plug-in! It has made my life so much easier. I have several clients whose sites have many, many pages. Your plug-in is so incredibly useful.
I do have one site that presents a challenge. This site has many pages but excludes 3rd level pages from the navigation menu.
Can page tree display all child pages –even those that are excluded from wp_list_pages?
Cathy: I’m not sure I understand you. Page Tree does display all pages, but not pages excluded from wp_list_pages as it relies on that function to display the tree.
/M;
CN: I’ve now installed WP 2.9 beta and Page Tree works just fine. Would you care to elaborate on the problems you were having, if possible complete with screen shots? Thanks!
/M;
Hi! How can I exclude pages ussing your plugin? Where I edit?
Sapres: The widget/public version of the tree will show all pages that a regular page list would show. You can use the excellent “Page lists plus” plugin to hide pages from wp_list_pages() and by that, also, the tree.
/M;
Mans: Thanks indeed!
Experiencing a visual presentation problem when I add the Page Tree Widget to the sidebar.
The widget functions properly in each of the toggle-able configurations BUT the expand/collapse graphic displays to the right of the intended location on the screen.
I say “to the right” because the image covers most of the bullet graphic AND you must click on the area to the left of the bullet (where one would expect the graphic to appear) in order to activate the expand/collapse functionality.
I am using version Wordpress 2.8.5 with only one additional plugin at this time (Any Font.)
Is there a fix or workaround for this problem?
JO
Jeffrey: I’d like to see a screen shot to fully understand what you mean, but it sounds more like a CSS problem than anything else to me. The images used in the tree are not styled in any particular way, so if there are other image CSS settings in your theme, they could override the settings for the images in the tree.
I might have the time this week to come up with a better solution for the CSS for the tree, which might fix your problem.
/M;
That’s all good news Mans…you can see the test instance on the web at http://www.OnehorseWorld.com/Words
I am using the WordPress Default theme with the AnyFont plugin (which I disabled to see if that may have been conflicting)
Thus far I have not made modifications to the Style.css file..the only thing I am planning to do in the near term is slap a background .jpg on the Body.
Let me know if I can provide any more information to help.
Thank you for the extraordinarily fast response!
As I’ve added pages I see that the graphic position problem seems to be limited to the first expand/collapse indicator, which I am guessing supports your hunch that it is a CSS problem and is related to some unfinished business elsewhere on the screen…Not sure if that tidbit will be useful to you…ALSO the test site is still up so you can see the problem live, BUT if you would ALSO like a screen shot for some reason please let me know I will certainly put one in the mail for you.
Peeling the onion skin back another layer…it seems that when I retitled the second branch on the tree suddenly THAT link button was in the wrong position as well…So, based on my hunch I changed the second expandable page BACK to it’s original name and Voila it is suddenly working again. I believe that is a very distinct and repeatable scenario, perhaps a good solid clue in there for you?
Mans? Did I lose you here? Should I keep the test site up, or have you already looked and seen what you need to see?
Thank you for your work..
I have read the faq and I know you explain very well :
Defaults are ”false” for both, which gives you a ”naked” collapsed tree.
So, just use pagetree_public() for a simple, naked tree.
But I am so nooby that I do not know where to put that code, I tried it in a page but of course it is not working.. please some more clues for people like me.. I am trying to show in a page the pagetree as a sitemap.. but don´t know where to put the code.
Thanks and all the best!
Roberto, you need to put that code in your template file, since that is PHP code. If you don’t know how to do that, use the Widget instead.
/M;
Jeffrey: Sorry for the delay, I’ve been held up in other projects.
I took a look at your site, and I found that you have some CSS messing with lists in your sidebar. If I disable your
“padding:0;”
setting for “#sidebar ul ul li, #sidebar ul ol li”
the expand signs are displayed correctly. However, you are still displaying raquo (»)-symbols for every list item as well. This is made in:
“.entry ul li:before, #sidebar ul ul li:before”
set to
content: “» “;
So all the problems are due to your theme CSS design. If you can make some changes to your CSS or simply switch the theme, the tree will most likely work better.
If I find the time soon, I might make changes to the tree CSS to make the tree more theme-independent, but I won’t make any promises so close to Christmas. :)
/M;
Hello,
I was hoping you have a moment to take a peak at a very strange issue I am having with wordpress and your plugin. First of all I think it is fantastic, and greatly appreciate your contribution!
My problem is that the menu flickers momentarily on load up from being fully expanded to what I really wanted which is NOT fully expanded. I need to just load up correctly in the non-expanded view. Can you please take a look and give me a guess to what to look for. I have been driving myself crazy trying to figure this out.
Thanks!
Hector
Hector: Could you please supply me with some more information.
1. How many pages do you have in your tree?
2. How many levels deep is your tree?
3. Most importantly, what browser/operating system/computer are you using? Could you try a different browser and see if you can replicate the issue?
I am using Safari and Firefox on my Mac, I have hundreds and hundreds of pages in my tree, and I have no problems like you describe, so I’d like to know what you are using to see such an effect.
/M;
Hi there, great plugin. Really thank you.
Still…. A couple of suggestions if I may.
1. I do not see the point of “letting users with ALL capabilities see and use the page tree” in the admin panel. Instead, one could assign who sees it through roles as from the “role manager” plugin. Right now -in my blog- when a contributor clicks on the tree (in the admin panel) CANNOT -of course- edit the page but is taken to some page with “chinese characters”, not even utf-8.
2. Could you please make it compatible with the adminize plugin. It is very widely used and a great help.
Thanx in advance,
marikamitsos
Ups….
Sorry. I just found that it is recognized by adminimizer
marikamitsos
Hi Mans,
I too love your plugin. I’m also seeing the open-then-closed effect mentioned a comment earlier. I see it in the latest Safari and Chrome 4.0.249.43, OS X 10.5.8 on a Macbook. I’m using a theme called Suffusion, with wordpress 2.8.6. My page tree is 4 levels deep and has 86 pages.
A question: Is there any way to make the css and javascript load into the head instead of the body?
Thanks again. Awesome plugin for both the front and backend.
Patrick
Thanks for the page tree plugin. I noticed now that Wordpress has a trash function the page still shows up after you put the page in the trash. It’s not a problem for me, but just thought I would let you know.
Thanks – the new version (2.4) no longer shows trashed pages.
Larry: Thanks, I’ll take a look at that shortly.
Patrick: I’ll try to take a look at that problem shortly as well.
/M;
Hi..Happy New year….I have a quick question. I have had page tree installed for 3 months with no issues. I have not changed anything on my site (fastharry.com), and I have not upgraded to the new WP 2.9. I noticed tonite that the site tree is expanded on the site with no toggles showing and I can’t get it to shrink back down. Any ideas?…Thanks
Are you using the widget version? In that case, there are widget options for expanding/collapsing the tree.
Hi Måns! I’ve found a couple of HTML-related problems:
* Page Tree inserts link elements in the document body (should be placed in head)
* Page Tree generates two elements with identical id=”page-tree”
Thanks for the plugin!
Here’s a fix for the link element problem:
add_action('wp_head', 'pagetree_head', 1);
function pagetree_head() {
echo '';
echo '';
}
Here’s a fix for the link element problem:
add_action('wp_head', 'pagetree_head', 1);
function pagetree_head() {
echo '<link rel="stylesheet" href="' . bloginfo('wpurl')
. '/wp-content/plugins/page-tree/lib/jquery.treeview.css" />';
echo '<link rel="stylesheet" href="' . bloginfo('wpurl')
. '/wp-content/plugins/page-tree/page-tree.css" />';
}
Thank you, I will add your suggestions next time I update the plugin.
Small fix for my suggested code: replace bloginfo with get_bloginfo.
I’ve been very strong looking for a page tree which is always present in admin, also takes for instance an additional colummn on the left side. Your plugin is a great help, I miss only this last feature: staying permanently. If you know TYPO3 then you understand what I want. Is it possible to change the page tree plugin in this way in future. I am a little afraid it is not possible without hacking the core.
I agree, that would be nice, and it has been suggested before. However, there are several problems with this – one of the major being hacking the core, which I am strongly against.
Hi, I love your pagetree plugin. It’s perfect! Would it be possible for you to create a quick tutorial to show us how to create versions for categories, archives, and anything else?
Hi. This plugin has come in so handy for me.
I have one request. There are times when I go Page Tree to find a page, but I really want the link to the post itself, not the edit page. Is there a way to add a link to a tree that would look the same, but have links to the posts themselves?
I agree. I’ve been meaning to implement the standard WP solution (a “#” link after the title) for this. Next time!
/M;
Just FYI: The newest version of your page tree plugin was picked up by mod_security as having an XSS problem. Not sure what would have caused this, but might be worth looking into.
Thanks.
Really? That sounds serious. How can I find out more about this?
I have not added or changed any scripts at all, so this is strange.
/M;
Hi,
I am building a two-tier WP page tree, where I have something like this:
|
\-
\-
etc.
My need is to put the dynamic list of chapters (linked) on the page. Will I be able to use your plugin for that – and how? The constraint is I would not like to use widget bar on the & level.
Hi again,
I just realised my pseudotags were filtered out – here is the structure again, expanded.
(bookshelf)
\(book_1)
\\(chapter_1)
\\(chapter_2)
\(book_2)
\\(chapter_1)
\\(chapter_2)
etc…
Piotr, it looks like that would be no problem for the page tree, but you need to explain exactly what you mean with “not like to use widget bar on the & level”.
The easiest way to check out the page tree is to install it and look in the admin view of the page tree – you’ll get the same view in your widget, so if the structure looks right to you in the admin view, you’ll get an idea of how the tree will look on the outside too.
/M;
Hi Mans,
I have run page tree and it looks ok for me – all functions I need are there. The only problem is that (apart from admin console) I only can use it through the widget. And it means that I need sidebar on for every single page – which is impractical.
I am not a programmer, so I can only guess, that there should be some code (using pagetree_public function) to be put in the body od the page, to make the page tree visible and clickable within the page. But I am unable to figure out how to use it.
Please advise.
Piotr
Exactly, you can use the example from the FAQ:
<?php pagetree_public($expand = false, $show_controls = false, $only_subpages = false, $child_of = false); ?>
Experiment with changing the options from false to true for each one to get the view you want.
In the future I might add a quicktag for this option instead.
/M;
i love the plugin! it works great!
except for one small issue:
some of my pages just wont show up in the list. they are not set to private or anything and are assigned under the page parents just like all the others but it wont display the page. it also does this in the wp-admin area of Page Tree.
Any ideas?
Hello Mans,
First of all tusen takk for sharing this jewel.
The latest version has two bugs as far as I can see:
1.in wppagetree.php (link=”rek” ) should read (link=”rel” )
2.page-tree.css is not in its designated location
I hope that’s it :-)
Cheers
Robert
Okinawa, Japan
Wow, thanks for finding that. Turns out that page-tree.css has not been around for ages and the link (which was wrong in this version) has been defunct for a while.
I’ve updated with v 2.6.1 correcting these errors to the WP plugin repository now.
/M;
Hello Mans
Thanks a lot for your prompt action.
Still no good, IE7 now throws a JavaScript error originating
in some .js file in line 132, “Property not supported by object”.
The tree is shown without lines and Expand/Collapse images.
Perhaps this helps further.
Cheers
Robert
Sorry Robert, but I can’t replicate this error. I tested the new version with IE7 and I get no errors.
Could you send me more information on exactly what error message you are getting? Thanks.
/M;
Thanks a lot Mans,
I will persue a clean install tomorrow to rule out any possible odds and get back to you, shortly, with error messages, if any.
Cheers
Robert
Hello Mans,
Sorry, perhaps I am missing something, but all I see is a tree without graphics as if CSS is not recognized.
If I am not mistaken, the tree can be placed anywhere using:
However, the tree shows correct under Pages on the Dashboard.
There, the CSS is referenced in the section, not above
jQuery(document).ready(function()
Well, it should work either way…
In the HTML page source I can see the code for the Expand, Collapse and Toggle buttons but they are not displayed.
Same when using Page Tree as a widget.
Cheers
Robert
Ah, yes. The public display using either the widget or short codes is tricker to get working properly, which is why I didn’t want to add the function in the first place. :)
Displaying the tree on your site is hard since I don’t know what CSS you have around it. Most likely what is happening is that your site has CSS overriding the list-styling that takes place in the page-tree CSS.
I’d make changes to the tree CSS to make it inline or otherwise override all site CSS, but since I didn’t think of that from the beginning, that would quite possibly mess up a lot of peoples current configurations and CSS made for their trees.
My best advice to you is to look at the HTML and CSS output by the tree and make changes to your site CSS to style the tree the way you want it.
/M;
Hello Mans
That does make sense.
Thanks so much for your good piece of advice.
All the best
Robert