WordPress 4.5로 업데이트 한 후 콘솔에 "JQMIGRATE : Migrate is ..."라는 성가신 문제
-
-
매우 유용한 OCD에 +1하십시오.이것은 아마도jquery 마이그레이션/백 워드 호환성 스크립트에서 비롯된 것입니다.축소되지 않은/개발 버전을 사용할 가능성이 있습니까?+1 to your very useful OCD. This probably come from the jquery migration/backward compatibility script. Any chance you use unminified/dev version of it?
- 0
- 2016-04-24
- Mark Kaplun
-
마이그레이션의 축소되지 않은 버전?내가 아는 한 아니,플러그인이 될 수 있지만 검사시 나는 그것을 볼 수 없습니다 : \Unminified version of migrate? Not to my knowledge no, it could be some plugins, but upon inspection I don't see any of it :\
- 0
- 2016-04-24
- dingo_d
-
두 버전 모두 WP 디렉토리에 있습니다 :`/wp-admin/js/jquery/jquery-migrate.js` 및`/wp-admin/js/jquery/jquery-migrate.min.js`note both versions are in WP dirs: `/wp-admin/js/jquery/jquery-migrate.js` and `/wp-admin/js/jquery/jquery-migrate.min.js`
- 1
- 2016-04-25
- majick
-
6 대답
- 투표
-
- 2016-04-24
WordPress는jQuery 마이그레이션 스크립트를 사용하여 최신 버전의jQuery에서 제거 된 기능을 사용하는 플러그인 또는 테마에 대한 하위 호환성을 보장합니다.
WordPress 4.5 출시와 함께 v1.2.1 에서 v1.4.0 -코드를 빠르게 스캔하면 압축되지 않은 및 <둘 다에서
migrateMute
옵션이 설정되었는지 여부에 관계없이 v1.4.0에서 스크립트가로드 된 것을 기록합니다./em> 축소 된 버전알림을 제거하는 유일한 방법은 모든 플러그인/테마 코드가 이전jQuery 기능에 의존하지 않는지 확인한 다음 마이그레이션 스크립트를 제거하는 것입니다. 플러그인 이 있습니다. 하지만 이것은 테마의 함수 파일이나 이와 유사한 곳에 배치 할 수있는 아주 간단한 방법입니다.
add_action('wp_default_scripts', function ($scripts) { if (!empty($scripts->registered['jquery'])) { $scripts->registered['jquery']->deps = array_diff($scripts->registered['jquery']->deps, ['jquery-migrate']); } });
이것은 WordPress 개발에 대한 모범 사례로 간주되지 않으며 개발자 콘솔을 깨끗하게 유지하기 위해 마이그레이션 스크립트를 제거해서는 안된다고 생각합니다.
WordPress uses the jQuery migrate script to ensure backwards compatibility for any plugins or themes you might be using which use functionality removed from newer versions of jQuery.
With the release of WordPress 4.5, it appears they have upgraded the version of jQuery migrate from v1.2.1 to v1.4.0 - Having a quick scan through the code reveals that v1.4.0 logs that the script is loaded regardless of whether or not the
migrateMute
option is set, in both the uncompressed and minified versions.The only way to remove the notice is to ensure all your plugins/theme code don't rely on any old jQuery functionality, and then remove the migrate script. There's a plugin out there to do this, but it's quite a simple method that can just be placed in your theme's functions file or similar:
add_action('wp_default_scripts', function ($scripts) { if (!empty($scripts->registered['jquery'])) { $scripts->registered['jquery']->deps = array_diff($scripts->registered['jquery']->deps, ['jquery-migrate']); } });
Please note that this is not considered best practice for WordPress development and in my opinion the migrate script should not be removed just for the sake of keeping the developer console clean.
-
기본적으로 내 플러그인 중 하나가 이전jQuery 버전의 일부인 기능에 의존하고 있습니까?그 기능이 무엇인지 알아내는 방법이 있습니까?아니면 마이그레이션 스크립트를 음소거해도 안전합니까?So basically one of my plugins is depending on a functionality that was a part of the old jQuery version? Is there a way to find out what that functionality is? Or am I safe to just mute the migrate script?
- 0
- 2016-04-24
- dingo_d
-
플러그인이 이전 기능에 의존하는지 여부를 확신 할 수 없습니다. WordPress는 설치에 한동안 업데이트되지 않은 플러그인이있는 경우를 대비하여 안전한 기본값으로 마이그레이션 스크립트를 포함합니다.저라면 사이트의 로컬 설치에서 마이그레이션 스크립트를 제거한 다음 모든 것이 예상대로 작동하는지 확인하여 콘솔 등에 오류가 없는지 확인합니다.I can't say for sure whether any of your plugins depend on old functionality, WordPress just includes the migrate script as a safe default in case your install has any plugins which haven't been updated in a while. If it were me I'd remove the migrate script on a local install of the site and then check everything still works as expected, ensuring there are no errors in the console etc.
- 1
- 2016-04-24
- Andy
-
나는 이것을 반대하는 것이 좋습니다.이 하위 호환성에는 이유가 있습니다.WordPress에서 더 이상 사용되지 않는 함수 파일을 삭제하는 것과 동일한jQuery입니다.* 현재 * 설정이 완전히 호환되는지 확인하는 모든 문제를 해결하는 것은 설정 변경이나 플러그인 추가를 고려하지도 않으며,생성 할 잠재적 인 문제를 고려할 때 콘솔 제거의 모호한 이점과 균형을 이루지 못합니다.로그 메시지.I recommend against this. This backwards compatibility is there for a reason. It is the jQuery equivalent of deleting deprecated functions file in WordPress. Going to all the trouble of verifying whether your *current* setup is fully compatible does not even account for changes of setup or plugin additions, and given the potential problems you'd be creating does not balance against the completely dubious benefit of removing a console log message.
- 0
- 2016-04-25
- majick
-
@majick 스크립트를 제거하는 것이 좋은 생각인지 아닌지 논의하는 것은이 답변의 범위를 벗어납니다. 이것은 특히 콘솔에서 메시지를 제거하는 방법에 대한 문제를 해결합니다.FWIW,스크립트를 제거하는 것도 나쁜 생각이라고 생각합니다.내 대답은 OP 질문에 완벽하게 대답하기 때문에 반대표가 필요하지 않다고 생각합니다.@majick It's beyond the scope of this answer to discuss whether removing the script is a good idea or not, this specifically addresses the issue of how to remove the message in the console. FWIW, I think removing the script is a bad idea also. I think the downvote is uncalled for, as my answer perfectly answers the OPs question.
- 2
- 2016-04-25
- Andy
-
미안하지만 자주 반대표를 던지지는 않지만 이것이 좋은 생각이 아닐 수 있다는 경고가없고 개발 모범 사례의 반대이기 때문에 여기에서 필요하다고 느꼈습니다 (경고를 추가하면 반대표를 제거하겠습니다.).질문은jquery 마이그레이션 자체를 제거하는 방법이 아니라 콘솔 메시지를 제거하는 방법을 묻는 것입니다.누군가 WordPress에서 업데이트 잔소리 메시지를 제거하는 방법을 물으면 "단지 WordPress 제거"라고 대답하지 않을 것입니다.sorry I don't downvote often, but felt it was needed here as there is no warning that this may not be a good idea and is the opposite of best practice in development (add a warning and i'll remove the downvote.) I believe the question is asking how to remove just the console message not how to remove jquery migrate itself. if someone asked how to remove the update nag message in WordPress you wouldn't answer "just uninstall WordPress."
- 1
- 2016-04-25
- majick
-
@majick 경고가 추가되었습니다.질문이 콘솔 메시지를 제거하는 방법을 묻는 것입니다. 제 대답은 메시지를 제거하는 유일한 방법은 스크립트를 제거하는 것입니다. 이는 기본 브라우저 기능을 다시 작성하는 경로를 따르지 않는 한 사실입니다.너의 답.@majick warning added. You're right in that the question is asking how to remove the console message, my answer states that the only way to remove the message is to remove the script, which is true unless you go down the route of rewriting native browser functions as per your answer.
- 0
- 2016-04-25
- Andy
-
문제 없음,반대표 제거.나 자신을 위해 정말로 짜증이났다면 어쨌든 완전히 제거하는 것보다 WP 업그레이드마다 마이그레이션js 파일의 메시지를 주석 처리하는 것을 선호합니다.자바 스크립트가 매우 변덕 스럽기 때문에 때로는 한 가지 문제가 발생하고 거의 모든 것이 깨지는 경우가 있습니다. 이는이를 피하기 위해 특별히 자리를 잡았을 때 이익이없는 너무 많은 위험입니다.no probs, downvote removed. for myself, if it really annoyed me, I'd prefer to just comment out the message in the migrate js file each WP upgrade over removing it entirely anyway. just because javascript is pretty temperamental, sometimes one thing out of place and almost everything breaks.. that is just too much of a risk with no gain when this is specifically in place to avoid that.
- 1
- 2016-04-25
- majick
-
이 오류 메시지는 성가 시지만 모든 새 사이트에서 제거하는 것은 시간 낭비입니다.Wordpress에 메시지를 넣은 개발자에게 다음 릴리스에서 제거하도록 친절하게 요청할 수 있다면 좋을 것입니다. :)This error message is annoying but removing it on every new site is a waste of time. It would be great if somewhere we could kindly ask a developer whoever put the message there in Wordpress to remove it in next release :)
- 0
- 2016-07-21
- Ivan Topić
-
@ IvanTopić WordPress 개발자가 추가 한 것이 아니라jQuery 팀이 추가 한 것입니다.사물의 모양에 따라 제거 할 것이 아닙니다 : https://github.com/jquery/jquery-migrate/issues/149@IvanTopić It wasn't added by any WordPress developers, it was added by the jQuery team. By the looks of things it's not something they're going to remove either: https://github.com/jquery/jquery-migrate/issues/149
- 0
- 2016-07-21
- Andy
-
- 2016-04-25
jquery-migrate.min.js
에서 로그 메시지 텍스트를 공백으로 변경할 수 있지만 핵심 업데이트시 유지되지 않습니다.대안은 마이그레이션 스크립트가로드되기 직전에
console.log
의 통과/필터 기능 복사본을 추가하고 'Migrateisinstalled <가 포함 된 로깅 메시지를 무시하도록 지시하는 것입니다./code> '. 이렇게하면 다른 Migrate 경고도 보존됩니다.
//소음기 스크립트 functionjquery_migrate_silencer () { //함수 사본 생성 $ silencer='& lt; 스크립트 > window.console.logger=window.console.log; '; //원래 함수를 수정하여 함수 복사를 필터링하고 사용 $ silencer.='window.console.log=function (tolog) {'; //오류를 방지하기 위해 비어 있으면 버그를 제거합니다. $ silencer.='if (tolog==null) {return;}'; //문자열이 포함 된 메시지 필터링 $ silencer.='if (tolog.indexOf ( "Migrateisinstalled")==-1) {'; $ silencer.='console.logger (tolog);}'; $ silencer.='} & lt;/script >'; $ silencer를 반환하십시오; } //프런트 엔드의 경우 script_loader_tag 필터 사용 add_filter ( 'script_loader_tag','jquery_migrate_load_silencer',10,2); functionjquery_migrate_load_silencer ($tag,$ handle) { if ($ handle=='jquery-migrate') { $ silencer=jquery_migrate_silencer (); //jquery 마이그레이션로드 앞에 추가 $tag=$ silencer. $tag; } return $tag; } //관리자의 경우 admin_print_scripts에 연결 add_action ( 'admin_print_scripts','jquery_migrate_echo_silencer'); functionjquery_migrate_echo_silencer () {echojquery_migrate_silencer ();}
결과는 원하는 효과를 달성하는 (설치된 메시지를 방지하는) 프런트 엔드와 백엔드 모두에 추가 된 한 줄의 HTML 스크립트입니다.
You could change the log message text to blank in
jquery-migrate.min.js
but this will not be preserved on core update.The alternative is to add passthrough/filter function copy of
console.log
to just before the migrate script is loaded, and tell it to ignore logging messages that contain 'Migrate is installed
'. Doing it this way will preserve other Migrate warnings too:// silencer script function jquery_migrate_silencer() { // create function copy $silencer = '<script>window.console.logger = window.console.log; '; // modify original function to filter and use function copy $silencer .= 'window.console.log = function(tolog) {'; // bug out if empty to prevent error $silencer .= 'if (tolog == null) {return;} '; // filter messages containing string $silencer .= 'if (tolog.indexOf("Migrate is installed") == -1) {'; $silencer .= 'console.logger(tolog);} '; $silencer .= '}</script>'; return $silencer; } // for the frontend, use script_loader_tag filter add_filter('script_loader_tag','jquery_migrate_load_silencer', 10, 2); function jquery_migrate_load_silencer($tag, $handle) { if ($handle == 'jquery-migrate') { $silencer = jquery_migrate_silencer(); // prepend to jquery migrate loading $tag = $silencer.$tag; } return $tag; } // for the admin, hook to admin_print_scripts add_action('admin_print_scripts','jquery_migrate_echo_silencer'); function jquery_migrate_echo_silencer() {echo jquery_migrate_silencer();}
The result is a one line of HTML script added to both frontend and backend that achieves the desired effect (prevents the installed message.)
-
아이디어에 +1하지만 사이트 인 경우 모든 스크립트가 최신 버전과 호환되는지 확인하고 마이그레이션 프로그램을 제거하는 것이 좋습니다.)+1 for the idea, but if it is your site, it is probably better to just make sure all your scripts are compatible to the latest version and remove the migrator ;)
- 1
- 2016-04-25
- Mark Kaplun
-
예,하지만 아직 최신jQuery와 호환되지 않을 수있는 테마/플러그인 설치를 고려하지 않기 때문에 마이그레이션을 관행으로 제거하는 데 동의하지 않습니다.병렬로 여기에서 WordPress 기능을 인식하지 못했거나 "공식적으로"사용되지 않는 플러그인이 있어도 여전히 잘 작동하는 플러그인이 많이 있습니다.이전 버전과의 호환성은 일반적으로 소프트웨어와 경우 모두에서 예방 및 치료보다 낫습니다.yes but I just don't agree with removing the migrator as a practice at all because it doesn't take into account installing themes/plugins which may not be compatible with the latest jQuery yet. as a parrallel there are plenty of plugins that still work fine even though they may not have realized a WordPress function here or there is "officially" deprecated. backwards compatibility is prevention and better than a cure when it comes to both cases and well, software in general.
- 0
- 2016-04-25
- majick
-
당신 말이 맞지만 최신jquery 버전을 지원하지 않는 것은 버그 IMO입니다.4.5는 약 한 달 전에 RC에 들어갔고 코드가 도입 된 모든 변경 사항과 함께 작동하도록 테스트되지 않았다면 테마/플러그인이 실제로 호환되지 않습니다.워드 프레스 사용 중단 메시지를 제외한 세계에서는 언젠가는 실제 사용 중단 메시지가 표시되며 최대한 빨리 업그레이드해야하는 시점에 메시지를 처리하는 것을 원하지 않습니다.마이그레이션 IMO는 영구적 인 기능이 아닌 임시 솔루션이어야합니다.You are right, but not supporting the latest jquery version is a bug IMO. 4.5 went into RC about a month ago, and if code wasn't tested to work with all the changes it introduced, then the theme/plugin are not truly compatible. In the world outside wordpress deprecation messages turn into actual deprecation at some point, and you don't want to leave handling them to the time where you have to upgrade ASAP. The migrator IMO should be a temporary solution, not a permanent feature.
- 2
- 2016-04-25
- Mark Kaplun
-
나는 그것이 스탑 갭 솔루션이라는 데 동의하지만,그 때문에 실제로 지금이 가장 중요한 때입니다.!확실히 워드 프레스의 폐기 프로세스는 최적화 될 수 있지만`deprecated.php`의 크기가 작기 때문에 새로운 별칭을 참조하는 이전 함수 별칭을 유지하고 작업이 중단되는 것을 막는 성능에 거의 영향을 미치지 않습니다."새롭지 만 잘못 코딩 된"플러그인보다 잘 코딩 된 "오래된"플러그인을 언제든지주세요."새로운 것이 더 낫다"라는 이데올로기는 "오 우리가 그 기능의 이름을 바꿨다"등의 이유로 좋은 작동 소프트웨어를 이런 식으로 깨뜨려서는 안됩니다.I agree it is a stop gap solution, but because of that, now is actually the time when it is most important,.! Sure the deprecation process within WordPress could be optimized but with the small size of `deprecated.php` it really has little performance impact keeping old function aliases that refer to new ones and stops things from breaking. Give me a well-coded but "old" plugin over a "new" but badly-coded plugin anyday. The ideology of "new is better" should not break otherwise good working software this way just because "oh we changed the name of that function" etc.
- 0
- 2016-04-25
- majick
-
저는 여기서 교장에 동의하지 않습니다. 인터넷은 빠르게 움직이는 표적이며 풍경은 항상 변하고 있습니다.(예를 들어 사이트 로고 기능을 4.5로 가져 오는 데 걸리는 시간에는 사이트가 하나의 로고 만 갖는 아이디어에서 전환되었습니다.)Old는 매우 구체적이고 안정적인 틈새 시장에 적용될 때만 좋지만 예를 들어jQuery는 상대적으로 움직이는 대상으로 알려져 있습니다.I disagree on principals here, the internet is a fast moving target and the landscape is changing all the time. (by the time it took to get the site logo feature to 4.5 for example, sites had move on from the idea of having only one logo). Old is good only when applied to very specific and stable niches but jQuery for example is know to be a relatively moving target.
- 2
- 2016-04-25
- Mark Kaplun
-
동의하지 않을 것에 동의 할 수 있습니다.진전이 있고 새로운 기능이 있다고해서jQuery,WordPress,테마,플러그인 등 작동하는 오래된 것을 버릴 이유가 없습니다. 모든 코드의 테스트는 "작동합니까"또는 "얼마나 좋은지"여야합니다."얼마나 오래되었나?"가 아니라 ... "몇 살입니까?"를 작동하는 소프트웨어의 측정 막대로 직접 사용하면 불필요하게 이런 방식으로 손상됩니다. 새 코드 **가 ** 가장 버그 일 때!현실적으로,개발자가 완벽하게 작동하는 업데이트를 따라 잡을 것으로 기대하는 것은 너무나 많은 일입니다. 이는 전체 비즈니스를 죽입니다.I can agree to disagree. Just because there is progress and new features is no reason to abandon old stuff that works, whether it's jQuery, WordPress or a theme or a plugin or whatever... The test of any code should be "does it work" or "how good is it" not "how old is it"... and using "how old is it" as a measuring stick for working software directly results in breaking it unnecessarily this way... when new code **is** the buggiest! realistically, expecting developers to keep up with updates for something that would still work perfectly otherwise is just too much - it kills entire businesses.
- 0
- 2016-04-25
- majick
-
테마는 고립 된 제품이 아닙니다.테마가 wordpress 및jquery 등을 패키징하는 경우 테마의 나이는 완전히 관련이있을 것입니다.테마가 없기 때문에 사용중인 워드 프레스 버전에 대해 테마를 테스트하지 않은 경우 어떤 종류의 버그가 발견 될지 명확하지 않습니다.이것은 정적 대 동적 연결 딜레마의 또 다른 표현 일뿐입니다.정적 연결 세계에서 귀하의 주장은 대부분 사실이지만 wordpress는 동적 연결이며 3.5에서 작동 했었다고해서 역 호환을 시도하더라도 4.5에서 작동한다는 의미는 아닙니다.A theme is not an isolated product. If a theme was packaging wordpress and jquery etc, then the age of the theme would have been totally relevant. As no theme does that, if the theme was not tested against the version of wordpress being used, then it is not clear enough what kind of bugs will be discovered. This is just another manifestation of the static vs dynamic linking dilemma. In a static linking world your claim is mostly true, but wordpress is dynamic linking and just because something had worked with 3.5 do not mean it will work with 4.5 even with the attempt to be backcompatible
- 1
- 2016-04-25
- Mark Kaplun
-
하지만 여기서는이 토론을 중지하겠습니다. :),SE는 길이에 만족하지 않습니다. :)but lets stop this discussion here :), SE is not happy about the length of it :)
- 0
- 2016-04-25
- Mark Kaplun
-
- 2016-04-25
여기에서 약간의 테스트입니다.
jquery-migrate.js 를 들여다 보았고이 부분을 발견했습니다. :
// Set to true to prevent console output; migrateWarnings still maintained // jQuery.migrateMute = false;
그래서 새로
wp_add_inline_script()
,버전 4.5에 도입 :add_action( 'wp_enqueue_scripts', function() { wp_add_inline_script( 'jquery-migrate', 'jQuery.migrateMute = true;', 'before' ); } );
변경됩니다 :
<인용구>JQMIGRATE : Migrate는 다음과 함께 설치됩니다. 로깅 활성화,버전 1.4.0
받는 사람 :
<인용구>JQMIGRATE : Migrate가 설치됨,버전 1.4.0
따라서
jquery-migrate.js
의이 부분처럼 실제로 모든 콘솔 출력을 차단하지는 않습니다.// Show a message on the console so devs know we're active if ( window.console && window.console.log ) { window.console.log( "JQMIGRATE: Migrate is installed" + ( jQuery.migrateMute ? "" : " with logging active" ) + ", version " + jQuery.migrateVersion ); }
Just a little test here.
I peeked into jquery-migrate.js and noticed this part:
// Set to true to prevent console output; migrateWarnings still maintained // jQuery.migrateMute = false;
so I tested the following with the newly
wp_add_inline_script()
, introduced in version 4.5:add_action( 'wp_enqueue_scripts', function() { wp_add_inline_script( 'jquery-migrate', 'jQuery.migrateMute = true;', 'before' ); } );
This will change:
JQMIGRATE: Migrate is installed with logging active, version 1.4.0
to:
JQMIGRATE: Migrate is installed, version 1.4.0
So it doesn't actually prevent all console output, like this part in
jquery-migrate.js
:// Show a message on the console so devs know we're active if ( window.console && window.console.log ) { window.console.log( "JQMIGRATE: Migrate is installed" + ( jQuery.migrateMute ? "" : " with logging active" ) + ", version " + jQuery.migrateVersion ); }
-
따라서 하단 코드는 메시지를 제거합니다.내 말은 마이그레이션은 유지되지만 메시지는 억제됩니다.마이그레이션을 확실히 제거하는 것보다 낫습니다.So the bottom code just removes the message, right? I mean, the migrate stays but the message is supressed, right? This is better than removing the migrate definitely
- 1
- 2016-04-25
- dingo_d
-
아니오,이는 출력을 *하는 * 콘솔 로그 메시지를 생성하는 코드의 사본입니다.이것은migrateMute가 콘솔 메시지의 후반부에 대해서만 테스트되었음을 보여줍니다-전반부는 출력됩니다 ... * 제거 *이 코드 블록은 콘솔 메시지를 제거하지만 각 WP 업데이트를 다시 실행해야합니다.no, that is a copy of the code producing the console log message that *does* output. it shows that migrateMute is only tested for the second half of the console message - the first half is output regardless... *removing* this code block will remove the console message, but you would need to redo that each WP update.
- 1
- 2016-04-25
- majick
-
조사와 세부 사항에 감사드립니다!많은 WP 플러그인이 더 이상 사용되지 않는jQuery 기능에 의존하기 때문에 JQmigrate를 제거하는 것이 항상 좋은 생각은 아니기 때문에 IMO가 최선의 옵션입니다.이 솔루션은 콘솔 출력을 약간 정리하는 데 도움이됩니다!Thanks for the research and details! IMO the best option, since removing JQmigrate is not always a good idea, because many WP plugins depend on deprecated jQuery functions. This solution helps to clean up the console output a bit!
- 2
- 2017-04-28
- Philipp
-
- 2018-09-21
해결책 :
functions.php에 추가 :
function remove_jquery_migrate_notice () { $m=$ GLOBALS [ 'wp_scripts']-> 등록됨 [ 'jquery-migrate']; $m- >extra [ 'before'] []='temp_jm_logconsole=window.console.log;window.console.log=null; '; $m- >extra [ 'after'] []='window.console.log=temp_jm_logconsole;'; } add_action ( 'init','remove_jquery_migrate_notice',5);
가 아니라
일괄 처리 (예 : 관리자 대시 보드)& lt; link rel=stylesheet .... >
를 출력하는 표준 후크를 사용하여jquery-migrate
를 호출 할 때 작동합니다.load-scripts.phpSolution:
add this to functions.php:
function remove_jquery_migrate_notice() { $m= $GLOBALS['wp_scripts']->registered['jquery-migrate']; $m->extra['before'][]='temp_jm_logconsole = window.console.log; window.console.log=null;'; $m->extra['after'][]='window.console.log=temp_jm_logconsole;'; } add_action( 'init', 'remove_jquery_migrate_notice', 5 );
It works when
jquery-migrate
is called with standard hook (which outputs<link rel=stylesheet....>
) and not withload-scripts.php
in bulk (like in admin-dashboard).-
이것은 나를 위해 잘 작동합니다.감사합니다!This works fine for me. Thank you!
- 1
- 2020-01-31
- Didierh
-
-
그것은 나를 위해 작동하지 않았습니다.That did not work for me.
- 3
- 2018-10-04
- Serj Sagan
-
-
- 2018-04-26
Andy가 이전에 언급했듯이 WordPress는 이전 버전과의 호환성을 보장하기 위해jQuery 마이그레이션 스크립트를 사용 하며 이것이 기본적으로 자동으로로드되는 이유입니다.
다음은 JQuery Migrate 모듈을 제거하여 성가신 JQMIGRATE 알림을 제거하는 동시에 클라이언트 측에서 페이지로드 속도를 높이는 안전한 방법입니다. 이 코드를 functions.php 파일에 복사/붙여 넣기 만하면 완료됩니다.
<?php /** * Disable jQuery Migrate in WordPress. * * @author Guy Dumais. * @link https://en.guydumais.digital/disable-jquery-migrate-in-wordpress/ */ add_filter( 'wp_default_scripts', $af = static function( &$scripts) { if(!is_admin()) { $scripts->remove( 'jquery'); $scripts->add( 'jquery', false, array( 'jquery-core' ), '1.12.4' ); } }, PHP_INT_MAX ); unset( $af );
세부 정보
내가 정적 함수를 사용하는 이유에 대한 자세한 내용을 보려면 여기에서 내 기사를 읽으십시오.
►► https://en.guydumais.digital/disable-jquery-migrate -in-wordpress/As mentionned previously by Andy WordPress uses the jQuery migrate script to ensure backwards compatibility and this is why it is automatically loaded by default.
Here's a safe way to remove the JQuery Migrate module and thus get rid of the annoying JQMIGRATE notice while speeding up the loading of your page on the client side. Simply copy/paste this code in your functions.php file and you're done:
<?php /** * Disable jQuery Migrate in WordPress. * * @author Guy Dumais. * @link https://en.guydumais.digital/disable-jquery-migrate-in-wordpress/ */ add_filter( 'wp_default_scripts', $af = static function( &$scripts) { if(!is_admin()) { $scripts->remove( 'jquery'); $scripts->add( 'jquery', false, array( 'jquery-core' ), '1.12.4' ); } }, PHP_INT_MAX ); unset( $af );
More details
To get more details about the reason I'm using a static function, read my article here:
►► https://en.guydumais.digital/disable-jquery-migrate-in-wordpress/-
1. 이것은 너무 많은 스팸 냄새를 맡고 대답처럼 느끼기 위해 최소한의 노력을 기울입니다.2. 캐시 무효화를 무효화하는 버전을 하드 코딩합니다.downvoted because 1. this smells too much of a spam and just does the minimal effort to feel like an answer. 2. You hard code the version nullifying cache busting.
- 2
- 2018-04-26
- Mark Kaplun
-
그것은 좋은 접근 방식이기 때문에 부끄러운 일입니다. 실제로 액션 일 때`add_filter`를 사용하고 있습니다.its a shame because its a nice approach, even tho you're using `add_filter` when its actually an action.
- 0
- 2018-09-20
- pcarvalho
항상 알림이있는 이유
<인용구>JQMIGRATE : Migrate가 설치됨,버전 1.4.0
내 테마를 WordPress 4.5로 업데이트했을 때 콘솔에서
load-scripts.php
를 가리키며,어떻게 제거 할 수 있나요?오류는 아니지만 항상 내 콘솔에 표시되며 그 이유가 무엇인지 알 수 없습니다. 뭔가를 업데이트해야합니까,아니면 코드를 변경해야합니까?
약간의 OCD가있을 수 있지만 일반적으로 사이트를 검사 할 때 콘솔에서 문제를 가리키는 오류와 실제 알림을보고 싶습니다 ...
수정
WordPress 5.5는jQuery를 5.6의 최신 버전으로 업데이트하기위한 준비 단계로jQuery Migrate 스크립트를 제거했습니다. 따라서 통지는 없어져야합니다.
https ://make.wordpress.org/core/2020/06/29/updating-jquery-version-shipped-with-wordpress/