WordPress: разгоняем админку
Знаете ли вы, что каждый раз при загрузке админки ваш блог проверяет наличие новых версий плагинов, шаблонов и версий движка? К тому же, планируются задачи по проверке версий на будущее. Откровенно говоря, я даже не вникал в детали как это делается, мне было достаточно того, что я увидел, что именно делается. Это все равно, что при вызове лифта запускать ядерный реактор для обеспечения этого лифта электричеством. Не проще ли подняться по лестнице?
В принципе, я против плагинов. Поэтому весь код просто вставляем в файл functions.php в папке с вашим шаблоном. Если файла нет, то создаем его. Вставляем такой код:
// KILL UPDATES remove_action( 'wp_version_check', 'wp_version_check' ); remove_action( 'admin_init', '_maybe_update_core' ); add_filter( 'pre_transient_update_core', create_function( '$a', "return null;")); add_filter( 'pre_site_transient_update_core', create_function( '$a', "return null;")); wp_clear_scheduled_hook( 'wp_version_check' ); remove_action( 'load-plugins.php', 'wp_update_plugins' ); remove_action( 'load-update.php', 'wp_update_plugins' ); remove_action( 'load-update-core.php', 'wp_update_plugins' ); remove_action( 'admin_init', '_maybe_update_plugins' ); remove_action( 'wp_update_plugins', 'wp_update_plugins' ); add_filter( 'pre_transient_update_plugins', create_function( '$a', "return null;" ) ); add_filter( 'pre_site_transient_update_plugins', create_function( '$a', "return null;" ) ); wp_clear_scheduled_hook( 'wp_update_plugins' ); remove_action( 'load-themes.php', 'wp_update_themes' ); remove_action( 'load-update.php', 'wp_update_themes' ); remove_action( 'load-update-core.php', 'wp_update_themes' ); remove_action( 'admin_init', '_maybe_update_themes' ); remove_action( 'wp_update_themes', 'wp_update_themes' ); add_filter( 'pre_transient_update_themes', create_function( '$a', "return null;" ) ); add_filter( 'pre_site_transient_update_themes', create_function( '$a', "return null;" ) ); wp_clear_scheduled_hook( 'wp_update_themes' ); // End of KILL UPDATES
Данный код поставит заглушки на все проверки обновлений (плагинов, шаблонов, самого движка) и работает (тестировался) в версии WordPress 3.0. Также будут убраны запланированные проверки.
Когда я добавил этот код у себя, админка стала просто летать. Если раньше нужно было ждать загрузки страницы 2-3 секунды, то теперь все показывается практически моментально. Даже трудно поверить, что это админка WP блога.
Если нужно проверить обновления, то можно просто закомментировать весь этот код, запустить обновления, а затем снова раскомментировать его. Это можно делать раз в месяц или даже реже.
Сегодняшняя мысль: WordPress - очень корявый движок с технической точки зрения.
Очень полезно. Возьму на заметку
Также против плагинов, так как они загружают блог очень сильно. Но как же без них? Многие плагины просто жизненно необходимы для блога.
Массивные куски кода, которые имеют свой "мозг" и логику должны быть оформленые отдельно. То есть, это как раз и будут плагины (например, плагин All in One SEO). А такие вот небольшие куски кода, как в моем посте, уж никак нельзя назвать плагином. Это просто маленькие корректировки того, как работает вордпресс. Они по сути не добавляют ничего нового.
Обновил код. Несколько новых строчек, и теперь все собрано по частям: движок, плагины, шаблоны.