For some reason, selecting on what pages to show a block from admin doesn't work all the times.
Example, i wanted the breadcrumb module to show only on the gallery(rsgallery2), but selecting the gallery from "Menu Assignment" in mod_breadcrumbs settings worked only for the first page of the gallery, and not for the rest of the pages in gallery.
This is what i have done in the index file of the theme:
<?php if (JRequest::getVar('option')=='com_rsgallery2'){ ?> <div id="breadcrumb"> <jdoc:include type="modules" name="breadcrumb" /> </div> <?php } ?>
The module will be printed only on rsgallery2 pages.
Today i received a request to insert a new module position inside the article template of a joomla website. The client wanted to print an adsense module in that position. You can see the result in the image below.

To do this, you need to define a new position first, so go to /templates/your_template. Open the templateDetails.xml file and search for <positions> Add a new position, something like <position>adsense_in_content</position>.
Save the file, and upload it back to it's place.
I needed to hide a block for a certain node type on a drupal driven website so i found this snippet on drupal.org. I will post it here for my future needs.
Paste this in "Page specific visibility settings" tab on the block you want to hide. Select "Show if the following PHP code returns TRUE (PHP-mode, experts only)." first.
<?php
$match = TRUE;
$types = array('story' => 1);
if (arg(0) == 'node' && is_numeric(arg(1))) {
$nid = arg(1);
$node = node_load(array('nid' => $nid));
$type = $node->type;
if (isset($types[$type])) {
$match = FALSE;
}
}
return $match;
?>