Archives for: June 2007

Skins 2.0

Permalink June 21, 2007 @ 03:56, by Francois Planque • Category: New features

b2evolution first introduced blog skins in 2003. Of course, since then, every other blog platform has implemented its own flavor of skins or themes and the concept has become pretty mainstream.

With version 2.0 we hope to take the concept one step further with the introduction of a new reworked modular skin architecture.

One of our design goals with this new skin architecture was to address the main requests we got about skins:

  • Skins should be easier to customize
  • Skins should no longer need manual upgrade when the core app is upgraded

Easier upgrades

Regarding the upgrading, we had already slowed down on incompatibilities with versions 1.8 to 1.10: skins designed for b2evo 1.8 work without modification in 1.9 and 1.10.

However, with version 2.0, we are refining *all* the skin tags in a way that will maximize their upward compatibility with future versions. Our goal here is that once you upgrade your customized skin to 2.x-stable, you will never have to upgrade it again if you don't want to...

Combing through all these tags to make them future proof is what currently takes the most time and holds back the release of 2.0...

Widgets

Regarding easier customization, we have introduced containers and widgets.

Instead of calling a lot of plugins with various parameters, skins 2.0 now simply define containers such has "Header" or "Sidebar" (to name the obvious ones).

Then, in the back-office, a blogger can easily add widgets to the containers of his choice. He would for example add a "Logo widget" and a "Blog list widget" to the Header. Then he would maybe add a "Calendar widget", a "Category list widget" and an "XML feeds" widget to the sidebar. He can also change the order of these widgets at any time.

Widgets automatically get their display parameters from the skin containers. This allows them to automatically adopt the look & feel of the container they're used in. For example: lists may display vertically in the sidebar but horizontally in the header.

However, widgets can also define their own parameters and users can easily set these through a form. Would you like to be able to browse years in that calendar? What file do you want to display as the blog logo? etc...

b2evolution 2.0 will ship with more than a dozen core widgets, as well as plugin widgets ("Who's online?"...) Plugin authors already know how to write their own widgets: they are simply "SkinTag" plugins just as before. Except that now users have an interface to place them at the desired place.

Optionally, you can define parameters for the Widget/skinTag plugin. For example, a weather plugin would define the "city" parameter. It would use it to display the weather for the city of the blog it is included in. And it could even be included twice in the same blog, with different parameters. (Didn't you always dream to track the weather for your work town and your home town on your blog's sidebar? ;))

Views & Pages

Another improvement is that skins can now display something completely different when you are viewing a post list, a single post, a user contact form... or a page.

Yes, b2evolution 2.0 supports out-of-the-flow pages that you can use for general purpose information (what the blog is about, your résumé, rules for commenting...). And you can easily link to your pages from anywhere on your sidebar: just throw in the "Page list widget". Want to link to the pages from the header: just the same! ;)

Advanced customization

Of course, the grassroots evolution bloggers among us will still want to fine tune every little aspect of their skin. We can still do that just as before by editing the skin templates... and it may actually just have gotten easier...

You can now browse through your skin templates online with the embedded file manager and, should you need to, you can edit any template, and especially any CSS file right in place on the server.

Finally, we are adding quite a lot of comments into the skin templates in order to make sure you will feel comfortable with the new skinning system just by opening the files in Dreamweaver or whatever editor you like.

... actually, skins 2.0 simply follow the evolutionary path we've been on since spinning off b2: more features, cleaner code, better comments! ;D

Tags: doc, feature

User permissions 2.0

Permalink June 11, 2007 @ 04:35, by Francois Planque • Category: New features

Advanced user permissions have long been both one of b2evolution’s strengths and one of its weaknesses.

On one hand they allowed unmatched control over who could do what on which blog. That was good in those complex multiblog-multiuser setups. On the other hand, they could be pretty confusing for newcomers who were blogging just by themselves and didn’t need any complex permissions.

Yet, the admins of enterprise blog platforms wanted even more flexibility with their permissions…

With b2evolution 2.0 we have addressed this the following way:

Blog owner default permissions

First, advanced permissions are now turned off by default. That means that when you create a new blog, you assign it to an owner and that’s it. The simplest case being: you are the admin, you create a blog for yourself, you are the owner of the blog.

The blog owner can do almost anything on his blog without requiring any additional permission.

There are a few advanced things that the owner cannot do though. Among these: change the base URL of his blog, aggregate other blogs on his blog, set up a static file… These things require an advanced admin privilege. Again, on single user setups, the owner is also the system admin, so he can do whatever he wants, without trouble.

Advanced perms

Now if a blog owner wants to invite additional users to blog on one of his blogs, he can turn on advanced permissions in his blog’s features panel. By doing so, the “User perms” and “Group perms” tabs appear in the blog settings.

Those advanced permissions tabs work mostly like before: any user can be declared as a member, a contributor, a publisher, a moderator or an admin of any specific blog.

The advanced permissions can also be given on a more granular level (e-g who exactly can upload a file, who can publish drafts, etc…). Those permissions can also be granted to user groups just like before.

Post editing permission

There are a few new advanced permissions though, among which the post editing permission!

So far, when a contributor had permission to post, he could also edit existing posts. Any existing posts…

Well, no more! Now you can decide for each user and/or group what posts he can edit. He may be allowed to post but not to edit anything at all. Or he may be allowed to edit only his own posts. Or he could be allowed to edit only posts written by someone with a user level lower than his own. Or equal user level. Or all posts.

Needless to say, the admin group has a super-permission that superseedes all this and lets them edit anything, anywhere, anytime without any hassle.

We hope this will satisfy most of the advanced as well as the simplification requests we have received since the introduction of advanced perms two years ago. If not, let us know…

All this and more coming to a blog near you this summer — b2evolution 2.0.

Tags: doc, feature

b2evo 1.10.2 "Florida" released

Permalink June 8, 2007 @ 17:46, by Francois Planque • Category: New releases

b2evolution 1.10.2 "Florida" has been released.

It is almost the same as 1.10.1 only this time we can mark it "super stable" and recommend it to everyone since we really didn't find any problematic bug in 1.10.1. (Truth be told, we're searching for bugs harder in 2.0 than in 1.10, but still...)

So, if you are already running 1.10.1 you may as well stay with it. Otherwise, we recommend you upgrade to "Florida", since it's clearly better as any previously release of b2evo. (Btw, the nice thing about improving your software all the time is that you can repeatedly say it's better than ever before! :P)

Download here!

As always: all 1.10.x versions share the same database structure. To upgrade from older verison though you need to run the installer/upgrader.

And again: skins designed for 1.8.x or 1.9.x will also run on 1.10.x. (Unfortunately that won't be true for 2.0)