Helpful Information
 
 
Category: vBulletin 4 Articles
[vb4] Adding a stylevar

I had no idea that most people had no clue how to do this or that it was even possible so here goes.

Step 1.
Put your board into debug mode by adding this


$config['Misc']['debug'] = true;


to config.php

Step 2.
Goto the style manager, you will now see an additional style 'MASTER STYLE'

Step 3.
Enter the stylevar editor for MASTER STYLE

Step 4.
In addition to the regular stylevar editor, you will have two buttons to add and delete stylevars. Click add stylevar

Step 5.
Fill in the form to add the style var. If you select a product you are working from from the dropdown, it'll be included in the product xml file when you export. Its always a good idea to prefix your variables so they don't conflict with other peoples. The product id makes a good prefix.

Step 6.
Setting the value for it in the master style, sets its default value.

Step 7.
You can use this stylevar in your templates with the following code:


{vb:stylevar <stylevar name>}


You can also customise it as normal in any of your custom styles.

Step 8.
Remove or comment out the line you added in step 1 to take your board out of debug mode.

Forgive my brain fart but how do I make it work after it's set up? How does vBulletin know what to do with it?

There are various types of style var; off the top of my head there are thigns like colour, border and background. Depending on the type you pick depenends on how vb handles it.

You use it just like you would any other style var.

This is really excellent and I will use this after the final updater. I bet vb will be adding many more stylevers because some are turned off and some are still needed. Excellent job :)

I think what cbiweb is referring to is how does the stylever know what it is assigned to change, like if you wanted a border around the body, how would the created stylever know that is what it is assigned to do? Im kinda wonderin this myself but I have not tried this so it may be self explaniory when you install it.

Again, excellent job

You basically need to put the style var into your own template.

As an example; my [pbpg] chess mod defines two style vars, one for the background of a black square, one for the background of a white square.

I then added these two style vars to a style sheet within one of the templates like so:


<style>
.whitesquare {
background: {vb:stylevar whitebackground}
}
</style>

ah-ha OK very cool and thank you. I understand fully now :)

Group
StyleVar ID
Friendly Name
comments
whats fill this value

Group: this is used for where the style var is displayed in the style var editor; the bold titles are the groups. If you enter an unused title, a new group should be automatically created.

Stylevarid: this is the name for your style var and the name you use to refer to it in template. Must be unique

Friendly name: no effect at the moment, but it will at some point be used as the name the style var is called in the stylevar editor.

Description: not exactly sure where this is displayed but it should describe the style var

Other fields should be obvious.

thanks

Group
StyleVar ID
Friendly Name
comments
whats fill this value

See the attached screenshot for a visual explanation. :)

is there a way to add a group?

If we export a skin, does the additional stylevars go with it?

Yes, if you enter a name in the Group field that doesn't already exist, it will create a new group with that name automatically.

As for your second question, I would think the additional stylevars will export just fine, since they would be part of the system once you add them.

They deffinatly export with products; the values will export with styles. I'm not sure what will happen if you import a style that has stylevars in it that the board you are importing to doesn't have.

My guess is that it would create them, if not you may have to export and import them using a product files in addition to the style file.

is there away to append a style to another style using a plugin?

something like:

$vbulletin->templatecache['postbit_attachment'] .= $vbulletin->templatecache['my_template'];

I turned my vbulletin forums off and went into debug mode.

I opened up another browser and visited my site.

The debug menu was still at the bottom. How do I prevent that from happening?

turn debug mode off again.

there is any way to change stylevar value from the plugin system?
something like
$stylevar['MyVar'] = 2;

Many Thanks!!

v.good
Thanks

I have a stylevar which I tried to add through this method which for some reason failed and doesn't show up on the list of stylevars. Trying to add it again however tells me that a stylevar with that name already exists. How would I remove this phantom stylevar so I could put it in properly?










privacy (GDPR)