In the Drupal theme, template files (*.tpl.php) can be overridden to change the views of pages, nodes, and blocks. you can also do it by writing a function to override in the template.php file.
When you want to change the value of the variable in the *.tpl.php files, there are two ways, overriding *.tpl.php and using preprocess_* function in the template.php file. For example, when you want to add something to the $links variable for display nodes. ($links is a variable for the item list showing at the bottom of nodes)
When displaying the QR code of the showing page, I want to change the content of a block (a variable $block->content), I overrode it using the block-block-3.tpl.php file.
You can do the same thing by writing a preprocess_block function in template.php.
Writing the following function is executed before displaying a block to change content. This function replaces the content of a block with a generated QR code.
function nyanchew_preprocess_block(&$vars, $hook) { if ( ($vars['block']->module == "block") && ($vars['block']->delta == 3) ) { $path = trim($_GET['q'], '/'); $path = drupal_get_path_alias($path); $path = 'http://nyanchew.com/' . $path; $arguments[] = array('name' => 'thisnode', 'data' => 'link', 'type' => 'qr', 'size' => 'small'); $vars['block']->content = theme_mobilecode($path, $arguments). ' '. $path; } }