Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 2713 Просмотров
*

Nikoz

  • Захожу иногда
  • 115
  • 4 / 0
Логотип производителя
« : 04.03.2012, 14:59:36 »
Вот сделал для себя код, при котором выводится картинка из папки  /images/brands/Бренд.jpg

Код
<?php echo'<img src="./images/brands/'.$this->product->mf_name.'.jpg">' ?>

И реализовал у себя:
Код

<?php  /* производитель - начало */
if(VmConfig::get('show_manufacturers', 1) && !empty($this->product->virtuemart_manufacturer_id)) { ?>
<div class="gkblock-4">
<?php
$link = JRoute::_('index.php?option=com_virtuemart&view=manufacturer&virtuemart_manufacturer_id='.$this->product->virtuemart_manufacturer_id.'&tmpl=component');
$text = '<img src="./images/brands/'.$this->product->mf_name.'.jpg">';
                   
  if (strtolower(JRequest::getWord('output')) == "pdf"){
echo JHTML::_('link', $link, $text);
} else { ?>

<a class="modal" rel="{handler: 'iframe', size: {x: 700, y: 550}}" href="<?php echo $link ?>"><?php echo $text ?></a>
</div>



<?php } /* производитель */ ?>

Если есть производитель - выводит блок, если нет - нет.


Может кому поможет.. так и не понял как взять картинку производителя из админки
*

olejenya

  • Захожу иногда
  • 218
  • 3 / 0
Re: Логотип производителя
« Ответ #1 : 24.04.2012, 23:59:18 »
Интересует такой вопрос.Но не подходит,так как називаю я картинки стандартно,например бренд1,бренд2.А тайтлы у меня например адидас и найк.От и получается неувязочка((Как бы его вывести по id мануфактуры?Тогда бы запары не было с названиями картинок и мануфактур.Господа продвинуты програмеры помогите реализовать человеческий вывод логотипа)))А то сегодня картинка .png , завтра .jpg а послезавтра  вперемешку(((
*

DNK

  • Осваиваюсь на форуме
  • 23
  • 1 / 0
Re: Логотип производителя
« Ответ #2 : 12.06.2012, 10:51:24 »
 ! У меня не получается прибавить имя производителя к картинке в КАТЕГОРИИ, т.е. на выходе <img src="/САЙТ/images/brands/.jpg"> почему-то mf_name. не плюсуется к .jpg. В карточке товара всё нормально! VM2.0.6
*

Eholov

  • Захожу иногда
  • 170
  • 14 / 0
Re: Логотип производителя
« Ответ #3 : 17.01.2014, 15:29:21 »
Так у меня не работает.
Работает так
Код
	<?php echo '<img src="./images/stories/virtuemart/manufacturer/'.$product->mf_name.'.png">' ?>
Название производителя и картинки должно быть одинаковое.
*

artserge

  • Захожу иногда
  • 118
  • 11 / 0
Re: Логотип производителя
« Ответ #4 : 18.02.2014, 03:34:53 »
Чтоб вывести картинку (логотип) производителя настроенный в админке,  например в карточке товара - я сделал следующее :

В administrator\components\com_virtuemart\models\manufacturer.php  добавил метод

Код
	public function getManufacturerSingle( $manufacturer_id ) {

$mainframe = JFactory::getApplication();
$where = array();
$where[] .= ' `m`.`virtuemart_manufacturer_id` = '. $manufacturer_id;

$where[] .= ' `m`.`published` = 1';

$whereString = '';
if (count($where) > 0) $whereString = ' WHERE '.implode(' AND ', $where) ;
$select = ' `m`.*,`#__virtuemart_manufacturers_'.VMLANG.'`.*, mc.`mf_category_name` ';
$joinedTables = 'FROM `#__virtuemart_manufacturers_'.VMLANG.'` JOIN `#__virtuemart_manufacturers` as m USING (`virtuemart_manufacturer_id`) ';
$joinedTables .= ' LEFT JOIN `#__virtuemart_manufacturercategories_'.VMLANG.'` AS mc on  mc.`virtuemart_manufacturercategories_id`= `m`.`virtuemart_manufacturercategories_id` ';
$groupBy=' ';

$select .= ',mmex.virtuemart_media_id ';
$joinedTables .= 'LEFT JOIN `#__virtuemart_manufacturer_medias` as mmex ON `m`.`virtuemart_manufacturer_id`= mmex.`virtuemart_manufacturer_id` ';
$groupBy=' GROUP BY `m`.`virtuemart_manufacturer_id` ';

$whereString = ' ';
if (count($where) > 0) $whereString = ' WHERE '.implode(' AND ', $where).' ' ;

$ordering = $this->_getOrdering();
return $this->_data = $this->exeSortSearchListQuery(0,$select,$joinedTables,$whereString,$groupBy,$ordering );
}

После этого в  шаблоне вывода ссылки на производителя для карточки товара  templates\shoker\html\com_virtuemart\productdetails\default_manufacturer.php вписал:

после
Код
$text = $this->product->mf_name;

Код
$mmodel = VmModel::getModel('Manufacturer');
$manufacturer = $mmodel->getManufacturerSingle($this->product->virtuemart_manufacturer_id);
$mmodel->addImages($manufacturer);



 и заменил  
Код
if (strtolower(JRequest::getWord('output')) == "pdf") {
echo JHTML::_('link', $link, $text);
    } else {
?>
        <span class="bold"><?php echo JText::_('COM_VIRTUEMART_PRODUCT_DETAILS_MANUFACTURER_LBL')?></span><a class="modal" rel="{handler: 'iframe', size: {x: 700, y: 550}}" href="<?php echo $link ?>"><?php echo $text ?></a>
    <?PHP } ?>

на
Код
	if($manufacturer[0]->file_url_thumb != '') {
echo '<a href="'.$link .'"><img src="/'.$manufacturer[0]->file_url_thumb.'" alt="'.$text.'" title="'.$text.'"/></a>';
} else {
/* Avoid JavaScript on PDF Output */
if (strtolower(JRequest::getWord('output')) == "pdf") {
echo JHTML::_('link', $link, $text);
} else {
?>
<span class="bold"><?php echo JText::_('COM_VIRTUEMART_PRODUCT_DETAILS_MANUFACTURER_LBL')?></span><a class="modal" rel="{handler: 'iframe', size: {x: 700, y: 550}}" href="<?php echo $link ?>"><?php echo $text ?></a>
<?PHP }
} ?>


Если есть назначенная картинка - выведет картинку, если нет - выведет строковую ссылку. Да, я у себя отрубаю ссылки эти на производителей, чтоб они вес страницы не "воровали" - так что правильнее выводить просто текстом производителя или просто картинку, без ссылки, ага )
« Последнее редактирование: 18.02.2014, 04:09:17 от artserge »
*

iliya_art

  • Захожу иногда
  • 132
  • 7 / 0
Re: Логотип производителя
« Ответ #5 : 10.04.2014, 18:39:37 »
artserge, спасибо работает, но при таком варианте при клике по логотипу, открывается в этом же окне, как сделать чтобы открывалось в модальном окне?
*

Иоланта

  • Захожу иногда
  • 166
  • 3 / 0
Re: Логотип производителя
« Ответ #6 : 17.05.2015, 17:25:54 »
а как это сделать в VM3?
*

Eholov

  • Захожу иногда
  • 170
  • 14 / 0
Re: Логотип производителя VirtueMart 3
« Ответ #7 : 15.03.2016, 16:28:57 »
Код
<div class="manufacturer">
<?php
$i = 1;

$mans = array();
// Gebe die Hersteller aus
foreach($this->product->manufacturers as $manufacturers_details) {
//Link to products
$link = JRoute::_('index.php?option=com_virtuemart&view=manufacturer&virtuemart_manufacturer_id=' . $manufacturers_details->virtuemart_manufacturer_id. '&tmpl=component', FALSE);
$name = $manufacturers_details->mf_name;
        $image = $manufacturers_details->images[0];
// Avoid JavaScript on PDF Output
if (!$this->writeJs) {
$mans[] = JHtml::_('link', $link, $name);
} else {
$mans[] = '<a class="manuModal" rel="{handler: \'iframe\', size: {x: 700, y: 850}}" href="'.$link .'">'.$image->displayMediaThumb("",false).'</a>';
}
}
echo implode(', ',$mans);
?>
</div>

для карточки товара VM3
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не разрешать добавлять товары пока, не оформишь заказ одного производителя?

Автор Dolphin4ik_1

Ответов: 2
Просмотров: 625
Последний ответ 04.01.2019, 15:53:11
от voland
Вывод названия производителя в списке товаров категории

Автор biaggi32

Ответов: 17
Просмотров: 4773
Последний ответ 26.10.2017, 15:34:12
от gertruda
Как на страницу производителя добавить категории с его товарами VirtueMart 2?

Автор vladsklyar

Ответов: 0
Просмотров: 769
Последний ответ 05.10.2016, 20:06:39
от vladsklyar
Meta decsriction и Meta keyword на странице производителя

Автор Siberex

Ответов: 7
Просмотров: 1163
Последний ответ 14.07.2014, 11:02:43
от zomby6888
Категории товаров одного производителя

Автор jouser

Ответов: 2
Просмотров: 891
Последний ответ 25.03.2014, 23:01:52
от disflash