Вывод голого url в модуле виртуемарт

5 года 9 мес. назад - 5 года 9 мес. назад #8634 от Андрей
Всем доброе утро! Модифицирую стандартный модуль вывода товаров виртуемарт. Необходимо получить голый url на изображения. $imges=>product.... Выводит уже в обернутом в теги img виде.
Для чего мне это надо? Хочу чтобы изображение было в виде фонового. Т.к. По дизайну изобоажение делится на 2 части по диагонали и одна половина закрашена другим цветом....в общем вмя нужная инфа ртображается в этом треугольнике сверху изображения товара. Реализовал все на основе position top left, но подгагять это под мобильные врагу не пожелаешь.
Так что нужно фоновое изображение где я просто смогу разделить его на 2 части через col-md-6

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8636 от Wedal
Андрей, напишите пример кода, который выводит у вас изображение сейчас.

P.S.: Проверяйте, пожалуйста, что пишите, перед отправкой сообщения. Очень тяжело читать текст, в котором буквы перепутаны в каждом третьем слове.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад - 5 года 9 мес. назад #8637 от Андрей
Как до компьютера доберусь, так скину. Хотя это стандартный код в дефолтном шаблоне модуля вывода товаров виртуемарт.
На телефоне клава мелкая, не всегда попадаю куда надо)))

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад - 5 года 9 мес. назад #8639 от Андрей
Вот собственно файл представления (макет)
							<?php
							 if (!empty($product->images[0]) )  //тут как я понимаю выводится изображение
							 $image = $product->images[0]->displayMediaThumb('class="featuredProductImage" ',false) .'<div class="triangle"></div>' ;
							 else $image = '';
 

прикреплю весь файл на всякий случай

Вложенный файл:

Имя файла: tariffs.zip45
Размер файла:1 KB
Вложения:

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8640 от Wedal
Андрей, вставьте временно следующий код:
<pre><?php print_r($product->images[0]); ?></pre>
Он выведет содержимое $product->images[0]. Там увидите как вывести путь до изображения.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8641 от Андрей
Спасибо! За компьютером только вечером))) попробую.
Хороший человек пока подкинул костыльный метод
else $image = '';
preg_match('@^(?:<img src=")?([^"]+)@i', $image, $match);
var_dump($match[1]);

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8642 от Wedal
Андрей, не надо так делать! В переменной храниться отдельно путь до изображения. Просто обратитесь к нему правильно.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8643 от Андрей
Да, я понял, просто не нашли переменную. Вашим способом найдется думаю)

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8644 от Андрей
Не могу понять как выделить нужную переменную
VmMediaHandler Object
(
    [media_attributes] => 0
    [setRole] => 
    [file_name] => 
    [file_extension] => 
    [virtuemart_media_id] => 0
    [_foldersToTest:VmMediaHandler:private] => Array
        (
            [0] => y:/userdata/temp/
            [1] => Y:\domains\baza.ru\images\stories\virtuemart\product\
            [2] => Y:\domains\baza.ru\images\stories\virtuemart\product\resized\
        )
 
    [_actions:VmMediaHandler:private] => Array
        (
        )
 
    [_mLocation:VmMediaHandler:private] => Array
        (
        )
 
    [_hidden:VmMediaHandler:private] => Array
        (
        )
 
    [theme_url] => components/com_virtuemart/
    [virtuemart_vendor_id] => 0
    [file_title] => 
    [file_description] => 
    [file_meta] => 
    [file_class] => 
    [file_mimetype] => 
    [file_type] => products
    [file_url] => images/stories/virtuemart/product/
    [file_url_thumb] => 
    [published] => 0
    [file_is_downloadable] => 0
    [file_is_forSale] => 0
    [file_is_product_image] => 0
    [shared] => 0
    [file_params] => 0
    [file_lang] => 
    [created_on] => 
    [created_by] => 0
    [modified_on] => 
    [modified_by] => 0
    [file_url_folder] => images/stories/virtuemart/product/
    [file_path_folder] => images\stories\virtuemart\product\
    [file_url_folder_thumb] => images/stories/virtuemart/product/resized/
    [media_role] => file_is_displayable
)
 

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8645 от Wedal
Андрей, по тому, что вы привели, не может показываться картинка - здесь нет никакого указания на нее. Приведите такой пример для товара, которому задано реальное изображение.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад - 5 года 9 мес. назад #8647 от Андрей
Проблема была в отсутствии реального изображения.
в общем сделал что хотел
<div class="col-xs-12 col-md-4 triangle tariff" style="background: url(/templates/base/img/produkt-fon.png) no-repeat 100% 100%, url(<?php echo $product->images[0]->file_url; ?>) no-repeat center center;">

Результат, полностью резиновое изображение товара (картинка шрифты и цвета как заглушки, потом дизайнера напрягу этим))) )
Остался вопрос как сделать сортировку по цене, а то в модуле только случайно, избранное и т.д. того что надо нет.
Вложения:

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

5 года 9 мес. назад #8648 от Wedal
Андрей, если нужна сортировка, то перед выводом вы можете отсортировать массив товаров в макете по нужному вам параметру (например, цене). Выносить сортировку в макет неверно с точки зрения MVC-парадигмы, но это будет самое простое и быстрое решение. Примерный код вы можете посмотреть здесь: forum.virtuemart.net/index.php?topic=110399.0

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.