最近WordPress 3.0にアップグレードしましたが、 'クイック編集'(例:/wp-admin/edit.php)で投稿を編集するときにオートコンプリート機能に関して多くの問題を抱えています - 例えばタグの編集。オートコンプリートボックスは、私がテキストを入力しようとしているテキストボックスを覆い隠すことが多く、「更新」ボタンをクリックすると「置き去り」になることがあります。
オートコンプリートを無効にする方法はありますか?
_アップデート_
明確にするために、これはWordpressオートコンプリート機能であり、ブラウザベースのの機能ではありません。
アップデート2
これは、各管理ページの下部にある「load-scripts.php」の「suggest」引数を削除する必要があるかのように見えます。
<script type='text/javascript'
src='http://www.example.com/path/to/wordpress/wp-admin/load-scripts.php?c=1&load=hoverIntent,common,jquery-color,suggest,inline-edit-post'>
</script>
それは以下によって生成されるようです。
do_action('admin_print_footer_scripts');
しかし、私はその時点でコードの痕跡を失います - 誰か?
私がテストした解決策があり、それはうまくいきます。
タグのオートコンプリートは現在、ファイルadmin-ajax.phpへのajaxリクエストによって行われています。私が提案する解決策は、リクエストが結果を返さないようにリクエストの処理をブロックすることです。私はします:
function no_tag_suggest() {
if( DOING_AJAX == true && $_GET['action'] == 'ajax-tag-search' && $_SERVER['HTTP_REFERER'] == admin_url( 'edit.php' ) ) {
die;
}
}
add_action('admin_init', 'no_tag_suggest');
前の関数は検証します:
これら3つの条件が満たされると、結果は返されず、タグ候補は表示されません。
'wp-admin/edit.php'だけでなく、すべてのページからこのオートコンプリートを削除したい場合は、次のようにします。
function no_tag_suggest() {
if( DOING_AJAX == true && $_GET['action'] == 'ajax-tag-search' ) ) {
die;
}
}
add_action('admin_init', 'no_tag_suggest');
'admin-ajax.php'のコードを見て、そこにあるすべての 'action'パラメーターを確認してください。したがって、同様の方法ですべてのajaxリクエストを削除できます。
私の説明がはっきりしていることを願っています。あなたがより多くの詳細が欲しいか、または質問があるかどうか私に尋ねることを躊躇しないでください。
私にとって恩恵? :)
ブラウザで無効にするか、WPソースを迂回して問題のボックスにこのautocomplete
属性を追加することができます。
<input autocomplete="off" />
あるいは、greasemonkeyを使用してページを修正し、上記の方法でオートコンプリートを無効にすることもできます。
このプラグインを使うことができます:
タグ未完成
http://wordpress.org/extend/plugins/tag-uncomplete/
これは非常に多数のタグ用語を持っている人々のために意図されていますが、それはまさにあなたが望むものを行います
サーバーからの応答を無効にすることができます。{ sorich87が説明したとおり 、またはAJAX要求を開始するJavaScriptを無効にする(より複雑な)方法を試すことができます。 suggest
ライブラリ を削除するだけでは、suggest
関数を呼び出す variousplaces はおそらく失敗するので、何もしないスタブ関数に置き換えるべきです。 。
Html要素にattr
を渡すことができます。
$('#register_username').attr('autocomplete','off');
オートコンプリート _は_ ブラウザ機能ですが、入力フィールドパラメータです。
WebサイトがPCIコンプライアンス標準を満たす必要がある場合、オートコンプリートが入力フィールドでオンになっていると、誰のブラウザに関係なく、PCIはFAILになります。