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

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Господа, подскажите, кто нибудь вытаскивал $base_price во flypage.tpl.php?

Суть:

Если цена товара больше определенной суммы и общее количество товаров (родительский + дочерние) меньше 0, тогда выводим посетителю сообщение, типа "что на покупку этого товара, если Вы его подождете пока привезем, мы дадим Вам бонус."

Код в price.tpl.php
Код
<?php if (intval($base_price) > 50000 ) { 

echo "вывод чего либо";
?>
Но мне нужно сообщение вытаскивать ещё по одному условию и не вместе со стандартной ценой в конструкции
Код
<?php echo $product_price ?>

Соответственно условие:
Код


if ($child_cnt == 0 || intval($product_price) > 50000 ) {
echo "<!--noindex--><!--googleoff: all-->Товара сейчас нет в наличии, но вы можете его заказать!</p><p>Доставка производится в течении 5-7 дней.  Мы дадим Вам дополнительную скидку за ожидание!</p><!--googleon: all--><!--/noindex-->";


в карточке не работает.


Может быть у кого есть мысли - поделитесь, думаю, не мне одному понадобится.



*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #2 : 30.08.2013, 06:47:48 »
Версия 1.1.4

Нужно в карточку товара вытащить стоимость этого товара в любое место карточки без слов "Цена" "валюта".

Фактически, получить число 'product_price' из таблицы #_vm_product_price в карточке товара
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #3 : 30.08.2013, 09:22:40 »
получить число 'product_price' из таблицы #_vm_product_price
Код: php-brief
$price_info=$ps_product->get_retail_price($product_id);
echo $price_info['product_price'];
//formated: echo $CURRENCY_DISPLAY->getFullValue($price_info['product_price']);
Но оно может отличаться от цены в карточке.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #4 : 30.08.2013, 09:41:59 »
Код: php-brief
$price_info=$ps_product->get_retail_price($product_id);
echo $price_info['product_price'];
//formated: echo $CURRENCY_DISPLAY->getFullValue($price_info['product_price']);
Но оно может отличаться от цены в карточке.
Ага, и получаем Fatal error: Call to a member function get_retail_price() on a non-object in
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #5 : 30.08.2013, 09:53:49 »
В начале shop.product_details.php есть эти строки:
Код: php-brief
require_once(CLASSPATH . 'ps_product.php' );
$ps_product = $GLOBALS['ps_product'] = new ps_product;
?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #6 : 30.08.2013, 10:01:39 »
В начале shop.product_details.php есть эти строки:
Код: php-brief
require_once(CLASSPATH . 'ps_product.php' );
$ps_product = $GLOBALS['ps_product'] = new ps_product;
?
А как же:

Код
if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );

mm_showMyFileName( __FILE__ );

require_once(CLASSPATH . 'ps_product_files.php' );
require_once(CLASSPATH . 'imageTools.class.php' );
require_once(CLASSPATH . 'ps_product.php' );
$ps_product = $GLOBALS['ps_product'] = new ps_product;
require_once(CLASSPATH . 'ps_product_category.php' );
$ps_product_category = new ps_product_category;
require_once(CLASSPATH . 'ps_product_attribute.php' );
$ps_product_attribute = new ps_product_attribute;
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #7 : 30.08.2013, 10:05:50 »
Тогда в flypage.tpl.php должен работать тот код, ведь объект $ps_product задекларирован.
« Последнее редактирование: 30.08.2013, 10:09:13 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #8 : 30.08.2013, 10:14:30 »
Тогда в flypage.tpl.php должен работать тот код, ведь объект $ps_product задекларирован.
Вижу что есть function get_retail_price, но ошибку выдает все же
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #9 : 30.08.2013, 10:18:21 »
Замените get_retail_price на get_price.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #10 : 30.08.2013, 10:23:42 »
Замените get_retail_price на get_price.
Не помогает:
Код
Fatal error: Call to a member function get_price() on a non-object in Z:\home\www.xxx.ru\www\components\com_virtuemart\themes\default\templates\product_details\flypage.tpl.php on line 102
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #11 : 30.08.2013, 10:35:59 »
Не понял. Проверял, у меня работает.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #12 : 30.08.2013, 10:37:17 »
Тупик

Код
<?php if( !defined( '_VALID_MOS' ) && !defined( '_JEXEC' ) ) die( 'Direct Access to '.basename(__FILE__).' is not allowed.' );
mm_showMyFileName(__FILE__);
require_once(CLASSPATH. 'ps_product.php' );
$document = &JFactory::getDocument();
 ?>
<?php
$user =& JFactory::getUser();
?>
<div id="productflypage">
<!--noindex-->
<!--googleoff: all-->
<?php echo $leader_img_fly ?><?php echo $new_img_fly ?>
<?php echo $supersale_img_fly ?>
<!--googleon: all-->
<!--/noindex-->
<div itemscope itemtype="http://schema.org/Product">
<div style="display:block;float:none;clear:both;padding-bottom:6px;">
<div style="float:left">
<h1><span itemprop="name" class="itempropname"><?php echo $product_name ?> <?php echo $edit_link ?> <?php echo $manufacturer_nameslink ?></span></h1>
</div>

<div style="float:right">
<div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="icon" data-yashareQuickServices="gplus,facebook,moimir,twitter,odnoklassniki,lj,vkontakte"></div>

</div>
<br style="clear:both; ">

</div>
<hr />

<br style="clear:both; ">
<div style="display: block; float:none; max-width: 996px;">
<div class="nameimageflays">
<div class="imgflypages">
<?php
$img_big = $product_full_image;
$pieces = explode(".", $img_big);
$thumb_2 = "/shop_image/product/resized/" . $pieces[0] . "_300x300." . $pieces[1];
if( file_exists( $thumb_2 ) ) {
?>
<a class="modal" href="/shop_image/product/<?php echo $product_full_image ?>" title="<?php echo $product_name; ?>" ><img src="/components/com_virtuemart/show_image_in_imgtag.php?filename=<?php echo $product_full_image ?>&newxsize=300&newysize=300&fileout=<?php echo $fileout ?>"  alt="/shop_image/product/<?php echo $product_name; ?>" /></a>
<?php
} else {
?>
<a class="modal" href="/shop_image/product/<?php echo $product_full_image ?>" title="<?php echo $product_name; ?>" ><img src="/components/com_virtuemart/show_image_in_imgtag.php?filename=<?php echo $product_full_image ?>&newxsize=300&newysize=300&fileout=<?php echo $fileout ?>"  alt="/shop_image/product/<?php echo $product_name; ?>" /></a>
<?php
}
?>
<br />
<div class="cartpriceflp">
<span itemprop="price"><?php echo $product_price ?></span>
</div>

<?php echo $VM_LANG->_('PHPSHOP_CATEGORY')?>: <?php echo $category_name?><br /><?php echo $manufacturer_link ?>
<!--noindex-->
<!--googleoff: all-->
<br />

<div class="identifier">Артикул: <?php echo $product_sku?>
<?php echo $product_rating ?>

<?php if ($product_counter > 0) : ?>
Просмотров: <?php echo $product_counter ?>
<?php endif ?>
</div>

<!--googleon: all-->
<!--/noindex-->

</div>
</div>

<div class="flyprodopisanie">
<?php

if(!empty($discount_info["amount"])) {
if($discount_info["is_percent"]==1) {
echo "<div class=\"mod_univm_price\">-";
echo $discount_info["amount"]."%";
echo "</div>";
}
else {
echo $CURRENCY_DISPLAY->getFullValue($discount_info["amount"]);
}
}
?>


<div class="shippingek"><div>

<?php

//$price_info=$ps_product->get_retail_price($product_id);
//echo $price_info['product_price'];
//if ($child_cnt == 0 || intval($product_price) > 3000 ) {
if ($child_cnt == 0 || intval($base_price) > 3000 ) {
echo "<!--noindex--><!--googleoff: all--><p>Данного товара сейчас нет в наличии, но он есть у нашего поставщика и вы можете его заказать!</p><p>Доставка данной модели производится в течении 5-7 дней. </p><p>За ожидание мы предоставим Вам персональный скидочный купон на покупку этого товара!</p><!--googleon: all--><!--/noindex-->";
}
else {
?>

<?php
$hour=JHTML::_('date', 'now', '%H' );
  $hour=$hour+'2';
  if($hour < '17' ) {

   $d=date("d.m.Y",time() + 14400);
  echo 'Доставка  возможна сегодня: <span style="color:#ff0000">'.$d.' до 23 часов.</span>'; }
  if($hour >= '17' ) { 

  $d=date("d.m.Y",time() + 86400);
  echo 'Доставка  завтра: <span style="color:#ff0000">'.$d.' с 9.00 до 23 часов.</span> '; } ?>  
<br />
  <?php
  if($hour < '17') {
  $d=date("d.m.Y",time() + 86400);
  echo 'Ближайший срок отгрузки товара по России: '.$d; }
  if($hour >= '17') {
  $d=date("d.m.Y",time() + 172800);
  echo 'Ближайший срок отгрузки товара по России: '.$d; } ?>

  <?php

}

 ?>
 
 <?php
if( $this->get_cfg( 'showAvailability' )) {

echo $product_availability;

}
?>
</div></div>






<div itemprop="description">

{slide=<!--noindex--><!--googleoff: all-->Показать подробное описание модели...<!--googleon: all--><!--/noindex-->}<?php echo $product_description ?>

<?php echo $product_type ?>
<?php if( $product_weight !=0.00 ): ?>
Вес: <?php echo $product_weight ?> кг.<br />
<?php endif ?>
{/slide}

</div>
<div class="vmflypages">
<div class="cartflp">


<?php echo $addtocart ?>


<!--noindex-->
<!--googleoff: all-->
<?php
if (($product_in_stock != 0) || ($child_cnt!= 0)) {  ?><div style="color: #999999;padding:0;">

<br />
<table width="100%"><tr><td>
<?php if(!$user->guest) {  ?>
<?php }
else {
 ?>
<td>
<div class="categorychild">
<?php echo $ask_seller ?>
</div>
</td>
<?php
}
?>
<td><div class="categorychild">
<a  href="index.php?option=<?php echo $option ?>&amp;Itemid=<?php echo $Itemid ?>&amp;product_id=<?php echo $product_id ?>&amp;category_id=<?php echo $category_id ?>&amp;manufacturer_id=<?php echo $manufacturer_id ?>&amp;flypage=shop.<?php echo $flypage ?>&amp;page=wishlist.add_item&amp;func=wishlistAddItem" title="Отложить товар может только зарегистрированный Покупатель"><?php echo $VM_LANG->_('PHPSHOP_WISHLIST_ADD_TO')?></a>
</div></td><td><div class="categorychild">
<?php echo $form_addtocomparison ?>
</div></td></tr>
</table>

</div>
<?php } 
?>
<!--googleon: all--><!--/noindex-->

</div>
</div>
</div>
</div>

<br style="clear: both;  ">
<div class="callmenow">
Не можете определиться с покупкой детских товаров? Интернет магазин всегда рад помочь с выбором!
<h4>ПОЗВОНИТЕ НАМ: xxx-xxx--xxxx</h4>
Это бесплатно!
</div>


<div class="sectiontab">
<ul class="tabs">

<!--li>описание</li-->


<li class="current">отзывы</li>
<?php if( !empty($related_products)): ?>
<li >сопутствующие</li>
<?php endif ?>

<?php if( !empty($images)): ?>
<li>изображения</li>
<?php endif ?>

<?php if( !empty($file_list) OR !empty($product_video)): ?>
<li>файлы и видео</li>
<?php endif ?>






</ul>



<div class="box visible">

<?php if( !empty($product_s_desc)): ?>
{slide=мнение специалиста}<?php echo $product_s_desc?>{/slide}
<?php endif ?>

<?php echo $product_reviews ?>
<!--noindex-->
<!--googleoff: all-->
<?php echo $product_reviewform ?>

<br style="clear:both;" />
<!--googleon: all-->
<!--/noindex-->
</div>

<?php if( !empty($related_products)): ?>
<div class="box">
<div class="leftmodul"><span>Сопутствующие товары:</span></div>
<?php echo $related_products ?>
<br />
<br style="clear:both;" />
</div>
<?php endif ?>

<?php if( !empty($images)) { ?>
<div class="box">
<?php echo $this->vmlistAdditionalImages( $product_id, $images )?>
<br style="clear:both;" />
</div>
<?php } ?>

<?php if( !empty($file_list) OR !empty($product_video)) { ?>
<div class="box">
<!--noindex-->
<!--googleoff: all-->
<br style="clear:both;" />
<?php echo $file_list ?>
<br style="clear:both;" />


<div class="autocentr">
<?php echo $product_video ?>
</div>
<!--googleon: all-->
<!--/noindex-->
</div>
<?php } ?>







</div>
<?php
if( !empty( $navigation_childlist )) { ?>
<?php echo $VM_LANG->_('PHPSHOP_MORE_CATEGORIES')?><br />
<?php echo $navigation_childlist ?>

<?php
} ?>
<?php

if( $this->get_cfg( 'product_navigation', 1 )) {
if( !empty( $previous_product )) {
echo '<div style="float:left"><br style="clear:both"/><span class="pagenav_prev"><a class="previous_page" href="'.$previous_product_url.'">'.shopMakeHtmlSafe($previous_product['product_name']).'</a></span><br style="clear:both"/></div>';
}
if( !empty( $next_product )) {
echo '<div style="float:right"><br style="clear:both"/><span class="pagenav_next"><a class="next_page" href="'.$next_product_url.'">'.shopMakeHtmlSafe($next_product['product_name']).'</a></span><br style="clear:both"/></div>';
}
}
?>
</div>
</div>
<!--noindex-->
<!--googleoff: all-->
<?php echo $similar_products ?>
<br class="clr" />
<!--googleon: all-->
<!--/noindex-->


$child_cnt - подсчет количества дочерних
« Последнее редактирование: 30.08.2013, 10:42:55 от SolopoV »
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #13 : 30.08.2013, 10:51:52 »
Может как то так:
справкой в shop.product_details.php

Код
		$db3 = JFactory::getDBO();
$query = 'SELECT product_price FROM #__vm_product_price WHERE product_price = '.$db_product->f('product_price').'';
$db3->setQuery($query);
$pricing = $db3->loadResult();

Код
$productArray["pricing"] = $product_price;


в карточку  echo $pricing;

« Последнее редактирование: 30.08.2013, 10:55:54 от SolopoV »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #14 : 30.08.2013, 11:18:47 »
Откуда взялось "$db_product->f('product_price')"?
Я думаю, у вас там все запутано в результате таких манипуляций.
Попробуйте почистить код.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #15 : 30.08.2013, 12:01:56 »
Откуда взялось "$db_product->f('product_price')"?
Я думаю, у вас там все запутано в результате таких манипуляций.
Попробуйте почистить код.

Это я сюда такой код написал, как предположение, а не файл
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #16 : 30.08.2013, 12:14:40 »
В shop.product_details.php, перед
Код: php-brief
echo $tpl->fetch( '/product_details/'.$flypage . '.php' );
поставьте
Код: php-brief
$tpl->set( "price_info", $ps_product->get_retail_price($product_id));
А в flypage.tpl.php выводите
Код: php-brief
echo $price_info['product_price'];
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #17 : 30.08.2013, 12:50:23 »
В shop.product_details.php, перед
Код: php-brief
echo $tpl->fetch( '/product_details/'.$flypage . '.php' );
поставьте
Код: php-brief
$tpl->set( "price_info", $ps_product->get_retail_price($product_id));
А в flypage.tpl.php выводите
Код: php-brief
echo $price_info['product_price'];

"ЗБ" (зе бест или за-сь)! Вышло. Респект. Что то должен?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Вывод $base_price в карточку товара
« Ответ #18 : 30.08.2013, 12:57:59 »
"+" есть. На здоровье.

P.S. Имейте в виду, что get_retail_price выводит именно число в таблице, без каких либо скидок, налогов и т.д.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #19 : 30.08.2013, 13:00:35 »
Могу выложить готовое решение, если кому то пригодится...
*

SolopoV

  • Давно я тут
  • 552
  • 15 / 0
  • зеленею...
Re: Вывод $base_price в карточку товара
« Ответ #20 : 30.08.2013, 13:01:28 »
"+" есть. На здоровье.

P.S. Имейте в виду, что get_retail_price выводит именно число в таблице, без каких либо скидок, налогов и т.д.
Да, но скидки и налоги тут не нужны.. :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывод товара из дочерних категорий в родительскую

Автор B0nG

Ответов: 0
Просмотров: 1100
Последний ответ 03.08.2014, 15:13:57
от B0nG
ID товара вместо cdata

Автор newsky

Ответов: 0
Просмотров: 977
Последний ответ 01.07.2014, 13:05:12
от newsky
Расширенный Ajax-поиск по характеристикам товара VirtueMart

Автор Arkadiy

Ответов: 990
Просмотров: 181016
Последний ответ 27.06.2014, 16:47:52
от DeLight
Не могу убрать форму "Задайте вопрос..." на странице товара

Автор abrodski

Ответов: 1
Просмотров: 1058
Последний ответ 20.05.2014, 14:30:44
от abrodski
Свойства товара без подтягивания скидки

Автор One

Ответов: 0
Просмотров: 816
Последний ответ 13.05.2014, 16:53:53
от One