Hướng dẫn how to pass data from one page to another in wordpress - cách chuyển dữ liệu từ trang này sang trang khác trong wordpress

Đã dành khoảng một ngày để tìm ra cách làm điều này, tôi nghĩ rằng nó có thể hữu ích cho những người khác trong cộng đồng Stackoverflow.

Mục tiêu: Lấy kết quả từ trường biểu mẫu và sử dụng nó trên một trang khác. Trong ví dụ này, khách hàng của tôi muốn người dùng có thể điền vào bất kỳ số tiền nào trong trường văn bản để thực hiện thanh toán PayPal. Tôi đang sử dụng plugin S2Member để tạo các nút và kết nối các khoản thanh toán PayPal, nhưng họ không cung cấp chức năng này -các nút chỉ với số tiền có dây cứng. Bạn có thể thấy điều này trong hành động tại đây: http://virginiabloom.com/?page_id=250. Nhưng nó là trực tiếp. Nếu bạn bắt đầu thanh toán PayPal, nó sẽ khấu trừ tiền từ tài khoản của bạn. Điều này sẽ làm cho Virginia rất hạnh phúc. Cách tôi giải quyết nó: Đầu tiên, tôi đã tạo một biểu mẫu chỉ cho trường này. Nhập số tiền thanh toán khác $
http://virginiabloom.com/?page_id=250 . But it is LIVE. If you start a paypal payment, it WILL deduct money from your account. Which will make Virginia very happy. HOW I SOLVED IT: First, I created a form just for this field. Enter Other Payment Amount $

Tiếp theo, tôi tìm thấy một plugin rất đơn giản trên StackOverflow và điều chỉnh nó theo nhu cầu của tôi:

Lưu ý: Thay đổi thông tin URL và ID trang trong tiêu đề để trỏ đến trang WordPress bạn muốn gửi thông tin đến. Nếu bạn không biết cách cài đặt plugin theo cách thủ công, thì nó rất đơn giản. Lưu đoạn trích dưới dạng tệp .php. Mở tài khoản lưu trữ của bạn và tìm thư mục plugins (nó trong thư mục nội dung WP) sao chép tệp vào thư mục. Quay lại WordPress và nhìn vào các plugin của bạn. Bạn sẽ thấy nó ở đó. Nếu nó không được kích hoạt, kích hoạt nó.

Tôi đã cài đặt một plugin khác: Cho phép PHP trong các bài đăng và trang (phiên bản 3.0.4)

Sau khi cài đặt nó, plugin sẽ xuất hiện trên menu WordPress. Mở nó và bạn có thể sử dụng nhà sản xuất đoạn trích của họ sẽ đưa PHP vào bài đăng của bạn trong một mã ngắn. Cấu hình: Hiển thị thông báo không tìm thấy đoạn trích: Có (để gỡ lỗi) Sử dụng cũ (Pre.2.2 Mã: Không sử dụng Phương thức bộ lọc nâng cao: Có xóa tất cả dữ liệu plugin trên Cài đặt: Không bạn nên thấy hộp đoạn mã xuất hiện ở phía dưới của trang. Đoạn trích của tôi rất đơn giản. Tôi chỉ muốn lặp lại tham số "số tiền" từ url trang. Vì vậy, nó trông như thế này:
Show the snippet not found message: yes (for debugging) Use the old (pre.2.2 code: no Use the advanced filter method: yes Remove all plugin data on install: no You should see the code snippet box appear at the bottom of the page. My snippet was simple. I just wanted to echo the "amount" parameter from the page url. So it looked like this:

echo $_GET['amount']?>

Lưu ý rằng bạn phải đặt thẻ PHP kết thúc, nhưng không phải là thẻ bắt đầu. Bây giờ, bạn chỉ cần sử dụng shortcode [function php = 1] trên trang bất cứ nơi nào bạn muốn nhận tham số này.

Đây là những gì nó trông giống như trên trang kết quả của tôi.

Payment of $ [php function=1]

Click Paypal button to start payment or cancel. [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" /]

Để đảm bảo rằng người dùng chỉ có thể nhập các số thập phân, tôi đã sử dụng xác thực jQuery trên biểu mẫu. Có nhiều cách khác để làm điều đó, nhưng điều này rất đơn giản. Chỉ cần đặt mã này trên trang với biểu mẫu mà tôi đã đưa dưới đây.

 
Enter Other Payment Amount $

Đó là nó! Tôi hi vọng nó sẽ giúp ích cho mọi người.

  • Tôi đang cố gắng chuyển một giá trị từ việc chọn thả xuống trên biểu mẫu HTML sang trang khác sau khi nhấp vào nút Gửi. Giá trị này không cần phải được lưu trữ trong cơ sở dữ liệu, nhưng thay vào đó, được sử dụng tạm thời để hiển thị lựa chọn dữ liệu sản phẩm của người dùng từ cơ sở dữ liệu trên trang tiếp theo. Đầu ra HTML của biểu mẫu hoạt động như mong đợi với giá trị xuất hiện trong giá trị tùy chọn, tôi chỉ có thể nhận được nó để đăng giá trị đó và tìm nạp nó từ trang hai bằng cách sử dụng bài viết. Nhưng nếu tôi thay đổi bài để có được. Nó hoạt động như mong đợi. Tôi đã được thông báo sử dụng bài viết được ưa thích, nhưng tôi dường như không thể làm điều đó hoạt động ?:

    Biểu mẫu hiển thị trên trang 1:

    ';
    echo '';
    echo '
    '; echo ''; echo '
    '; echo '';

    Đầu ra trên trang 2:

    YOU SELECTED:' . esc_html( $selectedProduct ) .'
  • ';

    Khi thực hiện VAR_DUMP ($ _ Post); Trên trang2, tôi nhận được một empty array(0){}

    Và lỗi PHP khi đăng: Lỗi khi đăng:
    error when it is posting:

    Lỗi cơ sở dữ liệu WordPress:

    Cột không xác định ‘selectuctuct, trong Danh sách trường để cập nhật truy vấn myDBtable Đặt selectproduct = xông 39, trong đó id = 39

    Tôi làm sai ở đâu?

    Làm thế nào để chuyển dữ liệu từ trang này sang trang khác trong WordPress?

    Nhập nội dung..
    Đăng nhập vào bảng điều khiển WP-Admin của trang web đích ..
    Di chuột qua các công cụ ..
    Nhấp vào nhập ..
    Nhấp vào WordPress ..
    Nhấp vào Cài đặt ngay bây giờ và/hoặc chạy nhà nhập khẩu.Nếu bạn chưa cài đặt nhà nhập khẩu WordPress, bạn sẽ thấy lời nhắc cài đặt plugin và phải làm như vậy trước khi tiếp tục ..

    Làm cách nào để thêm các tham số URL trong WordPress?

    Có hai cách để sử dụng chức năng này;hoặc một khóa và giá trị duy nhất, hoặc một mảng kết hợp.add_query_arg (mảng ('key1' => 'value1', 'key2' => 'value2',), 'http://example.com');Bỏ qua URL từ các kết quả sử dụng trong URL hiện tại đang được sử dụng (giá trị của $ _Server ['request_uri']).add_query_arg( array( 'key1' => 'value1', 'key2' => 'value2', ), 'http://example.com' ); Omitting the URL from either use results in the current URL being used (the value of $_SERVER['REQUEST_URI'] ).