花了大概一天的時間搞清楚如何做到這一點,我認爲這可能會有助於其他人在stackoverflow社區。
目標:從表單字段獲取結果並在另一頁上使用它。 在本例中,我的客戶希望用戶能夠在文本字段中填寫任何金額以進行PayPal付款。我使用S2Member插件來創建按鈕並連接Paypal付款,但他們沒有提供這種功能 - 只有硬連線的按鈕。 你可以在這裏看到這個動作:
http://virginiabloom.com/?page_id=250。但它是現場。如果您啓動了PayPal付款,它將從您的帳戶扣除資金。這將使弗吉尼亞州非常高興。我如何解決它: 首先,我爲此字段創建了一個表單。 輸入其它支付金額$
接下來,我發現計算器一個非常簡單的插件,它適合我的需求:
<?php
/*
Plugin name: redirect on post
Desciption:
http://stackoverflow.com/questions/13686245/how-to-create-a-custom-url-based-on-dropdown-in-wordpress-form-submission
I-changed-dropdown-to-field-input
*/
function redirect_on_submit() {
// check if the post is set
if (isset($_POST['amount']) && ! empty ($_POST['amount']))
{
header("Location: yourUrl.com/?
page_id=542&amount=" . $_POST['amount']);
}
}
add_action('init', redirect_on_submit);
注:更改頁面URL和ID信息的頭指向Wordpress頁面你想發送的信息。 如果你不知道如何手動安裝一個插件,它非常簡單。 將該片段另存爲.php文件。打開您的主機帳戶並查找插件文件夾(位於wp-content文件夾中)將文件複製到文件夾中。 回到Wordpress並看看你的插件。你應該在那裏看到它。如果沒有激活,激活它。
我安裝其它插件: 允許在文章和網頁PHP(版本3.0.4)
安裝後,該插件將出現在WordPress的菜單上。 打開它,你可以使用他們的代碼片斷製造商,將短的代碼中的PHP到您的文章。 配置:
顯示片斷沒有找到消息:是的(調試) 使用舊的(pre.2.2代碼:沒有 使用先進的過濾方法:是 刪除上安裝的所有插件資料:無 您應該看到代碼片段框出現在頁面的底部。 我的代碼很簡單。我只是想在頁面url中回顯「amount」參數。所以它看起來像這樣:
echo $_GET['amount']?>
請注意,你必須把結尾php標記,但不是開始標記。 現在,您只需在頁面上使用簡碼[php function = 1],您可以在任何地方獲得該參數。
下面是我的結果頁面上的外觀。
<h2>Payment of $ [php function=1]</h2>
<strong><em>Click Paypal button to start payment or cancel.</em></strong>
[s2Member-PayPal-Button sp="1" ids="xxx" exp="24" desc="Payment" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="yoururl.com"
ra="[php function=1]" image="default" output="button" /]
爲了確保用戶能夠在十進制數只進不出,我使用的形式jQuery驗證。還有其他方法可以做到這一點,但這很簡單。只需將這些代碼放在頁面上,其格式如下所示。
<form id="myform" action="http://virginiabloom.com/?page_id=542" method="post"><span style="font-size:1.5em;">Enter Other Payment Amount $</span><input id="amount" class="left" name="amount" type="text" /><input type="submit" value="Submit" /></form>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://jquery.bassistance.de/validate/jquery.validate.js"></script>
<script src="http://jquery.bassistance.de/validate/additional-methods.js"></script>
<script>
$("#myform").validate({
rules: {
amount: {
required: false,
number: true
}
}
});
</script>
就是這樣!我希望這有助於某人。
該URL是否在瀏覽器中運行? – 2012-02-03 10:26:16
是的。我的作品,我已經提到它在問題發佈... – Rajat 2012-02-03 10:33:22
你的WordPress的頁面可能是做一個重定向然後。按提交後,瀏覽器欄中的URL是什麼? – 2012-02-03 10:36:07