web-dev-qa-db-ja.com

オートコンプリートを無効にできますか?

最近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&amp;load=hoverIntent,common,jquery-color,suggest,inline-edit-post'>
</script>

それは以下によって生成されるようです。

do_action('admin_print_footer_scripts');

しかし、私はその時点でコードの痕跡を失います - 誰か?

3
Bobby Jack

私がテストした解決策があり、それはうまくいきます。

タグのオートコンプリートは現在、ファイル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');

前の関数は検証します:

  1. ajaxリクエストの場合
  2. アクションパラメータが 'ajax-tag-search'の場合
  3. 参照元URLが「/wp-admin/edit.php」ページの場合

これら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リクエストを削除できます。

私の説明がはっきりしていることを願っています。あなたがより多くの詳細が欲しいか、または質問があるかどうか私に尋ねることを躊躇しないでください。

私にとって恩恵? :)

5
sorich87

ブラウザで無効にするか、WPソースを迂回して問題のボックスにこのautocomplete属性を追加することができます。

<input autocomplete="off" />

あるいは、greasemonkeyを使用してページを修正し、上記の方法でオートコンプリートを無効にすることもできます。

1
Ben Everard

このプラグインを使うことができます:

タグ未完成

http://wordpress.org/extend/plugins/tag-uncomplete/

これは非常に多数のタグ用語を持っている人々のために意図されていますが、それはまさにあなたが望むものを行います

0
Tom J Nowell

サーバーからの応答を無効にすることができます。{ sorich87が説明したとおり 、またはAJAX要求を開始するJavaScriptを無効にする(より複雑な)方法を試すことができます。 suggestライブラリ を削除するだけでは、suggest関数を呼び出す variousplaces はおそらく失敗するので、何もしないスタブ関数に置き換えるべきです。 。

0
Jan Fabry

Html要素にattrを渡すことができます。

$('#register_username').attr('autocomplete','off');
0
user57366

オートコンプリート _は_ ブラウザ機能ですが、入力フィールドパラメータです。

WebサイトがPCIコンプライアンス標準を満たす必要がある場合、オートコンプリートが入力フィールドでオンになっていると、誰のブラウザに関係なく、PCIはFAILになります。

0