函数文档

wp_shake_js()

💡 云策文档标注

概述

wp_shake_js() 函数用于在登录页面输出处理表单抖动效果的 JavaScript 代码。它通过 wp_print_inline_script_tag() 添加一个内联脚本,为表单元素添加 'shake' 类。

关键要点

  • wp_shake_js() 在 WordPress 3.0.0 版本引入,用于登录表单的抖动动画。
  • 该函数通过 wp_print_inline_script_tag() 输出 JavaScript 代码,为表单添加 'shake' CSS 类。
  • 可以通过 remove_action() 移除抖动效果,例如在 login_footer 或 login_head 钩子上操作。

代码示例

// 移除登录页面抖动效果的示例代码
function wpdocs_login_remove_shake_effect() {
    remove_action( 'login_footer', 'wp_shake_js', 12 );
}
add_action( 'login_footer', 'wpdocs_login_remove_shake_effect', 1 );

注意事项

  • 用户贡献笔记指出,移除抖动效果的正确钩子是 login_footer,而非 login_head,使用时需注意钩子名称的准确性。
  • wp_shake_js() 依赖于 wp_print_inline_script_tag() 函数,确保 script-loader.php 已加载。

📄 原文内容

Outputs the JavaScript to handle the form shaking on the login page.

Source

function wp_shake_js() {
	wp_print_inline_script_tag( "document.querySelector('form').classList.add('shake');" );
}

Changelog

Version Description
3.0.0 Introduced.

User Contributed Notes

  1. Skip to note 4 content

    Remove the Login Page Shake.
    The login form shakes when the user submits the wrong login credentials; if you don’t want this feature, you can remove using:

    function wpdocs_remove_login_shake() {
    	remove_action( 'login_head', 'wp_shake_js', 12 );
    }
    add_action( 'login_head', 'wpdocs_remove_login_shake' );