We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 54783
    • 1 Posts
    MODX Evolution 1.2-d8.1.5 (Oct 28, 2016) с Shopkeeper 1.3.4
    Помогите, пожалуйста, решить следующую проблему. Мне нужно чтобы покупатель сам указывал цену товара и с этой ценой товар попадал в корзину и заказ. В товаре цена поле TV с названием 'price'. В шаблоне вот такая форма
    <form id="add2cart_form" action="[~[*id*]~]" method="post" name="shkform" id="shkform[*id*]">
    														
    	<input type="hidden" name="shk-id" value="[*id*]" />
    	<input type="hidden" name="shk-name" value="[*pagetitle*]" />
    	<input type="hidden" name="shk-rid" value="[*rid*]" />
    								
    		[[*priceTV:replace=`[[+id]]==[[*id]]`]] 
    								
    		[[+tv.price:replace=`500==5`]]
    						
    	<input type="text" name="shk-price" class="shk-price" value="[[*price*]]" />
    								
    	<!-- <input type="hidden" name="shk-price" class="shk-price" value="[[*price*]]" /> -->
    
    	<button style="display:none;" type="submit" class="shk-but" id="shk_but_[*id*]">В корзину</button>
    								
    <a style="cursor:pointer;" class="menu-inner_to-basket" onclick="_txq.push(['track', 'ADD_2_CART_2']);document.getElementById('shk_but_[*id*]').click();return false;">В корзину <i class="ic-basket-head"></i></a>								
    </form>
    

    Я в шаблоне вывожу поле price не как hidden а как текст. Вот такие вариации замены цены не работают http://prntscr.com/ls3mpi Сниппет корзины и формы заказа такой
    <a id="recommendation_link" data-remodal-target="recommendation" style="display:none;"> </a>
    
    <div class="order-cover tort">
    	<div class="order-basket">
    		<div class="order-main">
    			<div class="order-main-wrap">				
    				[!Shopkeeper?
    				&cartTpl=`cart-header-tpl`
    				&cartRowTpl=`cart-header-row-tpl`
    				&priceTV=`price`
                    &changePrice=`1`
    				&processTVs=`1`
    				&currency=`руб.`
    				&noJQuery=`1`
    				&noLoader=`1`
    				&flyToCart=`nofly`
    				&counterField=`1`
    				&orderDataTpl=`order-data-tpl2`
    				!]
    				<div class="order-bottom">
    					<!--<div class="order-action">
    						<div class="action-img">
    							<img src="[ [DocInfo?&docid=`1`&field=`akcia_img`] ]" alt="">
    						</div>
    						<div class="action-content">
    							<p>[ [DocInfo?&docid=`1`&field=`akcia_text`] ]</p>
    						</div>
    						<div class="action-close">
    							<a href="#"><i class="ic-close"></i></a>
    						</div>
    					</div>-->
    					<div class="btns-cover">
    						<a href="#" id="to-step0" class="btn mob">
    							<i class="ic-arrow-left"></i>
    						</a>
    						<a href="#" id="step2" class="btn btn-red">Продолжить <i class="ic-arrow-right"></i></a>
    					</div>
    				</div>
    			</div>
    		</div>
    		<div class="order-step-form">
    			<div class="before-login">
    				[!LoginWidget? 
    				&loginTpl=`@CODE:<p>Делали заказ раньше? <a href="#" id="basketSignInLink" data-remodal-target="basketSignIn">Войти <i class="ic-login"></i></a></p>`
    				!]
    			</div>
    
    			[!saveOrderData!]
    			[!checkTimeFunction!]
    			[!checkTotalPrice!]
    			[!setFields!]
    			[!eForm?
    			&formid=`shopOrderForm`
    			&tpl=`shopOrderForm`
    			&report=`shopOrderReport2`
    			&gotoid=`27`
    			&noemail=`0`
    			&protectSubmit=`0`
    			&ccsender=`0`
    			&to=`[email protected],[email protected],[email protected],[+email+]`
    			&subject=`Новый заказ [(site_name)]`
    			&eFormOnBeforeMailSent=`checkTimeFunction,checkTotalPrice,populateOrderData,saveOrderData`
    			&eFormOnMailSent=`sendOrderToManager`
    			&eformOnBeforeFormParse=`setFields`
    			!]
    			<[email protected] [email protected],[email protected],[email protected]  -->
    			<div class="btns-cover">
    				<a href="#" id="to-step1" class="btn mob">
    					<i class="ic-arrow-left"></i>
    				</a>
    				<a href="#" id="step3" class="btn btn-red">Продолжить <i class="ic-arrow-right"></i></a>
    			</div>
    		</div>
    		<div class="order-step-form3">
    			<div class="inf-cover">
    				<div class="information">
    					<h2>Информация о заказе:</h2>
    					<div id="order_info">
    					</div>
    					<table id="order_info_table">
    					</table>
    					<fieldset>
    						<div class="radio-w50">
    							<input type="radio" id="card-check" name="payment" value="Оплата картой">
    							<label for="card-check" data-input-id="payment" data-value="Оплата картой">Оплата картой</label>
    						</div>
    						<div class="radio-w50">
    							<input type="radio" id="nal-check" name="payment" value="Оплата наличными" checked>
    							<label for="nal-check" class="active" data-input-id="payment" data-value="Оплата наличными">Оплата наличными</label>
    						</div>
    					</fieldset>
    					<a href="assets/templates/site/oplata.pdf" target="_blank" class="terms-basket">Условия оплаты</a>
    				</div>
    			</div>
    			<div class="step3-buttons">
    				<a href="#" id="to-step2" class="btn btn-grey"><i class="ic-arrow-left"></i> Изменить</a>
    				<input type="submit" class="btn btn-red" value="Оформить заказ" id="checkoutBtn" onclick="sendOrder()">
    			</div>
    		</div>
    	</div>
    </div>
    
      • 44064
      • 185 Posts
      Anton Tarasov Reply #2, 6 years ago
       [[*priceTV:replace=`[[+id]]==[[*id]]`]] 
                                       
              [[+tv.price:replace=`500==5`]]
                               
          <input type="text" name="shk-price" class="shk-price" value="[[*price*]]" />
                                       
          <!-- <input type="hidden" name="shk-price" class="shk-price" value="[[*price*]]" /> -->

      Мне кажется, или у вас неверный вызов TV и параметров? Это же Evo, какие двойные квадратные скобки?
        Anton Tarasov
        MODX Developer

        Email: [email protected]
        Web: antontarasov.com