Нестандартная оптимизация wordpress. Совершенно секретно, специально для cy-pr.com))
Страницы: 1 2 След.
Нестандартная оптимизация wordpress. Совершенно секретно, специально для cy-pr.com)), Способ позволяющий без плагинов оптимизировать вывод кода wordpress во фронт части. Использовать только с минимальными знаниями php.
Всем доброго дня, недавно применил достаточно малоизвестный (возможно и неизвестный) метод оптимизации для указанной cms. Представляю его для внимания пользователей, которые смогут отказаться от использования лишних плагинов, не нарушат работу админ панели и приведут исходный код страниц к нормальным оптимизационным показателям.
Что получилось в итоге:

1. Уникализация кода
2. Закрытие "мусорных" данных движка
3. Снижение скорости загрузки сайта
4. Как следствие, устранение нагрузки на mysql
5. Изчез спам- и вирусно-подобный трафик (по состоянию 10 дней после применения, не утверждаю что это будет и дальше)6. Устранение отслеживания действий в админ панели (метрика и т.д.)

На чем основано:

1. На применении функции 
Код
<?php if ( is_user_logged_in() ) { ?> 
2. В качестве дополнения - изменение структуры папок (через wp-config.php). По этому пункту достаточно много материалов в сети. (если будет интресно, создам отдельную ветку)
Зачем это делается.

Исходя из наблюдений требования к сайтам ужесточаются и требуется не только уникальное контентное содержание, необходимость оптимизации кода (скорость и т.д.), но и уникальность програмного кода и общей структуры сайтов. В данном случае идет речь о фронте этой cms. 
В моем примере, изначально задача стояла в приведении к нормальным показателям скорости ответа сервера. Который, к примеру, доходил до 2-3 секунд. И это все из-за плагинов по типу: wp-hide, head cleaner, WP Super Cache и т.д. Вариаций было много, но в итоге и со скоростью были проблемы, и нарушалась работа в административной части.

Собственно способ.

1. Создайте в корне сайта (2 папки)

css и js (названия могут быть любые). Там вы будете размещать файлы необходимых скриптов и стилей, которые предварительно скопировали из исходного кода. Можете при необходимости и в одну папку разместить, главное что-бы потом не самому запутаться.

2. Внесите правки в двух файлах темы: header.php и footer.php

Пример для header.php
Код
<?php if ( is_user_logged_in() ) { ?>
<?php wp-header() ?>
<?php } else { ?>
<link href="/css/ваш-стиль.css" rel="stylesheet">  
<?php } ?>         
 
По аналогии вносятся изменения в файле footer.php

Код
 <?php if ( is_user_logged_in() ) { ?>
    <?php wp_footer() ?>
<?php } else { ?>
 <script type="text/javascript" src="/js/ваш-скрипт.js"></script>  
Код метрики и т.д. 
<?php } ?>

Принцип думаю понятен.

Таким образом, выносится только необходимое отображение скриптов и стилей для посетителей сайта + минимизация запросов к базе+ устраняется весь базовый "мусор" движка: wlwmanifest, generator, json+oembed, shortlink и т.д. А административная часть работает исправно.

Далее, естественно, возникла проблема с выводом заголовков, мета-тегов и микроформатных данных из-за того, что по факту мы убрали всю позицию wp-header для посетителей сайта. Решение ниже.

3. Оптимизируем SEO плагины

Вы практически всегда используете SEO плагины, так как wordpress всегда хромает этим. В моем случае использовался плагин seopress.
Для его данных на странице, применилась замена отображения позиции wp-header на позицию bloginfo в исходном коде плагина. Это стандартное поле wp, при необходимости вы сами можете расположить custom field и прописать это в плагине. Так как в wp тег <title> вводится в wp-header, необходиомо добавить его хук вывода.


Должно получиться примерно так:
Код
<?php if ( is_user_logged_in() ) { ?>
<?php wp-header() ?>
<?php } else { ?>
<title><?php 
$meta_print_value=get_post_meta(get_the_ID(),'_seopress_titles_title',true);
echo($meta_print_value);
?>
</title>
<?php bloginfo() ?>
<link href="/css/ваш-стиль.css" rel="stylesheet">  
<?php } ?>

Естественно удалите ,предварительно, указанную ниже аналогичную строку в файле header.php
Код
<meta charset="<?php bloginfo('charset') ?>">


Кому не подходит.

1. У кого на сайте обширная сетка пользователей с разными уровнями доступа. Здесь нужно использовать переменную уже из доступа групп, а не просто регистрации.
2. У кого на сайте имеются визуальные конструкторы, генерирующие свои индивидуальные стили на каждой странице (устанете добавлять изменения в выведенный файл стилей).

Обратить внимание.

1. Не тестировалось с woocommerce, предполагаю ошибку всех расширений с ajax (естественно, который встроенный в wp-admin).
2. Явно будут прогнозируемые проблемы для использования встроенного в wp-includes jquery. Поэтому подключите jquery напрямую через папку js (вы создали в корне)
3. Генерация заголовков в архивах рубрик происходит неправильно (выводится title последней записи) - пока не разобрался.
Изменено: sawf - 19 Апреля 2021 12:47

Бесплатная контекстная реклама

А зачем вы там экранируете каждую строку в <?...?> и на кой добавляете к <? php? Это неактуально ещё со времён бакса по 28 рублей smile:)
Мы не можем похвастаться мудростью глаз
И умелыми жестами рук,
Нам не нужно все это, чтобы друг друга понять.
Сигареты в руках, чай на столе - так замыкается круг,
И вдруг нам становится страшно что-то менять.
Цитата
Eye пишет:
А зачем вы там экранируете каждую строку в <?...?> и на кой добавляете к <? php? Это неактуально ещё со времён бакса по 28 рублей smile:)
Потому что в вордпресс такой код, адресуйте данный вопрос его разработчику.
Цитата
sawf пишет:
Потому что в вордпресс такой код, адресуйте данный вопрос его разработчику.
В WP он модульный и автогенерируемый. А Вы руками написали. И за что же надо так не любить лояльных юзверей, которые зареганы на сайте, чтобы им показывать всё медленнее, чем мимопроходящим...
Цитата
Eye пишет:
Цитата
sawf пишет:
Потому что в вордпресс такой код, адресуйте данный вопрос его разработчику.
В WP он модульный и автогенерируемый. А Вы руками написали. И за что же надо так не любить лояльных юзверей, которые зареганы на сайте, чтобы им показывать всё медленнее, чем мимопроходящим...
Не совсем понял, цель данного диалога. То что описано в методе это пара моих строк, все остальное стандартные хуки и код вордпресса. Только переменные используются не для этого (не встречал сам), а например для аутентификации.  Вот для примера код стандартной темы twentyseventeen
Код
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="profile" href="http://gmpg.org/xfn/11">

<?php wp_head(); ?>
</head>

<body <?php body_class(); ?>>
<div id="page" class="site">
   <a class="skip-link screen-reader-text" href="#content"><?php _e( 'Skip to content', 'twentyseventeen' ); ?></a>

   <header id="masthead" class="site-header" role="banner">

      <?php get_template_part( 'template-parts/header/header', 'image' ); ?>

      <?php if ( has_nav_menu( 'top' ) ) : ?>
         <div class="navigation-top">
            <div class="wrap">
               <?php get_template_part( 'template-parts/navigation/navigation', 'top' ); ?>
            </div><!-- .wrap -->
         </div><!-- .navigation-top -->
      <?php endif; ?>

   </header> 

Насчет "мимопроходящих" - это опять же сделано для seo (точнее для оптимизации скорости и кода) - базовый код движка, откровенно изначально серьезно "загажен".

И все что "суется" на сайт отображается в двух позициях хедер и футер, соответственно везде где надо и не надо. Отсюда весомая нагрузка на бд на стандартном хостинге + отказной трафик и т.д.. Про лимиты и корявость настроек обычного хостинга говорить не будем. VPS или VDS для сайта на вордпрессе - не совсем дешевая и рациональная трата финансов.

Ну а насчет зарегистрированных и для них можно сделать, об этом написано по поводу привязки групп. Т.е. если расширить функционал, можно бесконечно применять разбивку отображения по user group. В данном примере сайт в большей степени контентный, и регистрация участников не предусматривается. В любом случае wordpress, да и в принципе любую open cms (php), для серьезных нагруженных проектов, в здравом уме, не стоит использовать. Поэтому смысл способа - это как "оптимизировать вордпресс за 20 минут" для большинства имеющих такие сайты. Без особых знаний в php, и конечно без кучи плагинов.
Цитата
sawf пишет:
Не совсем понял, цель данного диалога.
Ну как же...
Цитата
sawf пишет:
это опять же сделано для seo
Вы ошиблись, нарушив главное правило СЕО - показывать роботам одно, а юзверям - другое. Дело даже не в "убрать избыточное", а в не показывать важное.
Цитата
Eye пишет:
Цитата
sawf пишет:
Не совсем понял, цель данного диалога.
Ну как же...
Цитата
sawf пишет:
это опять же сделано для seo
Вы ошиблись, нарушив главное правило СЕО - показывать роботам одно, а юзверям - другое. Дело даже не в "убрать избыточное", а в не показывать важное.
Спасибо. Теперь буду знать, что есть главное правило СЕОsmile:). А как же насчет, ошибок или несоответствия в отображении (даже если только для робота - фигурально это то же user, причем по факту первоначально главный) при закрытия от индекса всех исполнительных файлов (js, css и т.д.)? Если бы говорилось бы об ангуляре или реакте - это одно. Но это блин вордпресс - и главное ограничено желанием заказчика (и бюджетом конечно), который хочет работать только с этой cms. 
Цитата
sawf пишет:
при закрытия от индекса всех исполнительных файлов (js, css и т.д.)?
1. Это не исполняемые файлы, Вы путаете фронт с эндом.
2. Стили и скрипты не индексируются. И не индексировались никогда. И странно было бы, если бы было наоборот.
Стили и скрипты индексируются поисковиками уже давно, они должны видеть сайт также, как и пользователи!
Цитата
Федя пишет:
Стили и скрипты индексируются поисковиками уже давно, они должны видеть сайт также, как и пользователи!
покажите мне хотя бы один css в индексе, не полулживый Вы наш...
Цитата
Eye пишет:
покажите мне хотя бы один css в индексе, не полулживый Вы наш...
да любую выдачу открывайте, каждый сайт со стилями и скриптами )) запретите поисковикам доступ к скриптам и стилям, и будет ваш сайт далеко в ж., закрытие в роботсе не в счёт, эти стили и скрипты поисковики видят, лживый вы наш...
Кстати, "всезнающий" вы наш

Индексирование в поисковых системах (веб-индексирование) — процесс добавления сведений (о сайте) роботом поисковой машины в базу данных, впоследствии использующуюся для (полнотекстового) поиска информации на проиндексированных сайтах.

А не выдача, как вы тут хотите выкрутится и показать свою осведомлённость smile:sarc: Я вам жирным главное выделил, а то малоли, сейчас и тут шаред найдёте
Изменено: Федя - 19 Апреля 2021 18:10
Цитата
Федя пишет:
да любую выдачу открывайте, каждый сайт со стилями и скриптами ))
покажите любой запрос к индексу, который покажет css, без холивара Вашего, что "любую".
Цитата
Федя пишет:
запретите поисковикам доступ к скриптам и стилям, и будет ваш сайт далеко в ж
А как Вы себе представляете запрет доступа к скриптам? Прямо вот объясните нормально, а не бла-бла-бла.
Цитата
Eye пишет:
А как Вы себе представляете запрет доступа к скриптам? Прямо вот объясните нормально, а не бла-бла-бла.
так вы сами и ответили )) вся информация на сайте, доступная пользователям, индексируется поисковиками, для, цитирую – "добавления сведений (о сайте) роботом поисковой машины в базу данных"
Федя, да Вы уже уже осознали, что сморозили чушь... Зачем продолжать поддерживать эту чушь, когда все уже поржали над этим? Какой смысл упорствовать?
Страницы: 1 2 След.
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
04:15 Нужны услуги типографии 
20:40 Вывод денег с Adsense 
09:20 Edu-Money - новая партнёрка под бурж EDU траф. 55-70% за заказ! Средний чек от $100! 
23:49 Bropush - твой бро в монетизации сайта push-уведомлениями 
19:06 [b]Webvork [/b]- международная товарная СРА сеть с сертифицированными офферами на Европу. 
15:11 Adtrafico - Правильная партнёрская сеть под бурж трафик 
14:44 Marketcall - международная партнерская сеть с оплатой Pay Per Call и LeadGen 
17:19 SMMexpert.biz - Накрутка соц.сетей от экспертов рынка! 
15:21 Мобильные скоростные прокси 4G 
14:44 OLX Parser (страны: UA, BG, KZ, PL, PT, RO, UZ) 
10:20 [eBucks] Автоматический обмен криптовалют. BTC и любые альткоины. Киви, Банковские карты и др. электронные системы. 
06:32 Копирайтер уникальных текстов 
20:13 Покупаем/Продаем криптовалюты за наличные 
18:25 Анализ курсов и недежности обменников - Kurs.Expert 
15:37 Партнерка от vfxAlert - надежный способ монетизировать финансовый трафик! 
11:35 "Почта России" заявила, что начнет доставлять посылки на беспилотниках 
11:33 Суд встал на сторону почтальонов в скандале с продажей продуктов на дому. «Почта России» выплатит им компенсации 
00:38 Изменения в Условиях использования YouTube 
01:44 likeboss.biz - накрутка в соцсетях. С гарантией. 
00:24 «Ростелеком» предложил запретить доступ к публичным серверам Google 
12:15 Несколько слов о том, почему ты должен выбрать нас!