Opisany sposób umożliwia osiągnięcie takiej samej funkcjonalności drukowania jaką mają artykuły. Można go zastosować w dowolnym komponencie odpowiednio modyfikując dane.
Przykładowo opiszę to na przykładzie Sobi2.
Zaczynamy od sprawdzenia jak wygląda adres strony, na której chcemy umieścić ikonkę "Drukuj", nazwę go adresem bazowym:
index.php?option=com_sobi2&sobi2Task=sobi2Details& catid=0&sobi2Id=8&Itemid=56
Poniższy kod PHP wstawiamy do pliku sobi2.details.tmpl.php zaraz nad
<table class="sobi2Details" <?php echo $style; ?> >
Kod PHP:
Kod PHP:
<?php
$Itemid = JRequest::getVar('Itemid', '', '', 'int');
$sobi2Id = JRequest::getVar('sobi2Id', '', '', 'int');
$print = JRequest::getVar('print', '0', '', 'int');
?>
<?php if ($print == 1){ ?>
<div class="druk"><a href="#" onclick="window.print();return false;"><img src="images/M_images/printButton.png" alt="Drukuj" /></a></div>
<?php }
else { ?>
<div class="druk1"><a href="index.php?view=article&tmpl=component&print=1&layout=default&page=&option=com_sobi2&sobi2Task=sobi2Details&sobi2Id=<?php echo $sobi2Id;?>&catid=0&Itemid=<?php echo $Itemid;?>" title="Drukuj" onclick="window.open(this.href,'win2','status=no,toolbar=no,scrollbars=yes,titlebar=no,menubar=no,resizable=yes,width=640,height=480,directories=no,location=no'); return false;" rel="nofollow"><img src="images/M_images/printButton.png" alt="Drukuj" /></a>
</div>
<?php }?>
Pobrane zmienne $print i $Itemid są uniwersalne dla każdego komponentu, $sobi2Id jest specyficzny dla Sobi2. W innych komponentach zazwyczaj do określenia id wyświetlanego elementu używana jest zmienna o nazwie id.
Przyglądając się adresowi, za pomocą którego otwierana jest strona do drukowania można zauważyć, że zawiera ona adres bazowy:
index.php?view=article&tmpl=component&prin t=1&layout=default&page=&
option=com_sobi2&sobi2Task=sobi2Details&so bi2Id=<?php echo $sobi2Id;?>&catid=0&Itemid=<?php echo $Itemid;?>
Używając tej metody dla innego komponentu adres bazowy musi być odpowiedni dla niego.
Pozostają do zdefiniowania (zmienienia) klasy css użyte dla prezentacji ikonek drukowania. Powodzenia.