Hey Anna,
All the major areas, and by major I mean header, footer, top, bottom, right, left _ columns are set via
Code: Select all
$this->children = array(
'common/column_left',
'common/column_right',
'common/content_top',
'common/content_bottom',
'common/footer',
'common/header'
);
If you look in each of your controllers ie: catalog/controller/common/home.php etc ...
You'll see the the children array. $children is a protected variable of the parent Controller and is parsed in during the render method.
See the render() method in system/engine/controller.php
I don't know how much you know about MVC or in our case with OC we're on the edge of being a full MVCL framework.
Model - View - Controller - Language
Your controllers hold your logic, your models are specifically for interacting with your database and/or external servers, your language files hold all your text, and all your design and presentation is kept within your view files.
This way everything is separate so that you can get a much finer level of control and reuse code over and over without having to duplicate your work.
Like I said I don't know if you needed that little primer, but just in case :-)
The OC framework is fairly efficient, though there's a lot of room for improvement in terms of simplifying redundant code in the controllers. We certainly need some additional classes and methods to reduce constantly writing and checking form requests, and simplifying the mapping of language variables. But, that being said, it's a very good system to learn on and it's very structured, so just hang in there and you'll get it.
If you need anything else let me know, I'm always happy to help out.
-V