Print-Icon nach Joomla Upgrade auf 3.x verschwunden

Für einen Webdesign Kunden habe ich ein Joomla Upgrade von Joomla 2.5.28 auf Joomla 3.4 durchgeführt und dabei das bestehende Template weiterverwendet. Nach einigen Anpassungen funktionierte das Template auch nahezu einwandfrei. Nur das Print-Icon sowie das Email-Icon wurden nicht mehr in gewohnter Weise in den Artikeln angezeigt. Stattdessen erschienen nur noch Links zum Drucken und Mailen in Textform.Nach Joomla Upgrade auf 3.4 sind Print- und Email-Icon verschwunden

Meine Recherchen in einschlägigen Webdesign-Foren und im Rest des Internets hatten leider wenig Erfolg für das von mir verwendete Template.

Auf die richtige Spur brachte mich dann aber doch noch der Beitrag von Axel Tüting Override: Drucker- und eMail-Icon.

Da ich in meinem Template kein Bootstrap verwende und dies auch nicht extra einbinden wollte, habe ich den Lösungsansatz etwas abgewandelt:

Zuerst habe auch ich fürs Template-Override die Datei

root/components/com_content/views/article/tmpl/default.php

in mein Temlate in das folgende Verzeichnis kopiert

root/templates/MEIN_TEMPLATE/html/com_content/article/

 

Anschließend habe ich diese Datei geöffnet und nach folgendem Code gesucht (bei mir ab Zeile 64)

<?php if (!$this->print) : ?>
     <?php if ($canEdit || $params->get('show_print_icon') || $params->get('show_email_icon')) : ?>
         <?php echo JLayoutHelper::render('joomla.content.icons', array('params' => $params, 'item' => $this->item, 'print' => false)); ?>
     <?php endif; ?>
<?php else : ?>

Diesen habe ich mit folgendem Code ersetzt:

<?php if (!$this->print) : ?>
    <?php if ($canEdit || $params->get('show_print_icon') || $params->get('show_email_icon')) : ?>
        <div id="printmailicon">
            <?php if ($params->get('show_print_icon')) : ?>
                <a onclick="window.print();return false;" href="#"><span aria-hidden="true"><img alt="Drucken" src="/media/system/images/printButton.png"></span></a>
            <?php endif; ?>
            <?php if ($params->get('show_email_icon')) : ?>
                <a onclick="window.open(this.href,'win2','width=400,height=350,menubar=yes,resizable=yes'); return false;" href="/j336/component/mailto/?tmpl=component&template=grundtemplate&link=6fac8bf40734413e86b8c73005f6793cff33e0fc"><span aria-hidden="true"><img alt="E-Mail" src="/media/system/images/emailButton.png"></span></a>
            <?php endif; ?>
            </div>  
    <?php endif; ?>
<?php else : ?>

Die img Tags für den Pfad zu den Icons (Drucken und Email) habe ich mir vorher mit dem Firebug in der noch existierenden Joomla 2.5 Webseite abgeschaut.

<img alt="Drucken" src="/media/system/images/printButton.png">
<img alt="E-Mail" src="/media/system/images/emailButton.png">

Nun fehlte nur noch die Positionierung der Icons auf der rechten Seite mit css:

#printmailicon {
  text-align: right;
}

Anschließend wurden die Icons wieder in gewohnter Weise angezeigt.

Nach einem Template-Override sind Print- und Email-Icon wieder da