
內容簡介
某些應用程式(例如電子商務網站)可能有超過一千個以上的管理表單參數需要提交。PHP 預設只設定接受一千個參數,因此一些提交的資料可能會遺失。
大多數應用程式沒有檢查是否已接收到所有資料,因此資料容易受到破壞,而且可能會無聲無息地遺失。例如,擁有 40 種變化的 WooCommerce 產品可能有超過 1300 個提交的表單項目,當您儲存產品時,您不知道那些資料的大部分都被丟棄了。
幸運的是,在 php.ini 中接受的最大參數數量可以更改。
問題是,許多網站擁有者直到太晚才知道需要這樣做,他們的應用程式(例如 WooCommerce 商店)已經失去了一半的產品變體。
如果在您的網站上使用 php.ini,則該檔案需要在 / wp-admin 目錄中,因為這是管理表單提交的地方。
為了保護自己並確保伺服器限制不會無意中捉住您,請安裝此外掛,並讓它在後台運行。每次您嘗試在管理頁面上提交表單(例如更新具有許多變體的 WooCommerce 產品)時,此外掛將檢查您準備提交的表單參數數量是否超過伺服器限制。如果超過,它將通知您,並提供您暫停提交的機會,同時您可以增加伺服器設定。上面的連結描述了如何在伺服器上設定限制。詳細資訊請參閱常見問題集。
此外掛已在 PHP5.4 上進行測試,但是編寫為與 PHP5.3 兼容。項目存儲庫在此:
https://github.com/academe/wp-max-submit-protect
注意:啟用 Gravity Forms 的「不衝突模式」將停用此外掛。您可能有使用該設置的原因,但這將禁用大多數其他外掛,其中一些可能與安全有關。
請讓我知道此外掛對您的工作效果如何,您是否喜歡它,以及如何改進它。
外掛標籤
開發者團隊
原文外掛簡介
Some appications, such as ecommerce sites, can have administration forms that submit well over a thousand
parameters. PHP, by default, is set to accept only one thousand parameters and so some of the submitted data can get lost.
Most applications don’t check whether they received everything, and so data can get broken easily and silently.
A WooCommerce product with 40 variations can have over 1300 submitted form items, and when saving the product you have no idea that much of that data is being discarded.
Luckily the maximum number of accepted parameters can be changed in php.ini
The problem is, many site owners have no idea this needs to be done until it is too late and their application,
for example their WooCommerce store, has lost half its product variations.
If using php.ini on your site, the file needs to be in the /wp-admin directory as that is where the admin forms are submitted to.
To protect yourself and make sure the server limit does not catch
you unawares, install this plugin and let it run in the background. Each time you try to submit a form in the
admin pages (e.g. updating a WooCommerce product with lots of variatrions) this plugin will check that the
number of form parameters you are about to submit does not exceed the server limit. If it does, then it
will inform you and give you the opportunity to postpone the submit while you increase the server settings.
The link above describes how to set the limits on the server. More details in the FQAs.
This plugin has been tested against PHP5.4 but is written to be compatible with PHP5.3. The project repository is here:
https://github.com/academe/wp-max-submit-protect
Note: turning on the Gravity Forms’ “”No-Conflict Mode” will disable this plugin. You may have reasons for using that setting, but it will disable most other plugins, some of which may be security-related.
Please let me know how this plugin works for you, whether you like it, and how it can be improved.
