ゲストおよびWebasyst Shop-scriptの新しい支払いモジュール

ゲスト


Shop-Scrip Webasystで作業する人は私を理解するでしょう。 確かに、このスクリプトの初期バージョンを使用する人は、何か有用なものを見つけるでしょう。
店として、彼は非常に優れています。注文フォーム、商品の比較など。 しかし、いくつかの追加はまだ十分ではありません。 1つ目はゲストブック(感謝の気持ちを込めてお客様に感謝し、みんなに自慢できるようにするため)、フォトギャラリー、何かに満足していない人のためのフィードバックフォーム(「注文について不平を言う」など)でした。

Shop-scriptの構造はJoomlaとは異なり、必要なモジュールまたはコンポーネントを追加するだけでは機能しません。 しかし、方法があります。 私はそれをどのようにしたかを説明します。


ゲストブックから始めましょう。
実装:

新しい支払いモジュール:


チャレンジ:
ウクライナの銀行が提供する最新の支払い方法を紹介します。 当然、shop-scripの作成者はこの支払い方法について何も聞いておらず、リストに追加しませんでした。

問題の解決方法を説明します。 多分完全に正しくないか、誰かがそれをするかもしれません。
彼は既存のものを何もやり直さなかった(そして突然便利になった)が、新しいものを作った

開始するには、管理パネルから新しい支払い方法を作成します。

設定->支払い->支払い方法の追加->手動支払い処理->カスタム支払い方法



いくつかのファイルを変更して追加するだけです。

ファイル/published/SC/html/scripts/modules/abstract/_methods/checkout/billing.php
(どうやって見つけたのか聞かないで)

select_payment()関数(これは約20行目)で最後の行を置き換えます

「RedirectSQ ....」
$r=$this->getData('paymentMethodID');<br/>
RedirectSQ('step=confirmation&s='.$r);


ほぼ一致するコードを持つフォルダー/ published / SC / html / scripts / smarty / pluginsに新しいプラグイン、例えばfunction.mypay.phpを作成します:
<?php<br/>
function smarty_function_mypay($params, &$smarty) {<br/>
$display='';<br/>
$ord=' ';<br/>
if ($_GET['s']==12)<br/>
{<br/>

$display.=''; // . submit, <br/>
} else {<br/>
$display.='<p><input type="submit" class="checkout_buttons" name="submit" value="'.$ord.'" /></p></form>';<br/>

}<br/>
echo $display;<br/>
}<br/>
?>

テンプレートファイルを編集します。

/published/SC/html/scripts/templates/frontend/checkout.confirmation.html

85針の後に挿入します

{else}の後、プラグイン{mypay}の出力を挿入し、タグ{/ if}まで他のすべてを削除します

支払い方法のIDを見つける方法?!

管理パネルでは、目的の支払い方法の反対側にある「編集」リンクをポイントするだけで十分です。ステータス行にリンクアドレスと最後のパラメーター(&pid =番号)が表示されます。この番号は必要なIDです。

そのようなもの。 私のために働く。

Source: https://habr.com/ru/post/J57292/


All Articles