Depending on your needs, I can think of various possible ways:
- Using template_preproces_block () : this hook essentially “intercepts” variables on its way to the block and gives you a chance to intervene those. This is a pretty effective way to do this.
- Creating your own template file for the block : this allows you a few more tricks, but from the point of view of speed it is not the best (topics through .tpl.php files are about 5 times slower than using functions, I read)
- Creating your own new and brilliant block by implementing hook_block () . As suggested by Henrik, you can easily get by running the code from the source module as a starter. This is a good way to do this if your changes should affect all possible topics used on the site, and not so much if it affects only one topic (although you can implement some logic based on the weather, this topic is used or not, but it seems to me very inelegant).
- , , . : ( ), hook_form_FORM_ID_alter() hook_form_alter().
- jQuery: , ( ) . , ( ) jQuery.
, "" . , , , ... , . , :