{"id":849,"date":"2020-10-30T13:30:02","date_gmt":"2020-10-30T13:30:02","guid":{"rendered":"https:\/\/potatodie.nl\/diffuse-write-ups\/?p=849"},"modified":"2020-11-01T08:44:46","modified_gmt":"2020-11-01T08:44:46","slug":"remove-login-shake-effect-wordpress","status":"publish","type":"post","link":"https:\/\/potatodie.nl\/diffuse-write-ups\/remove-login-shake-effect-wordpress\/","title":{"rendered":"Remove login shake effect WordPress"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">If you search for a way to get rid of the shake effect of the WordPress login form when the input is erroneous you&#8217;ll find this snippet everywhere:<\/p>\n\n\n<div class=\"wp-block-advanced-gutenberg-blocks-code\">\n  <header class=\"wp-block-advanced-gutenberg-blocks-code__header\">\n    <div class=\"wp-block-advanced-gutenberg-blocks-code__lang is-lang-php\">\n      PHP    <\/div>\n    <div class=\"wp-block-advanced-gutenberg-blocks-code__file\">\n          <\/div>\n  <\/header>\n  <textarea \n    class=\"wp-block-advanced-gutenberg-blocks-code__source\" \n    name=\"codemirror-1054659107\" \n    id=\"codemirror-1054659107\"\n  >function wpb_remove_loginshake() {\n    remove_action(&#039;login_head&#039;, &#039;wp_shake_js&#039;, 12);\n}\nadd_action(&#039;login_head&#039;, &#039;wpb_remove_loginshake&#039;);<\/textarea>\n  <script>\n    CodeMirror.fromTextArea( document.getElementById('codemirror-1054659107'), {\n      mode: 'php',\n      readOnly: true,\n      theme: 'hopscotch', \n      lineNumbers: true,\n      firstLineNumber: 1,\n      matchBrackets: true,\n      indentUnit: 4,\n      tabSize: 4,\n      lineWrapping: true,\n    } ); \n  <\/script>\n<\/div>\n\n\n\n<p class=\"wp-block-paragraph\">That used to work but the action has moved to <code>login_footer<\/code> (since somewhere aound WP 5).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So this&#8217;ll work:<\/p>\n\n\n<div class=\"wp-block-advanced-gutenberg-blocks-code\">\n  <header class=\"wp-block-advanced-gutenberg-blocks-code__header\">\n    <div class=\"wp-block-advanced-gutenberg-blocks-code__lang is-lang-php\">\n      PHP    <\/div>\n    <div class=\"wp-block-advanced-gutenberg-blocks-code__file\">\n          <\/div>\n  <\/header>\n  <textarea \n    class=\"wp-block-advanced-gutenberg-blocks-code__source\" \n    name=\"codemirror-1035099881\" \n    id=\"codemirror-1035099881\"\n  >\/*\n * Don&#039;t shake login form on error\n * Used to be login_head, it&#039;s login_footer now\n *\/\nadd_action(&#039;login_footer&#039;, function () {\n\tremove_action(&#039;login_footer&#039;, &#039;wp_shake_js&#039;, 12);\n});<\/textarea>\n  <script>\n    CodeMirror.fromTextArea( document.getElementById('codemirror-1035099881'), {\n      mode: 'php',\n      readOnly: true,\n      theme: 'hopscotch', \n      lineNumbers: true,\n      firstLineNumber: 1,\n      matchBrackets: true,\n      indentUnit: 4,\n      tabSize: 4,\n      lineWrapping: true,\n    } ); \n  <\/script>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>If you search for a way to get rid of the shake effect of the WordPress login form when the input is erroneous you&#8217;ll find this snippet everywhere: That used to work but the action has moved to login_footer (since somewhere aound WP 5). So this&#8217;ll work:<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-849","post","type-post","status-publish","format-standard","hentry","category-wordpress"],"acf":[],"_links":{"self":[{"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/posts\/849","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/comments?post=849"}],"version-history":[{"count":1,"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/posts\/849\/revisions"}],"predecessor-version":[{"id":850,"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/posts\/849\/revisions\/850"}],"wp:attachment":[{"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/media?parent=849"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/categories?post=849"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/potatodie.nl\/diffuse-write-ups\/wp-json\/wp\/v2\/tags?post=849"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}