Help working with blanktheme

Gidday, I am mucking around with BlankTheme and .8 RC4, but I am not sure where to start. I have read the docs associated with BlankTheme but cant really make heads or tails of them.

I want to alter the theme to a 3 columns template with a center block at the bottom.

I figured I need to alter this part of the master.htm file?


Code

<!--[* config override *]-->
<!--[ assign var="current"  value="master" ]-->
<!--[* assign var="template" value="3col" *]-->
<!--[* assign var="layout"   value="213_cb" *]-->

<!DOCTYPE html
Okay I figured out, that I needed to alter that part but in the home.htm file which was in the module directory of BlankTheme.

Now, how do I insert content into the bottom center block?

Cheers
Okay, moving right along now.... I am not sure where these are one and the same or I am doing two different things.

1. I got the site to pick up the 3col template using the home.htm file

2. I then created a bottom block using the block creation component of the blocks section.

3. I can now use that block as if it is a normal block - sort of.

What I am wondering:

How do I get the bottom block to stretch the width of the page, rather than just the width of the centre block?

Is creating the bottom block within the block creation component the right way to go?

What other block positions are available? Should they all be made available by default? I only guessed at the bottom block.
Hi,
the grid layout (instead of 3col) gives more flexibility. 123_3b gives 3 columns and below that 3 subcolumns (More or less like this example).
3columns with 1 full center block below that is not foreseen at this moment in the standard available templates. You could file a featurerequest here.

BlankTheme is just the theme framework, you will need to add the relevant block positions and use them in your site. You can see the blockposition names also in templates/includes/3col.htm and the others there. After that you can use them just as any other blockposition. You don't want all blockpositions there since you will need only some of them.



--
campertoday.nl, Module development, Dutch Zikula Community
Thanks espaan, I can get the bottom center block operating, but not the "centerbl" or the "centerbr". Any suggestions? I have switched them on using the block module, and have designated some content but they just dont wanna to show up

Cheers
Are you using the 3col template?
Then you can assign a bottom block with layout 123_cb and the blockposition is called bottom
or
layout 123_2cb and the blockpositions of the 2 subcolumn blocks are centerbl and centerbr. In this case there are 2 columns below the center block of 50% each.

With the grid template it's a little bit different. 3 columns for example and below that another 3 subcolums with layout 123_3b, bottom blockpos are then bottoml, bottomc and bottomr.

Grid template and 123_3b example with bottom columns here



edited by: espaan, May 14, 2008 - 05:00 PM

--
campertoday.nl, Module development, Dutch Zikula Community
Hi Namtrak!
Nice to see you playing with BlankTheme! icon_smile

Well, like Erik says, you need to create a block position in the Blocks Admin Panel for each zone you want to use (like the bottoml and bottomr block positions) then assign one or more blocks to that positions to show content there.

You can also customize the 2col, 3col and grid layouts to show a different block position. You can change the bottoml to simply bottom, and reuse the bottom blocks if that's useful for you.

I guess i'll write more docs in the BlankTheme Trac project about how to customize the default layouts, and the first example will be the full center bottom block. icon_wink

BTW: a new ported theme is available: http://blanktheme.org/Pluralism
i'll commit and upload it to the BT download section.

Happy BlankTheming! icon_lol

--
- Mateo T. -
Mis principios... son mis fines
Thanks guys, but I am still having problems getting the bottom blocks to show.

I have included a screen dump of my blocks setup, and a copy of the opening part of my home.htm file to see if I am missing something?


Code

<!--[* config override *]-->
<!--[ assign var="current"  value="home" ]-->
<!--[ assign var="template" value="grid" ]-->
<!--[ assign var="layout"   value="123_3b" ]-->



http://www.lcc.edu.au/images/blankthemeexample.jpg

Also, I would like to use the drop down menu in the admin pages for the main page, but I have no idea how to either set it up or configure it?

All in all the BlankTheme looks like a great little tool, however as it stands at the moment it is not very intuitive. I would like to see more (if possible) notes within the coding itself to explain what each component does, and a more simplified step by step on using the BlankTheme.

Otherwise - great stuff

Cheers

On first looks BlankTheme looks like a great little tool

The BlankTheme project comes with menutree as a module. A lot of templates are developed for menutree that can "easily" be used within BlankTheme. It is an slightly adapted version of menutree in the NOC. BTW menutree is being updated by Jusuff frum topic.

In short:
In the BlankTheme admin -> variables you can set the use menu instead of plugins to navtop block position. You create the navtop block positions in Blocks and assign a menu (like menutree) to it.
The usage of menutree is another subject and it's not that hard, but also not that intuitive yet. Install menutree, initialize etc. make a multi level menu and then you have to choose the template you want to use and the style sheet with that (check out Docs on menutree templates).

Set for example template to menutree_block_solidblocktabs.htm
and the style sheet to solidblocktabs_blueblack.css
for a topmenu like this one.

Several new templates and styles are on the planning, especially the ones from cssplay are very nice. As you see, BlankTheme (and menutree templates) are still in development, which also means Docs are being written as we speak icon_smile
It's when people start using BlankTheme that the "nasty" things are becoming clear, so don't hesitate to ask questions.



edited by: espaan, May 15, 2008 - 01:35 PM

--
campertoday.nl, Module development, Dutch Zikula Community
Hey Namtrak!
Have you readed the current BlankTheme docs in Trac?
We've wrote some docs, and i don't know if are clear or not, so take a look and PLEASE:
Tell us how to improve that docs for newcomers in BlankTheme icon_wink

Trac project:
http://trac.postnuke.com/blanktheme

Step 1: How to install doc:
http://trac.postnuke…me/wiki/DocsInstall

Enjoy and appreciate any feedback icon_wink

--
- Mateo T. -
Mis principios... son mis fines
I am currently building a website for our local village hall using RC4 and a modified blank theme. Everything works ok until I rename the modified blank theme. I download the modified blank theme, rename it and modify the version.php and the language defines and upload the modified folder. I regenerate the themes list and recreate the Page configurations assignments for the renamed theme. I then select the modified theme as the default theme and everything works ok. However when I log out and attempt to log in I am presented with a Blank Page. To get back into the site I rename the modified theme to modified theme2, postnuke then defaults to the ExtraLite theme which allows me to log in and change the theme back to the original BlankTheme, which you can see here http://www.hadspenvi…ehall.org/index.php
So what am I missing or doing incorrectly ?

Later comment:
the following error message is shown:
In Array module, cannot find template includes/.htm




edited by: DavidJ, May 19, 2008 - 06:07 PM

--
David
Well,
a welcome Blank Page after the second login is a pretty pretty weird issue.
Your use theme is the same of your site default theme? I can imagine a Blank Page only with introduced errors in the lang files or the version PHP file of your new theme. I recommend you to check those files with a colored editor to see if there's any problem with the PHP syntax.

Second, i ever had an error with "In Array module", icon_confused
pretty crazy. May check the syntax of the PHP files in your theme,
and discard introduced errors there.
icon_wink

--
- Mateo T. -
Mis principios... son mis fines
Mateo thanks, yes it is really weird. The theme that does not work is an exact copy, a clone, of the BlankTheme used here www.hadspenvillagehall.org. and renamed hadspen, with a modified version.php:

Code

<?php
/**
 * PostNuke Application Framework
 *
 * @author Mateo Tibaquira [mateo]
 * @copyright (c) 2007-2008, Mateo Tibaquira
 * @link http://www.nestormateo.com
 * @license GNU/GPL - http://www.gnu.org/copyleft/gpl.html
 * @abstract Blank theme to develop new themes with ease
 */



$themeversion['name']           = 'hadspen';
$themeversion['displayname']    = _HADSPEN_DISPLAYNAME;
$themeversion['description']    = _HADSPEN_DESCRIPTION;
$themeversion['version']        = '0.9';
$themeversion['regid']          = '0';
$themeversion['official']       = '0';
$themeversion['author']         = 'Mateo Tibaquira';
$themeversion['contact']        = 'http://www.nestormateo.com';
$themeversion['admin']          = 1;
$themeversion['user']           = 1;
$themeversion['system']         = 0;
$themeversion['changelog']      = 'docs/changelog.txt';
$themeversion['credits']        = 'docs/credits.txt';
$themeversion['help']           = 'docs/help.txt';
$themeversion['license']        = 'docs/license.txt';
$themeversion['xhtml']          = true;

and modified language defines:

Code

<?php
/**
 * PostNuke Application Framework
 *
 * @copyright (c) 2007-2008, Mateo Tibaquira
 * @link http://www.nestormateo.com
 * @license GNU/GPL - http://www.gnu.org/copyleft/gpl.html
 */


define('_HADSPEN_DISPLAYNAME', 'Hadspen');
define('_HADSPEN_DESCRIPTION', 'theme for Xanthia 3');


I can repeat the problem by uploading the hadspen theme to a second server and you can see the log in and other problems here : hadspen.pittriver.org
(click the login to generate the Blank Page)

I can cure the problem by creating a page configuration for the Users module, but that doesn?t explain why theme A (BlankTheme) works perfectly without a page configuration for the Users module.

Also in theme B (hadspen) you will notice that the efa javascript links do not display?.why ?


--
David
Well
seems like the configuration of the master template is wrong.


The user page loads:

Code

<!-- Master template -->
<body id="bt_Users" class="bt_master bt_">
</body>



So, it seems that the theme variables are missing ($template and $layout), so, you should check the line 2 and 3 of the themevariables.ini file (check here the lates…version of that one) to see if default values of both are Ok, (or just override them from the master.htm template uncommenting the assignations).


Take in account that there's a recent change in the layout convention.
The 'lcr' notation was changed to '213', specifying column numbers instead "position letters".
I'll upload a recent copy of the development version to Trac.


If you want, paste here the first lines of your master.htm template
and i can tell you what to change icon_wink

--
- Mateo T. -
Mis principios... son mis fines
It was the themevariables.ini. My local copy was ok but for some reason when moving the theme folder to the server via ftp the themevariables.ini was transferred as an empty file! Still learning icon_smile thanks for your help.

--
David
icon_smile Nice!

Now, we're listing the already ported templates:
http://trac.postnuke.com/projects/blanktheme/wiki/PortedTemplates
and finishing Docs to release the 0.9 version.
After wide community testing 1.0 will be ready icon_smile

--
- Mateo T. -
Mis principios... son mis fines
Mateo,

I recently tested building a theme using BlankTheme as a base to start from.

My thoughts:

While its powerful, its also complex.
The trade-off comes in simplicity versus the upgradeability, and reconfiguration of a standards / cross-compatible theme "framework".

I was several hours into the test case when I noticed the YAML licensing - you must either have a link at the bottom of the page, or pay $59 euro per site or $119 euro per developer (ie, unlimited usage by one developer FOR clients - ie, custom work goes to a single client, not redistributed en masse).

I don't disagree with the licensing costs (its a lot of work to maintain a well coded theme!), but presenting it more matter-of-fact to Postnuker's would probably be prudent - Non-commercial AND commercial must all have a backlink unless a license is purchased.

Usability / Standards
I found the original code base and resulting themes to be very well put together in their final, rendered versions. Due to the complexity (many different templates and CSS files and permutations of such depending on column choices), you must have a good grasp on CSS, sub-templating and a basic understanding of the YAML methodology to customize it to any extent. Simple styling customizations are as easy as finding the correct CSS element.

Saying that, the CSS and templates themselves are clean and well-laid out, and well commented.

Desires / Wish-list
I'm always on the prowl for good, CSS based, cross-compliant themes. I love to start with a good clean base that has some built in cross-compliancy.

What would be the perfect situation is if with YAML and BlankTheme, one could configure a basic theme and perform an "export" to provide a set of templates and CSS just for that specific configuration - cutting out the "extra" fluff that would not be used unless you choose a different theme configuration.

The same can be done by "carving" out and combining the basic YAML templates and CSS (which is what I did when testing it - so that I know have a single template file, with a few sub-tempaltes for modules, and a single CSS, stripped of much of the YAML stuff).

Then, a user could create a nice, clean, cross-compliant theme BASED on YAML, but not tied to it and the resulting bloat (again, a tradeoff for flexibility and future reconfigurability).
(And the YAML docs suggest as much - remove everything your theme doesn't need in the long run.)

As such, I see it as a good theme framework for the developer who would like to have flexibility and semi-upgradeability in their themes, or for a team that may choose the YAML framework to maintain their theme code.

I generally theme in one-shot efforts (theme once, slight tweaks, but if a new layout or different theme is needed, start from a nice clean base again). so the benefits of YAML are a little overkill as I understand BUT it would be a benefit to someone that needs all YAML offers - screen, print, remote CSS, flexibility in layout for future changes, etc.





edited by: uheweb, May 23, 2008 - 03:22 PM
Hi Nolan!
Thanks for sharing your thoughts

uheweb

While its powerful, its also complex.
The trade-off comes in simplicity versus the upgradeability, and reconfiguration of a standards / cross-compatible theme "framework".

Trade-off, well, i didn't consider that point of view.
I was bored to have problems with IE in my themes, and all the time spent fixing them to be cross browser compatible... without talking about accessibility and standards...

Also, the lack of some base to play with the Xanthia magic, organize community stuff around theming, be able to share small snnipets of code like layouts, module customized presentations... many reasons to build a BlankTheme as the base to Theme Development and, in the other hand, YAML is the most flexible CSS Framework out there to support any layout... so, the trade-off is minimal from my point of view, considering that building simple themes is not that simple when we try to build cross-compatible and quality-enough themes.


uheweb

you must have a good grasp on CSS, sub-templating and a basic understanding of the YAML methodology to customize it to any extent. Simple styling customizations are as easy as finding the correct CSS element.

Not like an expert in CSS, just the basis.
For instance, look the YAML subtemplates documentation and those examples are pretty clear for someone that have a basic CSS understanding right?. We've put some efforts on the BlankTheme documentation too and explain how to customize the layouts.

With some feedback we can do it for "CSS newbies" with successful experiences, do you agree?


uheweb

What would be the perfect situation is if with YAML and BlankTheme, one could configure a basic theme and perform an "export" to provide a set of templates and CSS just for that specific configuration - cutting out the "extra" fluff that would not be used unless you choose a different theme configuration.

Well, it's a good idea. In the mid term, i'm thinking in an adaptation of the [ulr=http://builder.yaml.de]YAML builder[/url] to BlankTheme, to build customized layouts and export the htm to be copied in the /templates/includes folder...
By now, some docs on how/where to cut out unneeded stuff can be a temporary solution.


uheweb

I generally theme in one-shot efforts (theme once, slight tweaks, but if a new layout or different theme is needed, start from a nice clean base again). so the benefits of YAML are a little overkill as I understand BUT it would be a benefit to someone that needs all YAML offers - screen, print, remote CSS, flexibility in layout for future changes, etc.

Well, as i said above, i see a critical advantage on BlankTheme + YAML: Community shared stuff around theming. Shared layouts compatible between themes, modules output customizations, and much more.
Flexibility in layout to share....

in general, i do the same when i port OpenSource templates:
one-shot efforts porting the specific styles (widths, margins, paddings, backgrounds in basemod.css; typography, colors in content.css) then customize specific zones (News articles styles by default), and if a new layout is needed, just change a parameter in the template, clean base styles remain reusable.

Finally, last night we finished the BlankTheme ThemeGallery:
http://blanktheme.org/ThemeGallery
Four open source templates already ported,
i'll see how to enable the Download function


Thanks again for your thoughts Nolan icon_wink

--
- Mateo T. -
Mis principios... son mis fines
Nice discussion and feedback.
Keep in mind that cross browser themes with the flexibility of module specific layouts is not easy at all. That is for the real experts. But in BlankTheme you can do it without too much effort and knowledge. That's how I see the advantage.
For example, Homepage 1 column, News 3 column with a center column below for RSS lists, PhotoGallery wider page, Calendar in 2 column, etc.


I started to use pnThemeYaml (for PN 0.764) a few years back. I just liked the YAML template framework back then already and pnThemeYaml used Yaml as a base. When PN 0.8 came on the horizon it was a nice suprise that Mateo was already working on BlankTheme. I had already done some efforts in converting pnThemeYaml for xanthia3, so we could combine the efforts.

--
campertoday.nl, Module development, Dutch Zikula Community
Thanks for the efforts, I think its a great option for PN.

Once someone has a grasp of the YAML methodology, they can do quite a bit with it.

For developers, it offers many advantages. For the lay webmaster, a way to configure and export a "consolidated" theme, where many of the benefits of YAML are there, but with a consolidated template and just a few CSS files for simplicity sake.

The slant of some of my comments came from trying to do some fairly interesting DIV placements - overlaying divs for a hide/show effect, negative margins, etc. Trying to enable this was a little more difficult while trying to maintain YAML/blanktheme compatibility. For multicolumn, multiblock layouts, with all content contained in these blocks and columns, YAML is beneficial.

I'm looking forward to playing with it more. Thanks for the work!

NCM

PS A diagram showing the make-up of a blank theme would be helpful in the docs:

home.htm with 2col

Code

home.htm
|
- 2col.htm
|
- layout2_col.css (do not edit)
    |
    - ../yaml/core/slim_base.css (do not edit)

    -  screen/basemod.css (edit to control ALL layouts) - is that correct?
    -  screen/basemod_2col.css (edit to control 2col layouts) - right?
    -  screen/content.css (edit general elements - h1, p, etc. for ALL layouts.)
    - ../yaml/print/print_100_draft.css); (make copy, edit to control print layout)
 
|
- head.htm
   |
   - style/patches/patch_2col.css (do not edit)
       |
       - ../../yaml/core/slim_iehacks.css  (do not edit)
|
- style/custom/home.css


Custom CSS files (ie, pertinent to a particular home, admin, or module template) can be called in the relevant home.htm, FAQ.htm, etc. Create a home.css with those DIV id's and link in the home.htm.

Also, if you have a unique layout, make a copy of the 2col, 3col or grid in includes. Rename, and call it in the home.htm, FAQ.htm by (example is home based on 2col):

Code

<!--[include file="includes/$template.htm" layout=$layout current=$current]-->

with

Code

<!--[include file="includes/home-custom2col.htm" layout=$layout current=$current]-->

This preserves the YAML syntax (ie, 2col stying if using 2col), yet allows you to then place custom stuff on a new 2col based layout without changing the default 2col.htm on a per module template basis.

OR

Just copy the 2col.htm HTML into the home.htm template, and modify as desired WITHOUT calling the includes/subtemplate.

That little map above the short tips would be an easy way to make an intro to what files go where and what files drive the CSS styling.



edited by: uheweb, May 24, 2008 - 01:38 PM
Just coming back on my earlier problem. The problem with the themevariables.ini was not caused by an error in ftp transfer. The themevariables.ini is being over written and ends up empty whenever I create a new page configuration through the admin panel. This is the procedure I use to add a new active search link to the navigation bar:
1.Create search.ini in templates/config. To do this I copy an existing ini file, say pages.ini and change page=pages.htm to page=search.htm
2.I want a no columns template for the search page, so I copy the existing nocolumns.htm and rename it search.htm and change

Code

<!--[ assign var="current"  value="master" ]-->
to

Code

<!--[ assign var="current"  value="search" ]-->
and

Code

<!-- NoColumns template -->
to

Code

<!-- Search template -->

3.I add

Code

if (pnModAvailable('Search')) {
        $menu[] = array('search', _NAV_SEARCH, pnModURL('Search'), null);
to the function.bt_userlinks.php
4.I add language define

Code

('_NAV_SEARCH','Search');
to global.php in the language folder.
5.All files are saved and uploaded to the server.
6.Via the themes admin panel I create a new page configuration for search using the previously created search.ini
At this point the themevariables.ini is overwritten and I am back to the log in problems etc caused by the lack of info for the master template. I upload my good copy of the themevariables.ini and all is ok.


--
David
@Nolan: Good point!
I've though something like that icon_smile
I'll update some docs on our Trac Wiki with that info and tell you icon_wink
Thanks.


@David: Ouch!
Seems like a bug of the Theme admin panel David.
Is your /templates/config folder writable?


By now, you can add the Search module manually:
1) you have the new search.ini file, with a new page=search.htm: OK icon_smile
2) Go to the pageconfigurations.ini and add the Search module there:

Code

[Search]
file = search.ini
upload it and there you go icon_wink

--
- Mateo T. -
Mis principios... son mis fines

Quote

Is your /templates/config folder writable?


That's it ! All the .ini files were writable but the directory was not icon_frown

The system warns when the .ini files are not writable, it does not warn when only the config folder is not writable ! This needs to be corrected.
Mateo thanks for your help and advice.

--
David
You're welcome David!
I've reported this issue in the tracker into a Theme related bug,
and if i have time tomorrow, i'll build a patch to show that warning.
Enjoy BlankTheme icon_wink

--
- Mateo T. -
Mis principios... son mis fines
@Nolan:
Forgot to mention here that YAML has a new minor release (3.0.5 [24.05.08])
http://www.yaml.de/e…log/version-3x.html

The license texts of commercial licenses (YAML-C)
have been revised and clarified in relation to reproduction and redistribution


So, have to take another look to the text...

--
- Mateo T. -
Mis principios... son mis fines
Sorry to dig up this old thread, but I noticed the here license restriction on YAML.

Is that true?
All themes where the theme author used YAML must carry a link to YAML?