Template dev. / universal "top-links"


Inactive User
Subject: Template dev. / universal "top-links"
moreteavicar wrote: [View Post]

BTW Lopalong I'm looking into adding a mod to change the way the top navlinks box works - so that you can just have a single navlinks tpl, rather than having to edit every single page tpl to change the navlinks box - I had the idea a couple of years ago to do it, but never got a round to it! Not sure if that would interest you, being a themer?


Hile, I trust you mean the breadcrumb navigation which at the moment is buried into so many templates. :(

Providing the markup is contained within the breadcrumb and the template called with a single {VAR, then that is a GREAT idea. 8)

It's also going to be a lot of work because there are are so many variations that each app uses, it may be wise to create breadcrumb 1,2,3 etc, much like the four existing ones.

Subject: Re: [Fixed] Posible "Bug" In Header Blocks (only O
Well the breadcrumb tpls are a new idea, but only included in some templates. The idea is to have a php script which parses all the link variables to the links template, depending on the page being viewed - so you only really need one template, and this displays all the link output.

Code: [Download] [Hide] [Select]

$current_page= $_SERVER["PHP_SELF"];

switch($current_page)
{
case 'forum':
$nav_link="<a href=".$forum_link." >". $lang['forum']."</a>";(seems better to me to put the ahref in the variable, as it would allow more than one link)
$bottom output=$blah blah;
break;
}

$template->assign_vars(array(
'NAV_LINK' => $nav_link,
'BOTTOM_OUTPUT' => $bottom output


then in template:
Code: [Download] [Hide] [Select]
<div class="links2">
<a href="{U_PORTAL}">{L_HOME}</a>{NAV_SEP}{NAV_LINK}
</div>
<div class="links1">
<div class="nav-links-left">
{CURRENT_TIME} |
</div>
{BOTTOM_OUTPUT}
</div>



Obviously the above is an example, but I do have something similar to this partially working (i.e. not on all pages) on my icps2007 template, but never finished doing it... as I was doing it a slightly harder way and putting the php in my navlinks template file. Probably the best way to implement this now is to use the global blocks feature, and create the nav links as a block file, so you can have php in one block file parsing the link variables to the block template - and if you don't want it on a certain page, you don't have to add it. And thing would be a "default link" which just gives the current page link, and no bottom right output - this would allow it to work on pages created through cms. The term "navlinks" - now this is where some confusion arises over past icy and phpBBXS - the left site navigation used to be called nav_quick_links, and the template file still is, yet it is referred to in CMS as a nav links block, whereas traditionally the nav links is the top dynamic link which changes on page (referred to as navlinks mainly because thats it's div class). Now some parts are being called "breadcrumbs", which is an attempt at making something easier to include, but most pages still have their own navlinks block, which is a real bugger if you want to give the navlinks block hover "effects" like on my templates.., and even add the same table header left, center, right image layout as main forum tables...

There is one down-side to this approach, it means that when you create a new theme, you also have to supply the navlinks block, and the user must add the global block to every page they want it... which could be a pain in the neck whenever they switch back to old-fashioned mg_themes....

The other alternative (my preferred) is to issue a "mod" for page_header to parse the case logic variables, along with a completely revamped mg_themes which includes the single template file, in that way there is no need to add the global block to every page. It just requires, though a rethink on the way the current themes work (though it has been happening on and off).

Profile PM  
Inactive User
Subject: Re: [Fixed] Posible "Bug" In Header Blocks (only O
moreteavicar wrote: [View Post]
There is one down-side to this approach, it means that when you create a new theme, you also have to supply the navlinks block, and the user must add the global block to every page they want it... which could be a pain in the neck whenever they switch back to old-fashioned mg_themes....


So that kills that idea? ;)

moreteavicar wrote: [View Post]

The other alternative (my preferred) is to issue a "mod" for page_header to parse the case logic variables, along with a completely revamped mg_themes which includes the single template file, in that way there is no need to add the global block to every page. It just requires, though a rethink on the way the current themes work (though it has been happening on and off).


It would just be another theme group. But I would be more inclined to convert the drop-down menu into an overlay and add it to the Toplinks Nav; or do it at the same time - because I find that to be one of the most useless theme functions I have come across :(

Dunno! You hack it, I'll theme it. It makes no difference to me. :)

Subject: Re: [Fixed] Posible "Bug" In Header Blocks (only O
Lopalong wrote: [View Post]
But I would be more inclined to convert the drop-down menu into an overlay and add it to the Toplinks Nav; or do it at the same time - because I find that to be one of the most useless theme functions I have come across :(

Dunno! You hack it, I'll theme it. It makes no difference to me. :)

Know what you mean - some things look neat, but don't have any functional benefit... or else a repetition of something already there, served differently - you might as well have one or the other, but not both, as it adds clutter.

I'll certainly consider hacking it, certainly as it hacks me off! At some point I'll post here as a mod/modified 1227 files... although no idea when I get time to fit it in, already spending too much time here rather than finishing writing my thesis... Also it may require removing something stuff from the main page.php files to avoid unnecessary repetition of some of the nav cat links generation... It shouldn't take too long to do though... ;)

Profile PM  
Inactive User
Subject: Re: [Fixed] Possible "Bug" In Header Blocks (only
What annoys me the most is that NONE of the available IP themes conform to fluid-with, one has to accept that ALL themes should be at 100%, and I can't accept that.

One should be able to change the first table entry in the header from 100% to possibly the minimum of 85% and all templates should follow suit. Well they don't! And the frustrating part is going through most templates to make them conform; some have fixed width's, some just poorly written and/or with far too much info in the table for it ever to be reduced - so they have to be re-written.

What IP desperately needs is ONE theme that conforms to fluid-width, and then go on from there - and not a lot of themes; new or old, that don't conform.

And that stupid drop-down menu that wants about 25% of the table only makes it more difficult to adjust what can only be called the mess that IP themes are already in.

The Vista theme I'm working on has taken ages to get it to where it is, and every time I open something new; it usually breaks the width of something else, unless I make the theme 100%. And then the whole concept of the theme is lost; and it's not something I'd rather do. :(

Frustrated, sure I am, and if you are making a whole "new" theme for IP, then please consider making every template fluid, and that it all conforms to the first width-entry in the header.

Then I will love it. :P

But you had better finish your thesis first. :mricy:

Subject: Re: [Fixed] Posible "Bug" In Header Blocks (only O
Sorry, I'm not quite sure what you mean by "fluid width" - do you mean so that you can set a fixed width for the whole layout?
Like what I've done here: http://www.oneworld.hostultra.com/easy/dump/demo/ ?

In overall_header.tpl you also have to change the td before the second table:

Code: [Download] [Hide] [Select]
<table id="forumtable" width="818" cellspacing="0" cellpadding="0"> <!-- Table 1 -->
<tr>
<td width="818" colspan="6" valign="top">
<div id="top_logo">
<table class="" width="100%" cellspacing="0" cellpadding="0" border="0"> <!-- Table 2 -->


You'll probably notice the above has slightly different place for calling the shadows from the original:
Code: [Download] [Hide] [Select]
<table width="100%" border="0" align="center" cellspacing="0" cellpadding="0">
<tr>
<td class="leftshadow" width="9" valign="top"><img src="{FULL_SITE_PATH}{SPACER}" alt="" width="9" height="1" /></td>
<td width="100%" valign="top">
<table id="forumtable" width="100%" cellspacing="0" cellpadding="0">
Which is due to the shadowed top corners. The conventional left shadow is called later on, just before the header links row (header links row and the rest of the page is then put in an additional table which is really 800 wide) - table two is "effectively" 800 wide, + the left 9 pixle shadow added into the left header image (so it contains the corner and shadow). Essentially, if you want to change the width of the page, you only need to adjust the first table and that td tag. All the other tables and tds will fit in there at the 100% (100% of the container td width). Not sure if this is what you wanted, but though I'll point it out ;)

Bloody hell, we've/I've totally derailed this thread - I guess these last posts should be moved to a theming thread!

Profile PM  
Subject: Re: [Fixed] Posible "Bug" In Header Blocks (only O
moreteavicar wrote: [View Post]
Sorry, I'm not quite sure what you mean by "fluid width" - do you mean so that you can set a fixed width for the whole layout?
Like what I've done here: http://www.oneworld.hostultra.com/easy/dump/demo/ ?

In overall_header.tpl you also have to change the td before the second table:

Code: [Download] [Hide] [Select]
<table id="forumtable" width="818" cellspacing="0" cellpadding="0"> <!-- Table 1 -->
<tr>
<td width="818" colspan="6" valign="top">
<div id="top_logo">
<table class="" width="100%" cellspacing="0" cellpadding="0" border="0"> <!-- Table 2 -->


You'll probably notice the above has slightly different place for calling the shadows from the original:
Code: [Download] [Hide] [Select]
<table width="100%" border="0" align="center" cellspacing="0" cellpadding="0">
<tr>
<td class="leftshadow" width="9" valign="top"><img src="{FULL_SITE_PATH}{SPACER}" alt="" width="9" height="1" /></td>
<td width="100%" valign="top">
<table id="forumtable" width="100%" cellspacing="0" cellpadding="0">
Which is due to the shadowed top corners. The conventional left shadow is called later on, just before the header links row. The header links row and the rest of the page is then put in an additional "inner" table which is set to 800 wide because of some problems in IE (or was it firefox) which didn't quite make that "inner table" match, but it could be left at 100% if you didn't do the fancy top corner shadows. Table two is "effectively" 800 wide - (the orange part is), + the left&right 9 pixel shadows added into the left/right header image (so it contains the corner and shadow). Essentially, if you want to change the width of the page, you only need to adjust the first table and that td tag. All the other tables and tds will fit in there correctly if they are kept at 100% (since it is 100% of the main container td width). Not sure if this is what you meant, but though I'll point it out ;)

Bloody hell, we've/I've totally derailed this thread - I guess these last posts should be moved to a theming thread!

Profile PM  
Inactive User
Subject: Re: [Fixed] Posible "Bug" In Header Blocks (only O
Fluid width expands proportional to the width of the screen. 818px is no different than 82% at 1024w and will retain that ratio for all resolutions.

In your demonstration, you would need to fix it with pixel-width as you have done, otherwise at higher resolutions the text strings would get longer and longer; and ruin the presentation.

That's a different issue from forum software which is basically a lot of little blocks and pages that adjust in relation to each other at different resolutions, and at the moment, there are a lot of blocks/tables in IP that don't.

:(

And you're right, this "Hijack" should be cut to another thread. :P

Edit: The pic shows the problem of combining fixed and fluid width. Changing the 191px to 19% fixed the problem. Sometimes fixed width combined with % works, most times it doesn't. :(


Untitled 2.png
Description:  
Download
Filename: Untitled 2.png
Filesize: 105.36 KB
Downloaded: 227 Time(s)

Subject: Re: [Fixed] Posible "Bug" In Header Blocks (only O
Yes, I think there are some places where you just wouldn't fix the table and tds, and especially internal ones, if anything, just the external container td & table.

Wow, is that your new theme? Like the transparent table cell pics... just got to get rid of the grey/silver cell pics inside :P

*Edit* clicked your theme link - nice work... ;)

*And note new topic ;)

Profile PM  
Subject: Re: Template dev. / universal "top-links"
Regarding GLOBAL HEADERS or BREADCRUMBS or any other way you would like to call them... :mri: I started to work on it some time ago, but after a full day of coding to achieve this I realized that the changes were too much... and I did have the time to make things properly, so I just moved some headers into a separate TPL file for MG_THEMES.

As you can see there are some files called breadcrumbs*.tpl which are used into some templates.

But a lot of work needs to be done.

If you are willing to help me in this, we may create a teamwork :wink: ... of course after moreteavicar graduation. :wink:


Page 1 of 1


  
You cannot post new topics
You cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events

   

This is a "Lo-Fi" version of our main content. To view the full version with more information, formatting and images, please click here.

Powered by Icy Phoenix based on phpBB
Generation Time: 0.9473s (PHP: 2% SQL: 98%)
SQL queries: 16 - Debug Off - GZIP Enabled