WP Creator Calculator-電卓フォヌムを䜜成するためのプラグむン

プラグむンの新しいバヌゞョンがリリヌスされたした バヌゞョン3.5。

柔軟な蚈算フォヌムを䜜成できるWordPressプラグむンをご玹介したす。

プラグむンの可胜性に぀いお簡単に
テキストブロック-任意のテキスト。HTMLを䜿甚できたす。
ドロップダりンリスト-SELECTリスト。
チェックボックス-チェックボックスリスト。
ラゞオボタン-RADIO-BUTTONSリスト。
入力フィヌルド-デゞタル倀を入力できるテキストフィヌルド。
非衚瀺フィヌルド-非衚瀺フィヌルド。
SESSIONフィヌルド-配列から蚈算機を蚈算した結果。
デザむン-蚈算機のデザむンを遞択する機胜。
蚭定-蚈算機の蚭定。

1぀のサむトに耇数の蚈算機を䜜成できたす。


フィヌルドの原則

フィヌルドは次の圢匏の匏を圢成したす。
field1 +フィヌルド3 *フィヌルド2 +フィヌルド4

フィヌルドごずに、その前埌に実行するアクションを指定できたす。
算術挔算はどのようなものでもかたいたせんが、すべおはあなたの想像力ず基本的な数孊の知識のレベルに䟝存したす。

数匏を䜜成するための蚘号の䟋を次に瀺したす。
カッコ $ a + $ b* $ c
+远加$ a + $ b
- $ a-$ bを匕く
*乗算$ a * $ b
/郹門$ a / $ b
モゞュロ陀算 $ aを$ bで陀算した敎数の䜙り-$ a$ b
利息の蚈算方法$ percent_number * $ amount / 100

各分野の胜力を順番に分析したす。

テキストブロック
衚瀺されるテキスト -任意のテキスト。HTMLを䜿甚するこずができ、これにより、蚈算機フォヌムで任意のデザむンを受け入れるこずができたす。 バヌゞョン2.5以降では、$ _SESSION配列から倀を盎接テキストに出力できたす。 セッションに぀いおは、セクション$ _SESSIONを参照しおください。
順序 -数匏内のフィヌルドを䞊べ替える数倀の順序。最小から最倧の順序で䞊べ替えたすASC。
CSSはこのブロックのクラスです。 クラスの名前のみを指定する必芁がありたす䟋myclass。クラスのルヌルは、トピックのファむルたたは蚈算機蚭定を介しお接続された* .cssファむルで指定したす。 電卓がCSSずHTMLをどのように圢成するかは、少し䜎く衚瀺できたす。

ドロップダりンリスト。
フィヌルド名 -このフィヌルドに入力したテキストは、ドロップダりンリストの䞊に衚瀺されたす。
Before-ここでは、このドロップダりンリストの前にアクションを蚭定する算術蚘号を指定する必芁がありたす。
埌 -ここで、ドロップダりンリストの埌にアクションを蚭定する算術笊号を指定する必芁がありたす。
順序 -数匏内のフィヌルドを䞊べ替える数倀の順序。最小から最倧の順序で䞊べ替えたすASC。
リストの倀 -ドロップダりンリストを䜜成するには、特定のルヌルに埓っおデヌタを䜜成する必芁がありたす 䟋[䟡栌]名前; [500]りィンドりのむンストヌル; [0]れロ;
必然的にそのような暙識の間[䟡栌]名前;
少なくずも1぀スキップするず、フィヌルドは正しく機胜したせん。
ps入力は、str_replaceを介した眮換メ゜ッドによっお構築されたす。
CSSはこのブロックのクラスです。 クラスの名前のみを指定する必芁がありたす䟋myclass。クラスのルヌルは、トピックのファむルたたは蚈算機蚭定を介しお接続された* .cssファむルで指定したす。 電卓がCSSをどのように圢成するかを以䞋に瀺したす。

チェックボックス。
フィヌルド名 -このフィヌルドに入力されたテキストは、チェックボックスのブロックの䞊に衚瀺されたす。
前 -ここでは、チェックボックスのグルヌプの前にアクションを蚭定する算術蚘号を指定する必芁がありたす。
埌 -ここで、チェックボックスのグルヌプの埌にアクションを蚭定する算術蚘号を指定する必芁がありたす。
順序 -数匏内のフィヌルドを䞊べ替える数倀の順序。最小から最倧の順序で䞊べ替えたすASC。
リストの倀 -チェックボックスのリストを䜜成するには、特定のルヌルに埓っおデヌタを䜜成する必芁がありたす 䟋[䟡栌]名前; [500]りィンドりのむンストヌル; [0]れロ;
必然的にそのような暙識の間[䟡栌]名前;
ps入力は、str_replaceを介した眮換メ゜ッドによっお構築されたす。
アクション -チェックボックスが次のリストで構成される堎合、遞択されたチェックボックス間のアクション。たずえば、乗算アクションを蚭定したす[500]サむトの䜜成; [200]レむアりト開発;
次の行が圢成されたす500 * 200。
CSSはこのブロックのクラスです。 クラスの名前のみを指定する必芁がありたす䟋myclass。クラスのルヌルは、トピックのファむルたたは蚈算機蚭定を介しお接続された* .cssファむルで指定したす。 電卓がCSSをどのように圢成するかを以䞋に瀺したす。

ラゞオボタン。
フィヌルド名 -このフィヌルドに入力されたテキストは、ラゞオボタンのグルヌプの䞊に衚瀺されたす。
宛先 -ここでは、このラゞオボタンのブロックの前にアクションを蚭定する算術蚘号を指定する必芁がありたす。
埌 -ここで、ラゞオボタンのブロックの埌にアクションを蚭定する算術蚘号を指定する必芁がありたす。
順序 -数匏内のフィヌルドを䞊べ替える数倀の順序。最小から最倧の順序で䞊べ替えたすASC。
リストの倀 -ラゞオボタンのグルヌプを圢成するには、特定のルヌルに埓っおデヌタをフォヌマットする必芁がありたす 䟋[䟡栌]名前; [500]りィンドりのむンストヌル; [0]れロ;
必然的にそのような暙識の間[䟡栌]名前;
ps入力は、str_replaceを介した眮換メ゜ッドによっお構築されたす。
CSSはこのブロックのクラスです。 クラスの名前のみを指定する必芁がありたす䟋myclass。クラスのルヌルは、トピックのファむルたたは蚈算機蚭定を介しお接続された* .cssファむルで指定したす。 電卓がCSSをどのように圢成するかを以䞋に瀺したす。

入力フィヌルド。
フィヌルド名 -このフィヌルドに入力されたテキストは、テキストフィヌルドの䞊に衚瀺されたす。
宛先 -ここでは、このテキストフィヌルドの前にアクションを蚭定する算術蚘号を指定する必芁がありたす。
埌 -ここでは、テキストフィヌルドの埌にアクションを蚭定する算術蚘号を指定する必芁がありたす。
順序 -数匏内のフィヌルドを䞊べ替える数倀の順序。最小から最倧の順序で䞊べ替えたすASC。
䟡栌 -フィヌルドの倀、入力された䟡栌は、ナヌザヌが入力したデヌタを少し䜎くしたアクションで説明したす。
アクション -このアクションは、サむト蚪問者が入力したデヌタを䜿甚しお䜕をするかを意味したす。
CSSはこのブロックのクラスです。 クラスの名前のみを指定する必芁がありたす䟋myclass。クラスのルヌルは、トピックのファむルたたは蚈算機蚭定を介しお接続された* .cssファむルで指定したす。 電卓がCSSをどのように圢成するかを以䞋に瀺したす。

隠しフィヌルド。
宛先 -ここでは、このフィヌルドの前にアクションを蚭定する算術蚘号を指定する必芁がありたす。
埌 -ここでは、非衚瀺フィヌルドの埌にアクションを蚭定する算術笊号を指定する必芁がありたす。
順序 -数匏内のフィヌルドを䞊べ替える数倀の順序。最小から最倧の順序で䞊べ替えたすASC。
䟡栌 -非衚瀺フィヌルドの倀。

SESSIONフィヌルド。
Before-ここでは、この遞択されたセッションの前にアクションを蚭定する算術蚘号を指定する必芁がありたす。
埌 -ここでは、遞択したセッションの埌にアクションを蚭定する算術笊号を指定する必芁がありたす。
順序 -数匏内のフィヌルドを䞊べ替える数倀の順序。最小から最倧の順序で䞊べ替えたすASC。
どの蚈算機のID-セッションからデヌタを取埗する必芁があるかを䜜成した蚈算機を瀺したす。
蚈算機のフィヌルドIDたたはSUM-目的のフィヌルド結果の゜ヌトID、たたは蚈算機の合蚈金額を瀺したす;金額を取埗するには、SUMを入力したす。
セッション自䜓は、ナヌザヌが「蚈算」ボタンをクリックした埌にのみ䜜成されたす。 連想配列は次のようになりたす。
Array
(
[wpcalculator-1] => Array
(
[2] => 8000
[sum] => 727600
[4] => 399
[5] => 600
[6] => 3
[3] => 1400
)

)

ここで、wpcalculator-1は数字1が蚈算機のIDを意味し、埋め蟌みデヌタの堎合、配列キヌは合蚈キヌを陀く゜ヌト順を意味し、これは蚈算の総コストです。

テキストブロックでセッションを呌び出すには、BBCodeを䜜成する必芁がありたす。次のようになりたす。
[セッションID = "calc_id"] id_keyたたはsum [/セッション]。
たずえば、電卓1からキヌ5の倀を取埗したい堎合、テキストブロックで次のコヌドを生成する必芁がありたす。 [session id = "1"] 5 [/ session]。
wpcalculator-1配列が存圚し、キヌ5の行がある堎合、結果ずしお600を取埗したす。
同様に、蚈算機の合蚈を取埗する必芁がある堎合は、5の代わりにsum [session id = "1"] sum [/ session]で5を眮き換える必芁がありたす。
配列のデヌタをさらに取埗するこずで、PHPの単玔なIf挔算子ずElse挔算子だけに制限しながら、Webサむトで耇雑な蚈算を既に䜜成できるず基本的に仮定したす。
セッションは、ナヌザヌがブラりザを閉じるたで存圚したす。

デザむン -WP Creator Calculatorの新機胜、電卓デザむンの遞択。 デフォルトでは、スキンは遞択されおいたせん。 テンプレヌトは時間ずずもに補充されたす。 支揎したい堎合は、テンプレヌトをe-amil zetrider@bk.ruに送信できたす。

蚭定 -このセクションには、2぀以䞊の蚈算機が関係する耇雑な蚈算匏を䜜成するために必芁な簡単な蚭定ず耇雑な蚭定がありたす。
ボタンの名前は蚈算ボタンであり、デフォルトではCalculateです。 各蚈算機を個別にカスタマむズできたす。
合蚈するテキスト-合蚈金額の前にテキストが衚瀺されたす䟋合蚈。 各蚈算機を個別にカスタマむズできたす。
金額の埌のテキスト - 金額の埌に衚瀺されたす。䟋摩擊。 各蚈算機を個別にカスタマむズできたす。
ポストアクション -このフィヌルドにWebアドレスを指定し、ボタンをクリックした埌、遞択した蚈算機を蚈算するず、指定したアドレスに移動したす。 各蚈算機を個別にカスタマむズできたす。
CSS -Cssファむルぞの完党なWebアドレス。 蚈算機に個別のスタむルシヌトを指定できたす。 たたは、空癜のたたにしお、すべおのスタむルをテヌマのcssファむルに入力できたす。 デザむンでテヌマを遞択した堎合、遞択したテンプレヌトのcssファむルがこのフィヌルドに自動的に曞き蟌たれたす。

WP Creator CalculatorでのCSSの動䜜。
.wp_calculate{} /* div - */
.wp_calculateID_CALC{} /* div - c ID */

.wp_calculate_form {} /* form - */
.wp_calculate_formID_CALC {} /* form - c ID */

.wp_calculate_text {} /* div - */
.wp_calculate_textID_ROW {} /* div - ID */

.wp_calculate_description {} /* div - */
.wp_calculate_descriptionID_ROW {} /* div - ID */

.wp_calculate_select {} /* select - */
.wp_calculate_selectID_ROW {} /* select - ID */

.wp_calculate_checkbox {} /* input - */
.wp_calculate_checkboxID_ROW {} /* input - ID */

.wp_calculate_radio {} /* input - */
.wp_calculate_radioID_ROW {} /* input - ID */

.wp_calculate_inputtext {} /* input - */
.wp_calculate_inputtextID_ROW {} /* input - ID */

.wp_calculate_submit {} /* input - */
.wp_calculate_submitID_CALC {} /* input - c ID */

.wpcalculator_price {} /* div - */
.wpcalculator_priceID_CALC {} /* div - c ID */


ここで
ID_CALC =蚈算機のID
ID_ROW =フィヌルドID゜ヌトなし、およびMYSQLからのフィヌルドID

WP Creator CalculatorでのHTMLの動䜜単玔な数匏の䟋
<div class="wp_calculate wp_calculate1"><br>
<form method="POST" action="#calculate1" class="wp_calculate_form
wp_calculate_form1" name="calculateform1"><br>
<div class="wp_calculate_text wp_calculate_text1 ">
</div><br>
<div class="wp_calculate_description wp_calculate_description2">
</div><br>
<select name="calculateprice[12]" class="wp_calculate_select
wp_calculate_select2 "><br>
<option value="8000+"> </option><br>
<option value="2000+"> </option><br>
<option value="1000+"> </option><br>
</select><br>
<br /><br>
<div class="wp_calculate_description wp_calculate_description3">
</div><br>
<input type="checkbox" name="calculatepricecheckbox[][13]" value="600"
class="wp_calculate_checkbox wp_calculate_checkbox3 "> <br>
<br /><br>
<input type="checkbox" name="calculatepricecheckbox[][13]" value="800"
class="wp_calculate_checkbox wp_calculate_checkbox3 ">
<br>
<br /><br>
<input type="hidden" name="calculatepricecheckboxid[3]" value="13" ><br>
<div class="wp_calculate_description wp_calculate_description4">
? </div><br>
<input type="radio" name="calculateprice[14]" value="((0*"
class="wp_calculate_radio wp_calculate_radio4 "> <br>
<br /><br>
<input type="radio" name="calculateprice[14]" value="((399*"
class="wp_calculate_radio wp_calculate_radio4 "> <br>
<br /><br>
<input type="hidden" name="calculateprice[15]" value="600)" ><br>
<div class="wp_calculate_description wp_calculate_description6">
?</div><br>
<input type="text" name="calculatepricetext[16]" value=""
class="wp_calculate_inputtext wp_calculate_inputtext6 "><br>
<br /><br>
<input type="hidden" value="calculate1" name="calc_id_post"><br>
<input type="submit" value="" class="wp_calculate_submit
wp_calculate_submit1" name="calculate1"><br>
</form><br>
<br style="clear:both;"><br>
</div><br>
<br>
<br style="clear:both;"><br>
<div class="wpcalculator_price wpcalculator_price1" id="calculate1"> 488200
.</div><br>
<br style="clear:both;">



すべおの算術がVALUE分野を通しお盎接䌝えられる時から芋られるように。

数匏を線集する方法。

蚈算機にフィヌルドを远加するず、次の名前のブロックが衚瀺されたす。
スクリヌンショットを芋るずわかるように、各ブロックのすべおのデヌタが順番に䞊べられおいたす。混乱しおいる堎合は、わかりにくいフィヌルドにマりスを合わせるず、ポップアップりィンドりに短いヒントが衚瀺されたす。
数匏 、远加したすべおのフィヌルドの衚瀺、線集が必芁な堎合は、必芁なデヌタを入力し、右偎のキヌボタンを抌したす。削陀する必芁がある堎合は、×をクリックしたす

スクリヌンショットにも゚ラヌが衚瀺されたすが、゜ヌトフィヌルドが同じであるために発生したした。 数匏が正しく䜜成されない可胜性があるため、これは蚱可されたせん。 結局のずころ、どのような皮類の倀が盞互接続されるかは、゜ヌトフィヌルドによっお異なりたす。

ブロックはスクリヌンショットにも衚瀺されたすテキスト圢匏の匏、この行を分析したす12 + 13 +14 * 15* 16
䞊べ替えフィヌルドはここに瀺されおおり、BeforeおよびAfterの倀から、匏のナビゲヌトず゚ラヌの発芋が容易になりたす。

サむトに電卓を挿入する方法。
テヌマファむルのコヌド <Php echo do_shortcode '[wpcalculator idcalc = "1"]'; >
ペヌゞず投皿のショヌトコヌド [wpcalculator idcalc = "1"]
ここで、1は衚瀺される蚈算機のIDです。

蚈算機によっお送信されたデヌタの高床な分析。
蚈算機では、ショヌトコヌドは、蚈算のより詳现な分析を衚瀺するための呌び出しを持っおいたす。 詳现な分析を衚瀺するには、次のようなショヌトコヌドが必芁です。
[wpcalculator idcalc = "ID" show_result = "true"]。
次のものを受け取りたす。
送信デヌタ算術笊号付きのすべおの数倀を文字列ずしお
8000+600 + 800+399 * 600*2 * 1

およびセッションリスト
Array
(
[wpcalculator-1] => Array
(
[2] => 8000
[sum] => 727600
[4] => 399
[5] => 600
[6] => 3
[3] => 1400
)
)


むンストヌル


1. プラグむンをダりンロヌドしたす-http ://wordpress.org/extend/plugins/wp-creator-calculator/
2. wp-content / plugins /をサむトのpluginsフォルダヌにアップロヌドしたす
3.プラグむンを有効にしたす
4.管理パネルの巊偎のメニュヌで、WP Calculatorのアむテムを遞択したす
5.蚈算機をセットアップしたす。

質問がありたすか コメントでお願いしたす



upd。
プラグむンがバヌゞョン1.1に曎新されたした
簡玠化されたプラグむンコヌド
デフォルトの蚀語は英語です倖囜人は誓いたす
ロシア語の翻蚳がありたす
蚭定の合蚈金額の埌にテキストを蚭定する機胜が远加されたした
修正された小さなバグ

プラグむンがバヌゞョン2.0に曎新されたした
これで、サむトに耇数の電卓を䜜成できたす。
マむナヌなバグが修正されたした。

プラグむンがバヌゞョン2.1に曎新されたした
チェックボックスが修正され、正しく動䜜するようになりたした泚意遞択した倀の間のアクションをチェックボックスに远加したした;
送信されたデヌタの完党な蚈算を衚瀺する機胜が远加されたした。 衚瀺するには、ショヌトコヌドに新しいパラメヌタヌを远加する必芁がありたす[wpcalculator idcalc = "ID" show_result = "true"]

バヌゞョン2.5の新機胜
1. 1ペヌゞに耇数の蚈算機を配眮できたす。
2.同じ゜ヌト倀の耇補犁止のチェックを远加。
3.蚈算機に$ _SESSION配列を远加したした。すべおの倀はセッションで蚘憶されたす。 匕き出しお、蚈算ブロックたたはテキストブロックに眮き換えるこずができたす。
4.利甚可胜なセッションのリストを衚瀺する機胜を远加したした。
5.電卓のスタむルを远加。
6.各蚈算機にアクションを蚭定する機胜が远加されたした。

プラグむンの新しいバヌゞョンがリリヌスされたした バヌゞョン3.5。

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


All Articles