Newbie Theme Questions

Permalink 1 user found helpful
Hello! I've got my very first theme done for Concrete5, but I have some questions that the documentation didn't clear up for me.

First, Page Types. As I understand it, if a page that I've created doesn't match one of the three default page types that I have (full, left_sidebar, right_sidebar), it uses my default.php file.

Page types are matched to PHP files in my theme directory (right??). So, if I had a full.php in my theme directory, pages of Page Type full would use that file and that file ONLY, correct?

It's confusing because my first theme looks like a left sidebar style page type, but I haven't implemented anything but default. So, if the user selected 'full' for a page, nothing would change.

Furthermore, if I wanted to migrate existing content from one theme to another, how can I find and map content to a new theme? Are there 'standard' content area names (like the built in Page Types)? I guess I'm looking for some Best Practice guidance.

I know this is a long post. Thanks for reading! Any help would be greatly appreciated!

Darkwater23
 
mario replied on at Permalink Reply
mario
hi darkwater,

what version of C5 are you running?

If it doesn't match it should use the default I think. However, is your default in effect a left_sidebar copy (check the code)? If so, that might be why it looks like the left_sidebar but really isn't.

have you activated all your page types and given yourself permissions to apply the new layouts (if you're not logged in as admin and have advanced permissions enabled).

yes, pages of full.php should only use that page type.

I've found a weirdness that no one has answered so far. Creating a new page using a page type that doesn't come with the core page types causes certain elements to be left out such as the header nav. my workaround is to create a new page using the core page types (left_sidebar) and then apply the new layout in the Design option. Awkward, but it works.

To answer your other question, migrating can be pain depending on how your previous content was laid out. Try to take advantage of the prexisting content area names that come with c5 such as header, header nav, main, footer, etc. (http://www.concrete5.org/help/building_with_concrete5/developers/themes/a_list_of_areas_and_page_types_for_themes/ ) but many other areas may need to be added to make the transition. You could try to match your database info to smooth the transition but it'll still probably be a chore. But that's most likely true of any transition to another CMS.

-mario
Darkwater23 replied on at Permalink Reply
Darkwater23
Version = 5.3.2

Actually, what I meant by "looks like left_sidebar" was that the free template has a left side bar in the design. So, if you try to use right or full width, the look doesn't change because I haven't set those up. It would be neat if the UI would hide or gray out unimplemented page types in a theme. Might be clearer for the user that way.

I'm using the page types out of the box, so I haven't had to activate a page type yet.

Thanks for the link! That will go a long way in helping me understand using themes.
mario replied on at Permalink Reply
mario
:) good luck