The Ultimate Weblog System

Welcome to Geeklog
Tuesday, February 09 2010 @ 06:34 PM EST


 Forum Index > Extensions > Cool Hacks New Topic Post Reply
 Give Blocks On One Side Same Look
 |  Printable Version
Tony
 April 29 2002 09:28 AM (Read 12693 times)  
Forum Admin
Admin

Status: offline

Registered: 12/17/01
Posts: 405

OK, one of our theme masters wanted a way to dynamically make it so that when you change a block from one side to another, it will change it's template to conform to the side it is one. So let's say you have two sets of block templates:



Set 1: blockheader-left.thtml and blockfooter-left.thtml

Set 2: blockheader-right.thtml and blockfooter-right.thtml



Now typically you set a custom template for a block by going:

$_BLOCK_TEMPLATE['<block_name>'] = '<header_template>,<footer_template>';



If you want to do this dynamically for both sides you would add this little bit of code to your functions.php for the theme you are working in:




$result = DB_query("SELECT onleft,name FROM {$_TABLES['blocks']} WHERE is_enabled = 1"Wink;




$nrows = DB_numRows($result);




for ($i = 1; $i <= $nrows; $i++) {




    $A = DB_fetchArray($result);




        if ($A['onleft'] == 1) {




            $_BLOCK_TEMPLATE[$A['name']] = 'blockheader-left.thtml,blockfooter-left.thtml';




        } else {




            $_BLOCK_TEMPLATE[$A['name']] = 'blockheader-right.thtml,blockfooter-right.thtml';




    }




}





Enjoy!





The reason people blame things on previous generations is that there's only one other choice.
 
Profile Email Website PM
Quote
Anonymous: Anonymous
 April 30 2002 23:12 PM  


Great new feature, but spot the missing word from this line:-

SELECT onleft,name FROM missing-word WHERE is_enabled = 1");

Or perhaps I have missed something ????


 
Quote
knuckles
 May 01 2002 18:41 PM  
Forum Chatty
Chatty

Status: offline

Registered: 12/17/01
Posts: 36

Hi, I deleted Tony's reply because his answer to your question was
commented out by the system - again. The problem was that the variable
name in the original post and in Tony's reply was *not* allowable code
and got parsed out - near as I can tell anyway.

The code in Tony's original post has been fixed by using the ascii
equivalents to the special characters. Just copy paste the code above and
everything should work fine.

Sorry for the confusion.

Sincerely,
Simon Lord


 
Profile Email PM
Quote
Anonymous: Anonymous
 May 01 2002 20:44 PM  


Looks like the filter is a little too sensitive :-)
Thanks for the prompt reply.
Cheers


 
Quote
krove
 May 13 2002 22:47 PM  
Forum Junior
Junior

Status: offline

Registered: 05/06/02
Posts: 30

It is possible to use this to code the center block, giving it a different look (say for featured stories, warnings, or logout messages)?

I think it would be easier on the user to differentiate normal stories from features, errors and messages in the center blocks with differing graphics.

Just a thought.


 
Profile Email PM
Quote
knuckles
 May 15 2002 21:30 PM  
Forum Chatty
Chatty

Status: offline

Registered: 12/17/01
Posts: 36

Version 1.3.5 of Geeklog supports giving the Featured article a different
theme from the rest of the articles.


As for the rest, if you know the block name you can specify a custom
theme as you wish. Here's a sample courtesy of Tony Bibbs as given to
me (alter the code to suit your needs):


$_BLOCK_TEMPLATE['whosonline_block'] = 'blockheader-
right.thtml,blockfooter-right.thtml';


 
Profile Email PM
Quote
Anonymous: superdood13
 February 10 2004 19:03 PM  


where do you put the code for the new block templates? in the functions.php file?


 
Quote
Bananiel
 February 22 2004 15:31 PM  
Forum Newbie
Newbie

Status: offline

Registered: 02/16/04
Posts: 9

thanx for this hack i like it a lot ...
you can see the result on my website.


Greetz Daniel


http://www.bananiel.nl/
 
Profile Email Website PM
Quote
adydas
 April 20 2004 05:41 AM  
Forum Junior
Junior

Status: offline

Registered: 02/26/04
Posts: 33

$_BLOCK_TEMPLATE['whosonline_block'] = 'blockheader- right.thtml,blockfooter-right.thtml';


Where do you put this code. I have a custom block I want to make a new template for.


 
Profile Email Website PM
Quote
Blaine
 April 20 2004 09:01 AM  
Forum Admin
Admin

Status: offline

Registered: 07/16/02
Posts: 1232

In the theme directory you will see a functions.php file.


Geeklog components by PortalParts -- www.portalparts.com
 
Profile Email Website PM
Quote
Anonymous: anony
 March 31 2005 00:36 AM  


Are these instructions still valid? I tried with the recent GL and didn't have much luck.
I was wanting the right blocks have unique colors in the text and backgrounds (different from the left block text & background colors)

Using GeekLog v1.3.11

Thanks in advance!


 
Quote
Dirk
 March 31 2005 01:21 AM  
Forum Admin
Admin

Status: offline

Registered: 01/12/02
Posts: 12492

Quote by anony: Are these instructions still valid?

Yes. Many themes use it - check the functions.php file of a few themes to get some inspiration.

bye, Dirk


 
Profile Email Website PM
Quote
Content generated in: 0.89 seconds
New Topic Post Reply



 All times are EST. The time is now 06:34 PM.
Normal Topic Normal Topic
Locked Topic Locked Topic
Sticky Topic Sticky Topic
New Post New Post
Sticky Topic W/ New Post Sticky Topic W/ New Post
Locked Topic W/ New Post Locked Topic W/ New Post
View Anonymous Posts 
Able to post 
Filtered HTML Allowed 
Censored Content