Мая 3, 2010 | by Макс | Вообще движок wordpress очень разнообразен, содержит...

мая 3, 2010 | by Макс | Вообще движок wordpress очень разнообразен, содержит много функций, которые в принципе не нужны для обычной работы блога, сегодня мы как раз разберем немного этих функций, и отключим их, чтобы сделать небольшую оптимизацию. 1. Функция is_blog_installed – каждый раз проверяет, установлен ли блог или нет. Расположена она в файле – wp-includes/functions. php => Теперь читайте внимательно что написано в коде находящемся ниже. /*находим строки с этим кодом */ function is_blog_installed() { global $wpdb; /*и меняем на вот эти */ function is_blog_installed() { return true; global $wpdb; 2. Функции _maybe_update_core(), _maybe_update_plugins(), _maybe_update_themes() – проверяют обновления движка, плагинов, установленной темы. Расположены они в файле – wp-includes/update. php => Теперь снова читайте внимательно что написано в коде находящемся ниже и выполняйте нужные действия. /*находим строки с этим кодом */ add_action( ‘admin_init’, ‘_maybe_update_core’ ); add_action( ‘wp_version_check’, ‘wp_version_check’ ); add_action( ‘load-plugins. php’, ‘wp_update_plugins’ ); add_action( ‘load-update. php’, ‘wp_update_plugins’ ); add_action( ‘load-update-core. php’, ‘wp_update_plugins’ ); add_action( ‘admin_init’, ‘_maybe_update_plugins’ ); add_action( ‘wp_update_plugins’, ‘wp_update_plugins’ ); add_action( ‘load-themes. php’, ‘wp_update_themes’ ); add_action( ‘load-update. php’, ‘wp_update_themes’ ); add_action( ‘admin_init’, ‘_maybe_update_themes’ ); add_action( ‘wp_update_themes’, ‘wp_update_themes’ ); /*и просто закомментируйте их, либо удалите*/ #add_action( ‘admin_init’, ‘_maybe_update_core’ ); #add_action( ‘wp_version_check’, ‘wp_version_check’ ); #add_action( ‘load-plugins. php’, ‘wp_update_plugins’ ); #add_action( ‘load-update. php’, ‘wp_update_plugins’ ); #add_action( ‘load-update-core. php’, ‘wp_update_plugins’ ); #add_action( ‘admin_init’, ‘_maybe_update_plugins’ ); #add_action( ‘wp_update_plugins’, ‘wp_update_plugins’ ); #add_action( ‘load-themes. php’, ‘wp_update_themes’ ); #add_action( ‘load-update. php’, ‘wp_update_themes’ ); #add_action( ‘admin_init’, ‘_maybe_update_themes’ ); #add_action( ‘wp_update_themes’, ‘wp_update_themes’ ); После всех этих отключений, снимается нагрузка примерно в 1.5 – 2 раза. Гуляя по просторам интернета, читая разные статьи об оптимизации движка WordPress, набрел я на тему генерации мета тегов. Так вот, в тех статьях описано действие по отключению генерации ненужных мета тегов в шаблон темы, которая у вас установлена, тем самым снимая небольшую нагрузку на блог. Там используется встроенная функция wordpress – remove_action, которая просто отключает генерацию тех тегов, которые вы задали в функции. Но тут есть один момент, что выполняя функцию, нагрузка не снимается, она также остается, ну может становиться чуть меньше. И дальше меня удивило, что автор пишет, что нельзя напрямую удалить нужный мета тег из генерации. И вот сегодня я опровергну этот факт, об не удалении генерируемых мета тегов. Ну что же, приступим. :) 3. Удалим версию движка, от злобно настроенных глаз. Открываем – wp-includes/general-template. php затем внимательно читаем что написано в коде и выполняем. /*находим вот это код*/ function get_the_generator( $type ) { switch ($type) { case ‘html’: $gen = ”; break; case ‘xhtml’: $gen = ”; break; case ‘atom’: $gen = ‘WordPress’; break; case ‘rss2′: $gen = ‘http://wordpress. org/?v=’ . get_bloginfo_rss( ‘version’ ) . ”; break; case ‘rdf’: $gen = ”; break; case ‘comment’: $gen = ”; break; case ‘export’: $gen = ”; break; } return apply_filters( “get_the_generator_{$type}”, $gen, $type ); } /*и удаляем вот эти строки*/ case ‘html’: $gen = ”; break; case ‘xhtml’: $gen = ”; break; 4. Если вы не пользуетесь всякими блог-клиентами или веб сервисами для публикации записей, то можете смело выполнять следующие действия.

Мая 3, 2010 | by Макс | Вообще движок wordpress очень разнообразен, содержит...

Открываем – wp-includes/general-template. php и снова делаем так как написано в комментариях к коду /*находим вот этот код*/ function rsd_link() { echo ‘\n”; } /*и меняем на вот этот*/ function rsd_link() { return true; } /*находим вот этот код*/ function wlwmanifest_link() { echo ‘ ‘ . “\n”; } /*и меняем на вот этот*/ function wlwmanifest_link() { return true; } А теперь самое интересное. :) 5. Теги link rel=”start”, link rel=”next”, и так далее, используются браузером (например, Google Chrome) для предварительного кэширования. То есть когда пользователь заходит на страницу, браузер подгружает следующую и предыдущую страницы, чтобы при переходе на них она грузилась из кэша браузера. Таким образом, создается лишняя и ненужная нагрузка на блог, ведь вы и так используете кэширование плагином. Открываем – wp-includes/link-template. php и снова все делаем по порядку… /*находим вот этот код*/ function start_post_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { echo get_boundary_post_rel_link($title, $in_same_cat, $excluded_categories, true); } /*и меняем на вот этот*/ function start_post_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { return true; } /*находим вот этот код*/ function index_rel_link() { echo get_index_rel_link(); } /*и меняем на вот этот*/ function index_rel_link() { return true; } /*находим вот этот код*/ function parent_post_rel_link($title = ‘%title’) { echo get_parent_post_rel_link($title); } /*и меняем на вот этот*/ function parent_post_rel_link($title = ‘%title’) { return true; } /*находим вот этот код*/ function adjacent_posts_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = ”, true); echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = ”, false); } /*и меняем на вот этот*/ function adjacent_posts_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { return true; } /*находим вот этот код*/ function next_post_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = ”, false); } /*и меняем на вот этот*/ function next_post_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { return true; } /*находим вот этот код*/ function prev_post_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = ”, true); } /*и меняем на вот этот*/ function prev_post_rel_link($title = ‘%title’, $in_same_cat = false, $excluded_categories = ”) { return true; } В заключении хочется сказать, что подходя к делу с четко поставленной целью, всегда добиваешься результатов. h++p://makarou. com/nebolshaya-optimizaciya-wordpress-%E2%80%93-chast-1 h++p://makarou. com/nebolshaya-optimizaciya-wordpress-%E2%80%93-chast-2 Теги: php, WordPress

Понравилась статья? Получай обновления и будь всегда в курсе событий!
Подпишись на RSS или
blog comments powered by Disqus