К сожалению так говорят только те, у кого никогда не было макбука.
Я не придумываю, я прям цитирую. Если мне надо с чем то разобраться, то я обязательно с этим разберусь, я сомневаюсь что тут можно найти вменяемую помощь по вопросу на который надо хоть немного подумать. Обычно тут задают и отвечают на вопросы которые гуглятся за 30 секунд, не более.
Речь шла о том, почему так говёно пишут плагины, которые тормозят, которые взламывают и так далее. Я пытался подвести что в ядре просто недостаточно инструментов, нет грамотной архитектуры и прочих удобных вещей что уже давно используется в мире разработки, чтобы это делать качественно. Но да, фанатики они такие фанатики.
Да никакой ВП не фреймворк, набор функций... библиотека если проще назвать, но уж точно не фреймворк.
Абсолютно бестолковое сравнение, и да макбуком приятнее пользоваться чем голым компом без ОС (кирпич) и как не старайся макбук из него точно не сделаешь.
Это самое важное, ВП настолько "хорош" что получается им пользоваться далеко не у всех.
Я почитал и лично у меня вызывает смех...
Объектный кэш в ВП, на случай чтоб не дергать БД и тебе надо вызвать SQL 1 раз а дальше уже результат, при том если ты настроишь редис/мемкеш это все на кой то черт начнет вытеснять с кеша нужные тебе данные, когда результат работы нужен тебе только на этот запрос, но да ладно, пример из статьи:
function foo() { $cache = wp_cache_get( 'foo' ); if ( $cache ) return $cache; $value = $wpdb->get_results( "SELECT ..." ); wp_cache_add( 'foo', $value ); return $value; }
А теперь давайте посмотрим как это делается средствами php
namespace MyPlugin\Services\Option class Option { protected static $result = []; public static function get($key) { if (!isset(self::$result[$key])) { // here SQL } return self::$result[$key]; } } $param = Option::get('param');
Но в ВП нет автолоадера с psr4 и будет куча проблем внедрять подобные вещи, запрос 4х летней давности, ребята прям скоростные на нововведения, есть подозрения что из версии к версии там латаются только дыры.
Ах да еще там пяток функций кеша который работает то храним, то не храним, кеширование работает не так, оно должно поддерживаться в ядре, мне не нужна функция wp_cache_get(), я могу дернуть кеширующую либу напрямую, я бы хотел более удобные инструменты, например
$posts = PostCollection::cache(3600)->get(/*filter*/)->limit(10);
фиг с ним пусть даже будет так
$cache = Core::getCache(); // Cache interface if ($cache->exists($cacheId)) { $posts = $cache->get($cacheId); } else { $posts = 'select posts ....'; $cache->set($cacheId, $posts, $cacheTime); }
Что же нам дает WP?
wp_cache_add(), wp_cache_set(), wp_cache_replace(), set_transient() и еще куча хлама суть которых одинаковая..... по сути WP сделал обертки функций кеширующих нативных либ обернув их в привычные WP юзерам функции и выдал их как кеширование в ядре, вместо молотка юзерам дали камень для забивание гвоздей, а они и радуются.
О каком "богатом мире" речь, если в нормальных фреймворках зависимости прокидываются в конструктор через DI и автовайринг. Вы застряли в своем "богатом мире 2009 года" (php 5.2 и его подходы прям пронизывают WP) и не понимаете что сейчас есть куча инструментов которые позволяют писать быстро качественный, расширяемый, тестируемый и безопасный код.
Вернемся к тому же проклятому битриксу, вот он фреймворк с "богатым миром", так как он не ограничивает меня wp-plugins, у нас проекты на битриксе не хуже проектов на симфони, а некоторые и лучше сделаны по коду, да есть ряд проблем в виде например глобальных переменных, которые и то мы обернули в свои объекты и их стараемся мокать чтоб тестами покрыть свою бизнес логику. Я не перестану думать, что ВП для домохозяек, контентных блоговых проектов (именно для этой цели я его тоже использую), но на серьезную платформу для разработки проектов отличных от контентно-блоговых он явно не тянет. Он для тех кто код правит на проде по фтп, разрабатывает проект в одно лицо, на базе уже готовых решений, но никак для стартовой плотформы (того самого голого компа без ОС) на котором можно нормально и комфортно запрограммить нужный тебе проект.
То есть в CMS это не нужно от слова совсем? Там же магия под капотом, наставил каких то плагинов и все работает, а плагины пишут эльфы в перерывах у Санты, им как бы базовые возможности любого фреймворка ненужны от слова совсем, они видимо плагины тоже пишут мышкой двигая в админке, так что ли?
Я не являюсь шаблононатягивателем, я как раз один из тех кто пишет плагины для CMS под требования заказчика, по этому CMS я все же стараюсь выбирать те, которые разработчик френдли, а не домохозяйка онли.
Действительно, выбрать систему для того чтобы с ней плясать это выбор грамотного вэбмастера. Я вот к этому и пытаюсь подвести, не вижу я смысла в системе где "по умолчанию" нет того функционала который все равно надо поставить плагинами сверху. Ну вот на кой сайт без кеширования? То есть практически все сайты на вордпресе ставят тот или иной плагин кеширования. Вопрос почему вордпрес кеширование не сделает в ядре? с общими настройками хранилища кеша? не раздаст всякие разные апи для этого (тегированый кэш например)? Или какой сайт без форм? всем сайтам нужна форма та или иная но нужна или может есть сайты которым не нужно управление метатегами? Вот я и не понимаю на кой мне, как разработчику, плясать и решать вещи которые решены уже везде где только можно, вместо того чтобы пилить бизнес логику под конкретный проект и не думать о таких базовых мелочах, как роуты, кеш, работа с БД, юзерами, переносом изменений БД между серверами (не всю БД целиком, а только часть новую которую я сделал локально).
PS. Я оцениваю CMS не с точки зрения пользователя, мне по большей части плевать что там в админке, я оцениваю CMS именно в плане того, на сколько комфортно под неё кодить разработчику и писать бизнес логику.
На самом деле это крайность, по больше части я так понимаю "по умолчанию" это без установки всяких плагинов кеширования и пляски с оптимизацией. То есть по умолчанию я взял ВП, накатил нужные мне плагины ВуКоммерс, КонтактФормс, Сео плагины, какой нибудь импорт прайсов с 1С и...... и вот тут как раз включается по умолчанию.
Это проблема движка, если бы движек изначально сделал бы все так, чтобы криво плагин было написать очень сложно, то собственно не было бы столько кривых плагинов. Банальный пример, ну не гуглится такая нужная вещь как wordpress api cache... только какой то rest cache вылазит... где орм с промежуточным кешированием запросов? где темплейтер с кешированием? где все те 100500 мелочей которые дают весомые преимущества разработчикам и делают львиную долю работы за них? как можно сделать нормальный плагин если в ядре ничего толком нет и надо тащить все сверху багажом? Вот именно в этом вопросе я никогда не понимал вордпресс и только по этой причине мне сложно с ним подружится =))---------- Добавлено 10.12.2019 в 00:51 ----------
оно там в коробке, сверху ничего ставить и настраивать не нужно и не сильно отличается от голого блогового движка (с объектным кешем), только тут ИМ где многие вещи бездумно не закешировать (цены для разных юзеров, акции, корзина, остатки и так далее).
К сожалению голый ВП - это просто никому не нужная блоговая платформа. Суть ВП как раз в том что его можно обвешать плагинами на все случаи жизни. Там на любой чих плагин навешивают, даже чтобы вернуть редактор к которому все привыкли. И мне стало очень интересно для чего делает блоговый чистый движек 26 запросов к БД?
Например вот битрикс на бегете, раздел каталога, с фильтрами, категориями, меню, ценами, авторизацией пользователя и всем сопутствующим (не голый)
Исключительно для себя. У этой штуки позиционирование - настройка страницы через xml.... на этом собственно все закончилось, за то там под капотом магия, не тестируемая магия, написанная вопреки всем современным тенденциям в программировании..... Человека просто не устраивает текущие системы и технологии потому что они уже для него слишком сложные, заставляют его что то учить, развиваться и шевелить мозгами.... Кода из файла Engine.php в видео было достаточно чтобы понять уровень программирования человека, для тимлида который ревьювит код десятка программистов уровня от джуниора до сеньора.
Подкиньте инструкцию к прикручиванию LE к CDN доменов залинкованных через CNAME?
Не для всего подходят LE сертификаты. По крайней мере пока ещё.
От демпинга страдают только те, кому предложить больше нечего. У нас например, в разработке, есть люди которые делают сайты за 500р, есть конструкторы где люди могут сделать сами сайт и бесплатно, но конторы, которые делают сайты за миллионы от этого никак не страдают. Хостеры, которым есть что предложить помимо железа с накаченными ISP продуктами, я уверен, чувствуют себя вполне не плохо.
Вы реально думаете, что кто то этим занимается?
Почему вы не ставите свои логи если вам их подделывают? Я видел как один простейший SQL запрос прикладывал выделенный сервер с 8 физическими ядрами и 128Гб оперативы.
Все же я склоняюсь к тому, что вы не понимаете что делаете, если меряете каким то форумом и количеством людей на нём. Но не в коем случае не защищаю хостера, бывает нода перегружена и просто не хватает ресурсов у сервера, но этого я правда ниразу не встречал, а вот обратного множество раз - не оптимальные скрипты, отсутствие индексов и кешей и так далее. У вас банально могли быть ошибки в БД которые при дампе базы с файла устранились самостоятельно... но вы этого не сможете сказать, потому что не понимаете как это все работает