Joomla! Template Override:

Druck, Edit & Email Buttons im Frontend


In vielen Fällen wird bei dem Dropdown im Frontend nur eine Option benötigt.

Im Joomla Core wird dann trotzdem ein Dropdown ausgegeben obwohl es nicht nötig ist. Wichtig, diese Regel gilt dann immer. Also wenn nur der ein Button (Drucken, Mail oder Edit) erlaubt ist wird auch nur der eine Button angezeigt! Das gilt auf jeder Seite und nicht nur auf eine einzelne Seite.

Wenn es mehr als einen Button gibt werden beide oder alle drei im normalen Dropdown angezeigt. Dafür einfach die Datei: html / layouts / joomla / content / icons.php mit folgenden Inhalt anlegen.

Benötigte Override-Dateien


  • <?php
    /**
     * @package     Joomla.Site
     * @subpackage  Layout
     *
     * @copyright   Copyright (C) 2005 - 2017 Open Source Matters, Inc. All rights reserved.
     * @license     GNU General Public License version 2 or later; see LICENSE.txt
     */
    defined('JPATH_BASE') or die;
    JHtml::_('bootstrap.framework');
    $canEdit   = $displayData['params']->get('access-edit');
    $showEmail = $displayData['params']->get('show_email_icon');
    $showPrint = $displayData['params']->get('show_print_icon');
    ?>
    
    <div class="icons">
    	<?php if (empty($displayData['print'])) : ?>
    		<?php if ($showPrint && (!$showEmail && !$canEdit)) : ?>
    			<?php // Wenn auf dieser Seite nur der Print Button angezeigt werden soll ?>
    			<li class="btn pull-right print-icon"> <?php echo JHtml::_('icon.print_popup', $displayData['item'], $displayData['params']); ?> </li>
    		<?php elseif ($showEmail && (!$showPrint && !$canEdit)) : ?>
    			<?php // Wenn auf dieser Seite nur der Email Button angezeigt werden soll ?>
    			<li class="btn pull-right email-icon"> <?php echo JHtml::_('icon.email', $displayData['item'], $displayData['params']); ?> </li>
    		<?php elseif ($canEdit && (!$showEmail && !$showPrint)) : ?>
    			<?php // Wenn auf dieser Seite nur der Edit Button angezeigt werden soll ?>
    			<li class="btn pull-right edit-icon"> <?php echo JHtml::_('icon.edit', $displayData['item'], $displayData['params']); ?> </li>
    		<?php else : ?>
    		<?php // Wenn mehr als ein Buutton angezeigt werden soll. ?>
    			<?php if ($canEdit || $showPrint || $showEmail) : ?>
    				<div class="btn-group pull-right">
    					<a class="btn dropdown-toggle" data-toggle="dropdown" href="#"> <span class="icon-cog"></span><span class="caret"></span> </a>
    					<?php // Note the actions class is deprecated. Use dropdown-menu instead. ?>
    					<ul class="dropdown-menu">
    						<?php if ($showPrint) : ?>
    							<li class="print-icon"> <?php echo JHtml::_('icon.print_popup', $displayData['item'], $displayData['params']); ?> </li>
    						<?php endif; ?>
    						<?php if ($showEmail) : ?>
    							<li class="email-icon"> <?php echo JHtml::_('icon.email', $displayData['item'], $displayData['params']); ?> </li>
    						<?php endif; ?>
    						<?php if ($canEdit) : ?>
    							<li class="edit-icon"> <?php echo JHtml::_('icon.edit', $displayData['item'], $displayData['params']); ?> </li>
    						<?php endif; ?>
    					</ul>
    				</div>
    			<?php endif; ?>
    		<?php endif; ?>
    	<?php else : ?>
    		<div class="pull-right">
    			<?php echo JHtml::_('icon.print_screen', $displayData['item'], $displayData['params']); ?>
    		</div>
    	<?php endif; ?>
    </div>


Tobias Zulauf




Fehler melden

Bitte beachte unsere Datenschutzerklärung

Alle mit * markierten Felder werden benötigt um eine E-Mail zu senden.