На первую VAKANSII.com.ua
   На первую VAKANSII.com.ua  На первую VAKANSII.com.ua
СЕГОДНЯ НА САЙТЕ:  162 ВАКАНСИЙ. НОВЫХ - 19 Интернет
  47262 РЕЗЮМЕ. НОВЫХ - 14 Если не работает
 Сайт газеты

  • Страхования
  • Фехтование
  • Инвестирование
  • ПротивоГАЗы
  • Как авто
  • Респираторы
  • Средства пожаротушения
  • Новости
  • Заказ курсовой работы недорого

    Есть затруднения со сдачей курсовой работы точно и в срок? Вы можете заказать курсовую работу от kursoviks.com.ua заказ дипломной работы или курсовой проект по недорогой цене.

    Статьи

    Як видалити wp json oembed, emoji, generator, feed, wmlmanifest, xmlrpc, prev, next

    1. Що таке WP JSON і як його відключити і видалити
    2. Відключаємо WP JSON REST API за допомогою плагіна Disable REST API
    3. Код для відключення і видалення wp-json і oembed в WordPress
    4. Що таке XML-RPC і як його відключити і видалити
    5. Відключаємо XML-RPC за допомогою плагіна Disable XML-RPC Pingback
    6. Код для відключення і видалення XML-RPC
    7. Що таке Emoji і як їх відключити і видалити
    8. Плагін WordPress для відключення Emojis - Disable Emojis
    9. Код для відключення Emoji в WordPress
    10. Що не слід видаляти з заголовків
    11. Що ще стане в нагоді при налаштуванні WordPress


    Якщо ви встановлювали WordPress з нуля, то помічали, що з коробки він надає досить надлишковий функціонал, наприклад, вставляє в head багато зайвих тегів: wp-json, xmlrpc, pingback, canonical, feed, emoji, generator, profile, wmlmanifest, link rel next і prev, і тому подібні. Більшості сайтів вони ні до чого, і тому їм варто позбутися зайвого мотлоху.

    • Що таке WP JSON і як його відключити і видалити
    • Відключаємо WP JSON REST API за допомогою плагіна Disable REST API
    • Код для відключення і видалення wp-json і oembed в WordPress
    • Що таке XML-RPC і як його відключити і видалити
    • Відключаємо XML-RPC за допомогою плагіна Disable XML-RPC Pingback
    • Код для відключення і видалення XML-RPC
    • Що таке Emoji і як їх відключити і видалити
    • Плагін WordPress для відключення Emojis - Disable Emojis
    • Код для відключення Emoji в WordPress
    • Видаляємо pingback, canonical, meta generator, wlwmanifest, EditURI, shortlink, prev, next, RSS, feed, profile з заголовків head
    • Налаштуємо редирект с / feed / на головну
    • Прибираємо CSS стилі .recentcomments
    • Видаляємо зайвий код з header.php
    • Що не слід видаляти з заголовків
    • Що ще стане в нагоді при налаштуванні WordPress

    Що таке WP JSON і як його відключити і видалити

    WP JSON - це скорочення від WordPress JSON REST API. Опис складне, тому поясню простіше - це функціонал, за допомогою якого для WordPress можна написати додаток на абсолютній будь-якій платформі і на будь-якій мові, і за допомогою цього додатка керувати сайтом - додавати, змінювати і видаляти вміст, налаштовувати теми, меню, віджети та інше .

    Загалом, з усього цього опису вам повинно бути ясно, що wp-json - поки що абсолютно зайве на вашому сайті, і його треба відключати. До того ж, Яндекс любить викидати wp-json в індекс як підрозділ сайту. Звичайно, це лікується за допомогою закриття від індексування / wp-json / в robots.txt, але, все ж, краще відключити і налаштувати видачу помилки 404 Not Found за цією адресою.

    Що неприємно, якщо не закрити / wp-json /, то він надає можливість будь-яким роботам вивідувати досить конфіденційну інформацію про користувачів. Наприклад, за такою адресою http://example.com/wp-json/wp/v2/users/ буде видана інформація про користувачів сайту з їх особистими даними: логін, email та інше, що там вказується.

    Щоб уникнути видачі інформації по користувачам WordPress, що не відключаючи WP REST API, можна скористатися наступним кодом:

    // Відключаємо функціонал по користувачах в WP REST API add_filter ( 'rest_endpoints', function ($ endpoints) {if (isset ($ endpoints [ '/ wp / v2 / users'])) {unset ($ endpoints [ '/ wp / v2 / users ']);} if (isset ($ endpoints [' / wp / v2 / users / (? P <id> [\ d] +) '])) {unset ($ endpoints [' / wp / v2 / users / (? P <id> [\ d] +) ']);} return $ endpoints;});

    Відключаючи функціонал WordPress REST API, пам'ятайте, що його використовують деякі популярні плагіни, наприклад Contact Form 7 і Yoast SEO . Тому, якщо раптом у вас перестала працювати форма зворотного зв'язку, подивіться, а не відключений чи REST API?

    Є 2 способи позбутися від wp-json, плагін і код.

    Відключаємо WP JSON REST API за допомогою плагіна Disable REST API

    Для відключення wp-json можна скористатися плагіном Disable REST API, так як його автор буде підтримувати код в актуальному стані в залежності від можливих змін в майбутніх версіях движка WordPress.

    Завантажити плагін Disable REST API з офіційного репозиторію WordPress.org

    Плагін WordPress для відключення wp-json - Disable JSON API

    Плагін, звичайно, функціонал JSON REST API відключить, але ось від розділу / wp-json / на сайт поширював позбавить. Тому, цей варіант трохи не те, що нам треба. Йдемо далі.

    Код для відключення і видалення wp-json і oembed в WordPress

    Код узятий з різних джерел, в основному звідси , І в тому числі, і з вищевказаного плагіна

    / * * Відключаємо wp-json * * https://sheensay.ru/?p=2044 * / // Відключаємо WP-API версій 1.x add_filter ( 'json_enabled', '__return_false'); add_filter ( 'json_jsonp_enabled', '__return_false'); // Відключаємо WP-API версій 2.x add_filter ( 'rest_enabled', '__return_false'); add_filter ( 'rest_jsonp_enabled', '__return_false'); // Видаляємо інформацію про REST API з заголовків HTTP і секції head remove_action ( 'xmlrpc_rsd_apis', 'rest_output_rsd'); remove_action ( 'wp_head', 'rest_output_link_wp_head', 10); remove_action ( 'template_redirect', 'rest_output_link_header', 11); // Відключаємо фільтри REST API remove_action ( 'xmlrpc_rsd_apis', 'rest_output_rsd'); remove_action ( 'auth_cookie_malformed', 'rest_cookie_collect_status'); remove_action ( 'auth_cookie_expired', 'rest_cookie_collect_status'); remove_action ( 'auth_cookie_bad_username', 'rest_cookie_collect_status'); remove_action ( 'auth_cookie_bad_hash', 'rest_cookie_collect_status'); remove_action ( 'auth_cookie_valid', 'rest_cookie_collect_status'); remove_filter ( 'rest_authentication_errors', 'rest_cookie_check_errors', 100); // Відключаємо події REST API remove_action ( 'init', 'rest_api_init'); remove_action ( 'rest_api_init', 'rest_api_default_filters', 10, 1); remove_action ( 'parse_request', 'rest_api_loaded'); // Відключаємо Embeds пов'язані з REST API remove_action ( 'rest_api_init', 'wp_oembed_register_route'); remove_filter ( 'rest_pre_serve_request', '_oembed_rest_pre_serve_request', 10, 4); // Прибираємо oembed посилання в секції head remove_action ( 'wp_head', 'wp_oembed_add_discovery_links'); // Якщо збираєтеся виводити oembed з інших сайтів на своєму, то закоментуйте наступний рядок remove_action ( 'wp_head', 'wp_oembed_add_host_js'); // редирект зі сторінки / wp-json / на головну add_action ( 'template_redirect', function () {if (preg_match ( '# \ / wp-json \ /.*? #', $ _SERVER [ 'REQUEST_URI'])) {wp_redirect (get_option ( 'siteurl'), 301); die ();}});

    Код вставляється в functions.php або mu-plugin (Бажано).

    Результат: ви повністю вимкніть механізм wp-json на сайті, в пошуку будуть відсутні сміттєві сторінки, а сторінка http://example.com/wp-json/ буде віддавати помилку 404 Not Found

    Що таке XML-RPC і як його відключити і видалити

    XML-RPC - це протокол виклику процедур, що використовує XML для кодування повідомлень і HTTP як транспортний механізм. Простіше кажучи, це API для WordPress, за допомогою якого можна дистанційно керувати даними сайту.

    Чи не нагадує WP JSON REST API? Так і є, xmlprc - його предок, який використовується WordPress в даний час. Чому один заміщають іншим - можливо, відповідь криється в громіздкості формату XML в порівнянні з JSON. Та й не особливо це важливо в світлі поточної статті. Головне - як позбутися від xmlrpc, не зашкодивши сайту.

    Просто видалити файл xmlrpc.php з кореня сайту можна - ним користуються деякі популярні плагіни навроде JetPack .
    Щоб вирішити питання вірно, ви можете скористатися 2 варіантами: плагіном або кодом.

    Відключаємо XML-RPC за допомогою плагіна Disable XML-RPC Pingback

    Якщо сайт на WordPress сильно гальмує, і Ви не розумієте, чому, раджу заглянути в логи помилок сервера і вивчити їх:

    [Error] error connect () to unix: /var/www/php-fpm/www.sock failed (11: Resource temporarily unavailable) while connecting to upstream, client: 100.200.300.400, server: example.com, request: " POST /xmlrpc.php HTTP / 1.0 ", upstream:" fastcgi: // unix: /var/www/php-fpm/bitfeed.sock: ", host:" 193.1.65.238 "

    Зверніть увагу на POST /xmlrpc.php. Якщо вона присутня і часто з'являється, значить, сайт атакують, і потрібно терміново закривати XML-RPC.

    Повністю XML-RPC відключати не можна - ним користуються деякі плагіни. Але деякі методи, що дозволяють проводити атаки на сайти, попередити можна. І в цьому допомагає плагін Disable XML-RPC Pingback.

    Завантажити плагін Disable XML-RPC Pingback з офіційного репозиторію WordPress.org

    Плагін WordPress для відключення небезпечних властивостей XML-RPC - Disable XML-RPC Pingback

    Код плагіна також складається з пари фільтрів і функцій, які я опишу в наступному пункті. І, знову ж таки, рекомендую користуватися цим плагіном, так як його автор буде стежити за оновленнями.

    Код для відключення і видалення XML-RPC

    Якщо вам цікаво побачити сам код, що відключає небезпечні методи XML-RPC, або просто не хочеться ставити зайві плагіни, можете скористатися кодом нижче

    / * * Видаляємо небезпечні методи роботи XML-RPC Pingback * * https://sheensay.ru/?p=2044 * / add_filter ( 'xmlrpc_methods', 'sheensay_block_xmlrpc_attacks'); function sheensay_block_xmlrpc_attacks ($ methods) {unset ($ methods [ 'pingback.ping']); unset ($ methods [ 'pingback.extensions.getPingbacks']); return $ methods; } Add_filter ( 'wp_headers', 'sheensay_remove_x_pingback_header'); function sheensay_remove_x_pingback_header ($ headers) {unset ($ headers [ 'X-Pingback']); return $ headers; }

    Також, існує спосіб повністю вимкнути XML-RPC за допомогою наступного фільтра, але не рекомендую використовувати його, так як він потрібен для JetPack і схожих плагінів.

    // Не рекомендую використовувати, тому що несумісне з плагіном JetPack і подібними add_filter ( 'xmlrpc_enabled', '__return_false');

    Результат: відключили небезпечні методи роботи механізму XML-RPC для WordPress

    Що таке Emoji і як їх відключити і видалити

    З версії WordPress 4.2 в дистрибутив цієї CMS був вбудований функціонал Emoji. Емоджі - це набір іконок і смайликів, реалізовані в Вордпресі за допомогою бібліотеки Twemoji від Twitter, і самі по собі непогані. Якщо у вас розважальний сайт або блог, в якому вони будуть доречні, варто задуматися, чи видаляти їх з сайту. Але більшості інших сайтів, що не використовують даний функціонал, варто усунути його, так як смайли Emoji в WordPress завантажуються з зовнішніх серверів WordPress.org, та й зайвий код в head ні до чого.

    Є 2 способи відключити Emoji, окремим плагіном і просто кодом, причому обидва мають право на життя.

    Плагін WordPress для відключення Emojis - Disable Emojis

    Можна обійтися простим плагіном Disable Emojis. Не треба його боятися, він не містить зайвих налаштувань, лише пару фільтрів, код яких, по суті, ми і дублюємо до себе в наступному пункті.

    У чому перевага плагінів - їх автори, як правило, стежать за оновленнями WordPress і вносять необхідні корективи в функціонал своїх плагінів, випускаючи оновлення, на відміну від нас з вами :) Тому, я б рекомендував скористатися поточним варіантом.

    Завантажити плагін Disable Emojis з офіційного репозиторію WordPress.org

    Плагін WordPress для відключення Emojis - Disable Emojis

    Врахуйте, що плагін не вносить зміни в базу даних, яка з версії WordPress 4.2 має формат кодування utf8mb4, що має на увазі під собою можливість зберігати самі знаки emoji в сторінках і записах незалежно від наявності або відсутності Disable Emojis на сайті. При цьому, смайлики emoji будуть відображатися тільки в самих сучасних браузерах.

    Код для відключення Emoji в WordPress

    Нижче представлений набір фільтрів і хуков (екшнів), який зможе відключити Emoji і позбавить від непотрібного мотлоху в head. Код повністю скопійований з вищевказаного плагіна, і я настійно рекомендую користуватися саме плагіном, бо його автор буде стежити за оновленнями, на відміну від мене :)

    / * * Відключаємо emoji * * https://sheensay.ru/?p=2044 * / add_action ( 'init', 'sheensay_disable_emojis'); function sheensay_disable_emojis () {remove_action ( 'wp_head', 'print_emoji_detection_script', 7); remove_action ( 'wp_print_styles', 'print_emoji_styles'); remove_action ( 'admin_print_scripts', 'print_emoji_detection_script'); remove_action ( 'admin_print_styles', 'print_emoji_styles'); remove_filter ( 'the_content_feed', 'wp_staticize_emoji'); remove_filter ( 'comment_text_rss', 'wp_staticize_emoji'); remove_filter ( 'wp_mail', 'wp_staticize_emoji_for_email'); add_filter ( 'tiny_mce_plugins', 'sheensay_disable_emojis_tinymce'); add_filter ( 'wp_resource_hints', 'sheensay_disable_emojis_remove_dns_prefetch', 10, 2); } Function sheensay_disable_emojis_tinymce ($ plugins) {if (is_array ($ plugins)) {return array_diff ($ plugins, array ( 'wpemoji')); } Else {return array (); }} Function sheensay_disable_emojis_remove_dns_prefetch ($ urls, $ relation_type) {if ( 'dns-prefetch' == $ relation_type) {/ ** This filter is documented in wp-includes / formatting.php * / $ emoji_svg_url = apply_filters ( 'emoji_svg_url' , 'https: //sworg/images/core/emoji/2.2.1/svg/'); $ Urls = array_diff ($ urls, array ($ emoji_svg_url)); } Return $ urls; }

    Код вставляється в functions.php або mu-plugin (Бажано).

    Результат: знаходиться на відстані висновок javascript-коду підтримки emoji в секції head. Але тут те ж саме, що і з плагіном - emoji зберігати в постах можна, але відображатися вони тепер будуть не у всіх браузерах, а лише тих, що їх підтримують (як правило, в найсучасніших).

    / * * Видаляємо інші непотрібні meta з head * * https://sheensay.ru/?p=2044 * / // Видаляємо код meta name = "generator" remove_action ( 'wp_head', 'wp_generator'); // Видаляємо link rel = "canonical" // Цей тег краще виводити за допомогою плагіна Yoast SEO або All In One SEO Pack remove_action ( 'wp_head', 'rel_canonical'); // Видаляємо link rel = "shortlink" - коротку посилання на поточну сторінку remove_action ( 'wp_head', 'wp_shortlink_wp_head'); // Видаляємо link rel = "EditURI" type = "application / rsd + xml" title = "RSD" // Використовується для сервісу Really Simple Discovery remove_action ( 'wp_head', 'rsd_link'); // Видаляємо link rel = "wlwmanifest" type = "application / wlwmanifest + xml" // Використовується Windows Live Writer remove_action ( 'wp_head', 'wlwmanifest_link'); // Видаляємо різні посилання link rel // на головну сторінку remove_action ( 'wp_head', 'index_rel_link'); // на перший запис remove_action ( 'wp_head', 'start_post_rel_link', 10); // на попередній запис remove_action ( 'wp_head', 'parent_post_rel_link', 10); // на наступний запис remove_action ( 'wp_head', 'adjacent_posts_rel_link', 10); // Видаляємо зв'язок з батьківською записом remove_action ( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10); // Видаляємо висновок / feed / remove_action ( 'wp_head', 'feed_links', 2); // Видаляємо висновок / feed / для записів, категорій, тегів і подібного remove_action ( 'wp_head', 'feed_links_extra', 3); // Видаляємо непотрібний css плагіна WP-PageNavi remove_action ( 'wp_head', 'pagenavi_css');

    З приводу / feed /. Якщо ви хочете додатково додати редирект з http://example.com/feed/ на головну сторінку, можете додати наступний код

    / * * Налаштовуємо редирект зі сторінки rss / feed / на головну * * https://sheensay.ru/?p=2044 * / add_action ( 'do_feed', 'sheensay_redirect_feed', 1); add_action ( 'do_feed_rdf', 'sheensay_redirect_feed', 1); add_action ( 'do_feed_rss', 'sheensay_redirect_feed', 1); add_action ( 'do_feed_rss2', 'sheensay_redirect_feed', 1); function sheensay_redirect_feed () {wp_redirect (site_url ( '/')); exit; }

    Якщо ви користуєтеся Feedburner, додаєте зміни в .htaccess

    <IfModule mod_rewrite.c> RewriteEngine on RewriteCond% {REQUEST_URI} ^ /? (Feed. * | Comments. *) [NC] RewriteCond% {HTTP_USER_AGENT}! ^. * (FeedBurner | FeedValidator) [NC] RewriteRule. * Http: //feeds.feedburner.com/sheensay [L, NC, R = 302] </ IfModule>

    Якщо ви користуєтеся виджетом Останні коментарі, то WordPress для нього пропише в коді стилі css з класом .recentcomment, які досить складно перебити своїми. Щоб не будується з цією проблемою, користуємося такими кодом

    / * * Видаляємо стилі css-класу .recentcomments * * https://sheensay.ru/?p=2044 * / add_action ( 'widgets_init', 'sheensay_remove_recent_comments_style'); function sheensay_remove_recent_comments_style () {global $ wp_widget_factory; remove_action ( 'wp_head', array ($ wp_widget_factory -> widgets [ 'WP_Widget_Recent_Comments'], 'recent_comments_style')); }

    Далі, перейдемо до очищення header.php

    Якщо у вашій темі WordPress є header.php, відкрийте його в будь-якій програмі з підсвічуванням синтаксису, наприклад Notepad ++ або Far Manager .
    У секції head знайдіть зайвий код і видаліть його.

    Видаляємо зайвий код з head секції

    Наприклад, на скрині я виділив код:

    <Link rel = "profile" href = "http://gmpg.org/xfn/11"> <link rel = "pingback" href = "<? Php bloginfo ( 'pingback_url');?>">

    У 1 рядку - це заголовок, який вказує на те, що на сторінці використовується мікроформат XFN . Якщо ви його не використовуєте (а це, швидше за все, так) - видаляйте.
    У 2 рядку - це посилання, яка вказує, за якою адресою залишати пінгбекі. Їх ми не дозволяємо залишати, тому видаляємо код.

    До речі, не забудьте перевірити, відключені Чи є у вас пінгбекі. Для цього, зайдіть в адмінку в Настройки - Обговорення (https://example.com/wp-admin/options-discussion.php) і переконайтеся в тому, що галочкою не зазначено пункт Дозволити оповіщення з інших блогів (повідомлення і зворотні посилання) на нові статті

    Заборонити оповіщення з інших блогів (повідомлення і зворотні посилання) на нові статті

    Таким же методом можна видалити і інший код, що не пішов за допомогою фільтрів, наприклад

    <Link rel = "alternate" type = "application / rss + xml" title = "Стрічка" href = "/ feed" /> <link rel = "alternate" type = "application / rss + xml" title = "Стрічка коментарів "href =" / comments / feed "/> <link rel =" EditURI "type =" application / rsd + xml "title =" RSD "href =" / xmlrpc.php? rsd "/> <link rel =" wlwmanifest "type =" application / wlwmanifest + xml "href =" / wp-includes / wlwmanifest.xml "/>

    Не забувайте робити резервні копії змінюваних файлів, щоб відкотити все назад, якщо видалили зайвого

    По суті, все, що повинно залишитися в head в header.php, це щось приблизно такого змісту

    <! DOCTYPE html> <html <? Php language_attributes (); ? >> <head> <meta charset = "<? Php bloginfo ( 'charset');?>"> <Meta name = "viewport" content = "width = device-width, initial-scale = 1"> <? php wp_head (); ?> </ Head>

    Що не слід видаляти з заголовків

    Деякі радять також видаляти dns-prefetch:

    // Видаляє link rel = 'dns-prefetch' href = '// v0.wordpress.com' remove_action ( 'wp_head', 'wp_resource_hints', 2);

    Я б не став цього робити, тому що dns-prefetch покликаний прискорити завантаження сторінок зі зовнішніх джерел, а точніше, ресурсів, які на них розташовуються. За адресами, вказаними в dns-prefetch, браузер буде робити попередній ні перетворювати, що на повільному інтернеті може показати себе особливо добре.

    На цьому чистка закінчена. Далі пройдемося по додатковим пунктам налаштування, які можуть стати в нагоді.

    Що ще стане в нагоді при налаштуванні WordPress

    Далі, список порад, що потрібно використовувати ще, щоб оптимізувати роботу сайту:

    • Автоматична простановка заголовка Last-Modified
    • Налаштування кешируючого плагіна WP Super Cache
    • EWWW Image Optimizer - плагін для стиснення png, jpeg, gif зображень без втрати якості
    • Автоматичне проставляння атрибута alt. використовуємо SEO Friendly Images . Плагін не оновлювався вже 2 роки, однак, до сих пір справно працює і користується популярністю. Я особисто не вважаю цей пункт крайньою необхідністю, так як у кожного зображення повинен бути прописаний унікальний alt, а не взято той, що в назві статті, але, можливо, комусь цей пункт здасться важливим.
    • Редирект з https на http. Краще, коли перенаправленням займається сервер, а не WordPress, тим самим ми знімаємо непотрібне навантаження на систему.
      Зміни додаємо в .htaccess в корені сайту, в самий початок файлу <IfModule mod_rewrite.c> RewriteEngine On RewriteCond% {SERVER_PORT} ^ 443 $ [OR] RewriteCond% {HTTPS} = on RewriteRule ^ (. *) $ Http: // example.com/$1 [R = 301, L] </ IfModule>

      http://example.com міняєте на свій.

    Ru/?
    Ru/?
    Ru/?
    Ru/?
    Ru/?
    C> RewriteEngine on RewriteCond% {REQUEST_URI} ^ /?
    Ru/?
    Org/xfn/11"> <link rel = "pingback" href = "<?
    Php bloginfo ( 'pingback_url');?
    Php?

    Новости

    www.natali.ua www.buhgalteria.com.ua www.blitz-press.com.ua  | www.blitz-price.com.ua  | www.blitz-tour.com.ua
     
    Rambler's Top100
     письмо веб-мастеру
    Copyright c 2000, Блиц-Информ