WP Commit Digest for February 2006

WP development has been very active since 2.0.1. Much work is going into improving WP’s Page handling to make it a better CMS. WP has allowed one to manage both Posts and Pages for some time now. Pages, however, are missing some of the work flow control that Posts have. Posts can have a status of “publish”, “private”, or “draft”. Due to the way Pages were originally slipped into WP, they could only have a status of “publish”. No longer. We restructured things quite a bit so that Pages are now first class citizens that have the same workflow as posts.

Another major restructuring effort involves how we handle publishing future posts. We now use a psuedo-cron system to schedule posts for publication rather than relying on our post queries to exclude posts with publication dates that fall after the current time. This makes our queries faster and adds some handy cron API that allows plugin authors to do fun cron-y things. Owen has the gory details on both pseudo-cron and the improved Page handling.

While improving the Page workflow, we also fine-tuned the Page capabilities. Page capabilities are now cleanly separated from Post capabilities, and new delete capabilities control deletion of both Posts and Pages. These were added to enable better access control for those writing Wiki plugins. Wiki users should be able to edit and publish pages but not delete pages, and they should be unable to touch posts at all. The added caps allow plugin authors to setup Wiki-like editing roles.

A small change that will have many rejoicing is the addition of paging to the Page Manager. Yes, we’re lame for not having this before, but now we’ve got it. I was holding off on an adding this until the Page rework mentioned above was done so that we could do this cleanly.

Links management received a thorough overhaul. The rather complex Link Categories page is gone completely, and the Link Manager is pared down and simplified. The Link editor features the collapsible, draggable boxes used in the Post and Page editor, and the backend link code received simplification and prettification as well. On top of all of that, Links are now known as Bookmarks. We’ve been meaning to update and cleanup Links Bookmarks for several releases and at last it is done.

A feature that just landed today allows any Page to be used as the front page in place of the usual blog page. You can display your About page as the front page and move the latest blog posts to a Blog or Journal page. Any of your Pages can be used as the front page or the blog page.

And, of course, we have the usual variety of bug fixes. There are always bugs to fix.

Update: Screenshots

21 thoughts on “WP Commit Digest for February 2006

  1. I am very happy about the front page feature, I hope it will be released soon. Keep up the good work, it is being appreciated!

    Cassady (NL)

  2. I like that front-page idea. I have been thinking of ways to do such an idea, as I think it would benefit my blog (slightly). So I am glad you folks put it in their, as now I do not need to do anything … except wait.

  3. So… when will these changes be available to regular folks like me? I’d love to use some of these updates ASAP, so I’m hoping there’s a downloadable version available soon…

  4. Doug, there are already plugins that cause pages to be included in searches. I think the one I’ve used is called “Search Everything.”

  5. The “show static page on front page and show blog posts in subdirectory” functionality that is in WP trunk now can also be enabled for WP 2.0.1 right now with this plugin… just FYI. When WP 2.1 (or whatever it will be called) comes out, you can switch over very easily to the built-in WP method… will take about 5 or 6 clicks in total. I see no reason to wait.

  6. Mark J, what plugin are you referring to? I think I know, and it didn’t do what I wanted, but I want to be sure. (Your “this plugin” link isn’t a link.)

  7. I’ll try to answer some of the questions.

    Categories for Pages is being discussed.

    Improving search to cover Pages and other objects is also being discussed. We need to be better at this out of the box.

    Right now the only way to get these changes is via the subversion repository. We’re still very early in the development process with things changing daily. These features may look entirely different by the time they are released.

    Austin’s Home Page Control is a very good plugin that provides the “page on front” functionality for 2.0.1. We decided that this feature is popular enough to bring into core for the next release. Props to Austin.

  8. I’m so happy to hear about these developments.

    Another built-in feature that would greatly improve WP as a CMS would be a checkbox feature to display/hide pages or categories when using the list_pages/wp_list_pages and list_cats/wp_list_cats tags in templates.

    Something like this would allow for so much more control over site design without having to struggle against the very “blog-y” convention of having a huge category list on the sidebar.

    Thanks for all the great work that has gone into making WP a great CMS so far. I’m actually a fairly new WP user so please let me know if there is an official WP feature wishlist somewhere that I can post to. I couldn’t seem to find one in the Codex.

  9. Hi

    Sounds great stuff, most of it currently achievable via plugins but anyhting that makes life easier straight out of the box is fine by me!

    One feature I’d really love to see is the ability to easily change the order that pages are listed when called by wp_list_pages. Maybe something similar to how in Mambo you have little Up and Down buttons in the admin screen? The current numbering system is a bit unwieldy.

    That very minor point aside, I love WP and it just seems to be getting better all the time!

    Simon

  10. The big thing giving me a little bit of grief with WordPress is the lack of fine grained control over category and post display based on user roles. The Category Visibility plugin worked really well on WordPress 1.5.x when it was extended to include next/previous navigation filtering, 403 access denied pages, and archive list filtering. Category exclusion for WP2 handles the roles well but doesn’t have next/previous nav filtering, 403 pages or archive list filtering. I tried to port the patches over but failed miserably (thanks to having next to no coding skills) and also because the original author suggested that not all the hooks are in place in WP2. For example, when I updated the get_next_post() function, it fails to work for anyone except the WP admin (again probably because I suck at coding). How hard would it be for the WordPress developers to extend the link functions to work with user permissions in the main trunk? My opinion is that once more CMS functionality comes into play, then permission control will be the next big thing. Thanks.

  11. I’m very interested in seeing your future WordPress page handling capabilities, as I would also like to see a lot more AJAX on the WordPress front end, rather than having to implement a hodgepodge of AJAX plugins and hacks. If you guys want to keep up with Google, you have to start integrating some AJAX front end features on WordPress. All that page reloading is starting to annoy me, now that I am thinking of implementing massive amounts of information in the pages in lieu of databasing.

  12. That’s another thing, sidebar expand and contract page, category and link lists, directly from the database, using AJAX. These should be integrated with the same AJAX features used in the admin backend. Do I have to do all this myself?

Leave a Reply