Отдельная ссылка и название из функции

У меня есть еще один вопрос, на который любезно ответил @Lodder:

Заголовок типа поля формы эха в Модуль

В появившейся ссылке я хочу отделить ссылку и заголовок от категории, что означает, что я могу добавить ссылку на родительскую кнопку и заголовок внутри этой кнопки - как это можно сделать, используя следующий html:

<div class="row">
    <div class="col-md-<?php echo $buttonWidth;?>">
        <div class="row">
        <a href="<?php echo $categoryLinkOne; ?>">
            <button class="btn btn-default col-md-12" type="button">
                <div class="col-md-4">
                    <img class="img-responsive center-block" src="<?php echo $moduleLoc,$iconOne; ?>" />
                </div>
                <div class="col-md-8">
                    <?php echo $categoryTitleOne; ?></h3>
                </div>
            </button>
        </a>
        </div>

    <?php if($showIntroTextOne==1):?>
        <div class="row">
            <div class="col-md-12">
                <p><?php echo $introTextOne; ?></p>
            </div>
        </div>
    <?php endif; ?>
    </div>

<?php if($params->get('useTwo')==1){?>  
    <div class="col-md-<?php echo $buttonWidth;?>">
        <div class="row">
        <a href="<?php echo $categoryLinkTwo; ?>">
            <button class="btn btn-default col-md-12" type="button">
                <div class="col-md-4">
                    <img class="img-responsive center-block" src="<?php echo $moduleLoc,$iconTwo; ?>" />
                </div>
                <div class="col-md-8">
                    <?php echo $categoryTitleTwo; ?></h3>
                </div>
            </button>
        </a>
        </div>

    <?php if($showIntroTextTwo==1):?>
        <div class="row">
            <div class="col-md-12">
                <p><?php echo $introTextTwo; ?></p>
            </div>
        </div>
    <?php endif; ?>
    </div>
<?php } ?>
</div>
2 голоса | спросил RustyJoomla 30 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 30 Sep 2015 10:41:56 +0300 2015, 10:41:56

1 ответ


1

Я буду использовать функцию, которую я написал для этого.

Итак, мы добавим еще один аргумент функции, чтобы определить тип кнопки /ссылки, которую мы хотим отобразить, и установить значение по умолчанию normal

function displayCategoryLink($id, $type = 'normal')
{
    require_once JPATH_SITE . '/components/com_content/helpers/route.php';

    $db = JFactory::getDbo();

    $query = $db->getQuery(true);
    $query->select($db->quoteName('title'))
          ->from($db->quoteName('#__categories'))
          ->where($db->quoteName('id') . ' = '. (int)$id);
    $db->setQuery($query);

    try
    {
        $result = $db->loadResult();
    }
    catch (Exception $e)
    {
        $result = '';
    }

    $link = JRoute::_('index.php?option=com_content&view=category&layout=blog&id=' . $id); 

    if ($type == 'extended')
    {
        $html = '
        <a href="' . $link . '">
            <button class="btn btn-default col-md-12" type="button">
                <div class="col-md-4">
                    <img class="img-responsive center-block" src="' . $moduleLoc,$iconOne . '" />
                </div>
                <div class="col-md-8">
                    <h3>' .  $result . '</h3>
                </div>
            </button>
        </a>';
    }
    else
    {
        $html = '<a href="' . $link . '">' . $result . '</a>';
    }

    return $html;
}


displayCategoryLink($params->get('catOne', 0));
displayCategoryLink($params->get('catTwo', 0));
displayCategoryLink($params->get('catThree', 0), 'extended');
displayCategoryLink($params->get('catFour', 0), 'extended');

Обратите внимание, что вы также используете $moduleLoc,$iconOne для источника изображения, поэтому вам нужно либо передать эти значения через функции в качестве аргумента или определить их внутри функции.

Обновление:

Здесь, если ваш обновленный код, который должен находиться в default.php

<div class="row">
    <div class="col-md-<?php echo $buttonWidth;?>">
        <div class="row">
            <?php displayCategoryLink($params->get('catOne', 0), 'extended'); ?>
        </div>

        <?php if($showIntroTextOne == 1):?>
            <div class="row">
                <div class="col-md-12">
                    <p><?php echo $introTextOne; ?></p>
                </div>
            </div>
        <?php endif; ?>
    </div>

    <?php if($params->get('useTwo') == 1) : ?>  
        <div class="col-md-<?php echo $buttonWidth;?>">
            <div class="row">
                <?php displayCategoryLink($params->get('catTwo', 0), 'extended'); ?>
            </div>

            <?php if($showIntroTextTwo == 1):?>
                <div class="row">
                    <div class="col-md-12">
                        <p><?php echo $introTextTwo; ?></p>
                    </div>
                </div>
            <?php endif; ?>
        </div>
    <?php endif; ?>
</div>

Надеюсь, что это поможет

ответил Lodder 30 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 30 Sep 2015 11:49:05 +0300 2015, 11:49:05

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132