Обновление WordPress 6.2
Обновилось ядро. Причем так, судя по описанию, разработчики хорошо поработали, не только с Гутенбергом и блоками возились, но и функционалом позанимались.
Подробно про обновление
Кратенько, что нового:
- обновился интерфейс Гутенберга;
- появились дополнительные вкладки;
- группировка паттернов по типам элементов;
- отдельная вкладка Медиа со встроенной библиотекой Openverse для загрузки бесплатных картинок;
- настройка глобалых стилей блока прямо в админке
для разрабов:
- экранирование имен таблиц и полей с помощью wpdb::prepare();
- функция get_page_by_title() устарела, вместо нее используте WP_Query;
- самая вкусняшка - новый аргумент search_columns для управления поиском по полям в поисковом запросе через WP_Query
Это далеко не все обновки, подробнее смотрите по ссылке.
P.S. На боевых сайтах не торопитесь обновляться, чтобы что-нибудь, где-нибудь не отвалилось)
#wordpress #update #core
Обновилось ядро. Причем так, судя по описанию, разработчики хорошо поработали, не только с Гутенбергом и блоками возились, но и функционалом позанимались.
Подробно про обновление
Кратенько, что нового:
- обновился интерфейс Гутенберга;
- появились дополнительные вкладки;
- группировка паттернов по типам элементов;
- отдельная вкладка Медиа со встроенной библиотекой Openverse для загрузки бесплатных картинок;
- настройка глобалых стилей блока прямо в админке
для разрабов:
- экранирование имен таблиц и полей с помощью wpdb::prepare();
- функция get_page_by_title() устарела, вместо нее используте WP_Query;
- самая вкусняшка - новый аргумент search_columns для управления поиском по полям в поисковом запросе через WP_Query
Это далеко не все обновки, подробнее смотрите по ссылке.
P.S. На боевых сайтах не торопитесь обновляться, чтобы что-нибудь, где-нибудь не отвалилось)
#wordpress #update #core
👍20
Forwarded from WordPress Digest (WordPress Digest Bot)
WP All Import: Атрибуты на русском языке в запросах XPath
XPath не позволяет делать запросы на кириллице вида
👉️ https://www.kobzarev.com/wordpress/wpai-cyrillic-attributes/
#PHP #wpdigest #WordPress #WPAI #XPath
Источник: @wordpress_digest
XPath не позволяет делать запросы на кириллице вида
{param[@name="Рулевая колонка"]}, но мы попробуем обойти это ограничение.👉️ https://www.kobzarev.com/wordpress/wpai-cyrillic-attributes/
#PHP #wpdigest #WordPress #WPAI #XPath
Источник: @wordpress_digest
🔥5
Несколько видосов о нативной разработке блоков под Gutenberg и темы FSE
Первые два на английском, но по коду там все понятно что делается))
1️⃣ How to Create Custom eCommerce Theme with WordPress (FSE) and WooCommerce
2️⃣ WordPress Plugin Development: Gutenberg Blocks, React & More
3️⃣ Разработка Wordpress Gutenberg Blocks. Создание динамического блока с REST API.
Если знаете еще какие видео или статьи по нативной разработке блоков, то кидайте линки в коментах
Первые два на английском, но по коду там все понятно что делается))
1️⃣ How to Create Custom eCommerce Theme with WordPress (FSE) and WooCommerce
2️⃣ WordPress Plugin Development: Gutenberg Blocks, React & More
3️⃣ Разработка Wordpress Gutenberg Blocks. Создание динамического блока с REST API.
Если знаете еще какие видео или статьи по нативной разработке блоков, то кидайте линки в коментах
YouTube
How to Create Custom eCommerce Theme with WordPress Block Theme and WooCommerce
💰 20% Referral Hosting Discount: https://www.hostg.xyz/SHEiZ
Create an eCommerce store from scratch, using Full Site Editing (Block Theme) in WordPress, WooCommerce and Guttenberg blocks - Block Theme
☕ BuyMeACoffee: https://www.buymeacoffee.com/RaddyTheBrand…
Create an eCommerce store from scratch, using Full Site Editing (Block Theme) in WordPress, WooCommerce and Guttenberg blocks - Block Theme
☕ BuyMeACoffee: https://www.buymeacoffee.com/RaddyTheBrand…
🔥3❤2👍1
Плагин пагинации и глоссариев от WPShop
Уже в релизе, можно купить, скачать и пользоваться
Поддерживает любые типы записей и любые таксономии. Работает через шорткод с кучей параметров.
Пример с городами
Купить плагин со скидкой 15%
Уже в релизе, можно купить, скачать и пользоваться
Поддерживает любые типы записей и любые таксономии. Работает через шорткод с кучей параметров.
Пример с городами
Купить плагин со скидкой 15%
👍5
Небольшой кейс.
Недавно тут с коллегой разбирали.
Задачка: Необходимо при создании поста произвольного типа, подчеркиваю, именно при создании поста, а не обновлении, отправлять данные из меты поста в CRM.
Произвольные поля создаются, сохраняют данные штатным функционалом ВП.
Вполне себе такая задачка, не особо эксклюзивная.
Решение: Все тривиально - вешаемся на хук
Что-то вроде такого
Начинаем разбираться:
1. Проверяем ключ полей меты - это первое, что надо проверить, часто бывает так что в форме ключ поля меты одно, а в базу пишется с каким-нибудь префиксом.
Нет, в нашем случае, с ключом поля все четко
2. Код верный, ключи верные, в чем дело? Смотрим исходники, как в плагине который создает CPT и мету для них происходит сохранение значений меты.
Оказывается, что сохранение меты вешается на хук
Теперь смотрим исходники ядра, где вообще стоит хук
Недавно тут с коллегой разбирали.
Задачка: Необходимо при создании поста произвольного типа, подчеркиваю, именно при создании поста, а не обновлении, отправлять данные из меты поста в CRM.
Произвольные поля создаются, сохраняют данные штатным функционалом ВП.
Вполне себе такая задачка, не особо эксклюзивная.
Решение: Все тривиально - вешаемся на хук
save_post_{$post->post_type} собираем нужные данные, включая данные из меты и отправляем. Что-то вроде такого
add_action( 'save_post_my_custom_post_type', function ( $post_id, $post ) {
/*
* тут код
*/
}, 100, 2 );
Тестируем: все работает, но с меты данные не собираются при создании поста, при обновлении все норм, при создании нет ничего. Фигня какая-то... И код верный, и хук верный, а нет данных. Начинаем разбираться:
1. Проверяем ключ полей меты - это первое, что надо проверить, часто бывает так что в форме ключ поля меты одно, а в базу пишется с каким-нибудь префиксом.
Нет, в нашем случае, с ключом поля все четко
2. Код верный, ключи верные, в чем дело? Смотрим исходники, как в плагине который создает CPT и мету для них происходит сохранение значений меты.
Оказывается, что сохранение меты вешается на хук
save_post с приоритетом 2. Теперь смотрим исходники ядра, где вообще стоит хук
save_post в функции wp_insert_post
Видим вот такоеdo_action( "save_post_{$post->post_type}", $post_id, $post, $update );
/**
* Fires once a post has been saved.
*
* @since 1.5.0
*
* @param int $post_id Post ID.
* @param WP_Post $post Post object.
* @param bool $update Whether this is an existing post being updated.
*/
do_action( 'save_post', $post_id, $post, $update );
/**
* Fires once a post has been saved.
*
* @since 2.0.0
*
* @param int $post_id Post ID.
* @param WP_Post $post Post object.
* @param bool $update Whether this is an existing post being updated.
*/
do_action( 'wp_insert_post', $post_id, $post, $update );
if ( $fire_after_hooks ) {
wp_after_insert_post( $post, $update, $post_before );
}
return $post_id
Продолжение 👇🔥2
Продолжение 👆
Получается, что хук
Переписываем код
Мораль
Гугление, чаты, группы и тд не всегда помогает, быстрее посмотреть исходники и разобраться почему не работает.
Так что, коллеги, изучайте исходники, благо ВП это позволяет делать без проблем)
Удачи!
Получается, что хук
save_post_{$post->post_type} при создании поста срабатывает раньше save_post. Именно поэтому, не можем получить мету. Переписываем код
add_action( 'save_post', function ( $post_id, $post ) {
if ( $post->post_type !== 'my_custom_post_type' ) {
return;
}
if ( $post->post_status !== 'publish' ) {
return;
}
/*
* тут код
*/
}, 100, 2 );
Вот теперь работает как надо. Мораль
Гугление, чаты, группы и тд не всегда помогает, быстрее посмотреть исходники и разобраться почему не работает.
Так что, коллеги, изучайте исходники, благо ВП это позволяет делать без проблем)
Удачи!
👍8
Forwarded from WordPress Digest (Mikhail Kobzarev)
Вышла новая версия плагина Yandex Turbo Feed 1.6.0 от mihdan
Плагин создаёт RSS ленты для сервиса Яндекс.Турбо.
Что нового в версии 1.6.0
- Добавлена возможность удалить все турбо-страницы для определённой ленты
- Добавлена возможность массового редактирования настроек турбо-страниц
- Добавлена возможность быстрого редактирования настроек турбо-страницы
- Подняты минимальные подерживаемые версии PHP 7.4 и WordPress 5.0
🔥 https://wordpress.org/plugins/mihdan-yandex-turbo-feed/
#plugins #wordpress #yandexturbo
Плагин создаёт RSS ленты для сервиса Яндекс.Турбо.
Что нового в версии 1.6.0
- Добавлена возможность удалить все турбо-страницы для определённой ленты
- Добавлена возможность массового редактирования настроек турбо-страниц
- Добавлена возможность быстрого редактирования настроек турбо-страницы
- Подняты минимальные подерживаемые версии PHP 7.4 и WordPress 5.0
#plugins #wordpress #yandexturbo
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3💩1
⚠️ Повышение стоимости продуктов
У нас важная новость для всех текущих клиентов. На следующей неделе, 20 мая будет повышение стоимости лицензий.
Повышение будет касаться в основном неограниченных лицензий.
Если вы задумывались о неограниченной лицензии на свои продукты, рекомендуем купить или расшириться сейчас по старым ценам.
Расширить лицензию можно только доплатив разницу в стоимости в Личном кабинете. Подробнее как расширять в документации.
Купить по старой цене
Новая стоимость на картинке ниже:
https://telegra.ph/file/98889aaf953f95647457d.png
У нас важная новость для всех текущих клиентов. На следующей неделе, 20 мая будет повышение стоимости лицензий.
Повышение будет касаться в основном неограниченных лицензий.
Если вы задумывались о неограниченной лицензии на свои продукты, рекомендуем купить или расшириться сейчас по старым ценам.
Расширить лицензию можно только доплатив разницу в стоимости в Личном кабинете. Подробнее как расширять в документации.
Купить по старой цене
Новая стоимость на картинке ниже:
https://telegra.ph/file/98889aaf953f95647457d.png
WPShop.ru
Панель управления - WPShop.ru
Личный кабинет пользователя
💩4👍2
Хорошая статья. Как проверить скорость сайта.
https://vc.ru/marketing/694279-6-instrumentov-dlya-proverki-skorosti-zagruzki-stranic-sayta-i-chto-s-etim-delat-v-2023-godu
Обратите внимание на инструмент https://perfscan.ru/cwv/ вот по нему хорошо ориентироваться, а не на попугаи.
За попугаями не гонитесь, это все такое...
https://vc.ru/marketing/694279-6-instrumentov-dlya-proverki-skorosti-zagruzki-stranic-sayta-i-chto-s-etim-delat-v-2023-godu
Обратите внимание на инструмент https://perfscan.ru/cwv/ вот по нему хорошо ориентироваться, а не на попугаи.
За попугаями не гонитесь, это все такое...
vc.ru
6 инструментов для проверки скорости загрузки страниц сайта, и что с этим делать в 2023 году — Маркетинг на vc.ru
Я Алексей из loading.express, сервиса, который измеряет скорость загрузки сайтов. В прошлой статье я описал 20 похожих сервисов (~137К просмотров). Обновляю информацию и список инструментов.
👍7
Forwarded from Злой полицейский (Mikhail Kobzarev)
Ребята из @wpkama, сложили все предложенные варианты воедино и на выходе получилось идеальное решение для полного запрета индексирования сайта во время его разработки, основываясь на окружении.
👉 https://wp-kama.ru/note/zapreshhaem-poiskovikam-indeksirovat-dev-versiyu-sajta
👉 https://wp-kama.ru/note/zapreshhaem-poiskovikam-indeksirovat-dev-versiyu-sajta
WordPress как на ладони
Запрещаем поисковикам индексировать DEV версию сайта
Как запретить индексацию сайта поисковиками, если это версия сайта для разработки (DEV копия сайта)? ____c_box_info [google.com: Блокировка индексирования при помощи директивы ...
👍3
Фичи ядра
С версии ядра 6.2 в для поиска через WP_Query можно добавлять новый параметр
Очень удобная штука, иногда надо отключить поиск по контенту или добавить что-то
Например так
Источник
#core
С версии ядра 6.2 в для поиска через WP_Query можно добавлять новый параметр
search_columns через который указывать по каким колонкам в базе делать поиск.Очень удобная штука, иногда надо отключить поиск по контенту или добавить что-то
Например так
$query = new WP_Query( [
'post_type' => 'post',
'post_status' => 'publish',
'no_found_rows' => true,
'cache_results' => false,
'posts_per_page' => 100,
's' => $term,
'search_columns' => [ 'post_title' ],
] );
Источник
#core
🔥5👍2
О как!
C 8.0 WooCommerce (релиз ожидается в августе) окончательно переводит заказы на отдельные таблицы и High-Performance Order Storage
Так что всем, кто разрабатывает решения под WooCommerce, имеет смысл проверить и допилить поддержку HPOS
Источник
#woocommerce #news
Подписаться
C 8.0 WooCommerce (релиз ожидается в августе) окончательно переводит заказы на отдельные таблицы и High-Performance Order Storage
Так что всем, кто разрабатывает решения под WooCommerce, имеет смысл проверить и допилить поддержку HPOS
Источник
#woocommerce #news
Подписаться
🔥6
Forwarded from Злой полицейский (Mikhail Kobzarev)
Ну наконец-то нормальные инструменты для прогнозирования деплоя, а не эта ваша бигдата!
Вашему вниманию предоставляется астрологический календарь деплоинга: deployhoroscope.ru
Полная таблица лучших и худших дней для деплоинга по вашему знаку зодиака теперь в ваших руках. Следуйте ей и прод больше никогда не упадёт.
Вашему вниманию предоставляется астрологический календарь деплоинга: deployhoroscope.ru
Полная таблица лучших и худших дней для деплоинга по вашему знаку зодиака теперь в ваших руках. Следуйте ей и прод больше никогда не упадёт.
👍6🤣3🔥1
https://wp-yoda.com/deployment/deploi-koda-cherez-phpstorm/
Хорошая статья. Особенно если в одно лицо работаешь, то очень удобно такой способ использовать
Хорошая статья. Особенно если в одно лицо работаешь, то очень удобно такой способ использовать
WP Yoda
Деплой кода через PHPStorm - WP Yoda
Деплой через PHPStorm представляет из себя процесс когда вы подключаетесь через IDE к удаленному серверу по ssh тунелю, и синхронизируете файлы локального проекта на удаленный сервер, выкатывая тем самым новые фичи.
🔥5👍1
Для тех кто не смотрел, крайне рекомендую доклад Кати Леурдо
Дебаг WordPress используя плагина Query Monitor
https://www.youtube.com/watch?v=0sM7UyNHfpI
Дебаг WordPress используя плагина Query Monitor
https://www.youtube.com/watch?v=0sM7UyNHfpI
YouTube
Debugging WordPress with Query Monitor plugin
Отладка в WordPress с помощью плагина Query Monitor.
Meetup of the Latvian WordPress group conducted on 30-Nov-2021.
Meetup of the Latvian WordPress group conducted on 30-Nov-2021.
🔥10
Forwarded from Злой полицейский (Mikhail Kobzarev)
В ACF 6.2 готовится новая важная фича - двухсторонняя связь типов записей через поле Relationship, а если все это ещё хранить в отдельной таблице, то и плагин posts to posts от scribu станет не нужным.
👍 https://www.advancedcustomfields.com/blog/acf-chat-fridays-options-pages-in-the-ui-and-bidirectional-relationships-coming-in-6-2/
#wordpress #acf #relationship #fields
👍 https://www.advancedcustomfields.com/blog/acf-chat-fridays-options-pages-in-the-ui-and-bidirectional-relationships-coming-in-6-2/
#wordpress #acf #relationship #fields
🔥9
Плагин Product Feed Manager for WooCommerce
Условно-бесплатный. Скачать и установить можно с репозитория
Позволяет создавать фиды для кучи различных площадок, в том числе для Я.Маркета и любые кастомные фиды.
- обновляет фиды по крону
- можно делать отдельные фиды для нужных категорий
- работает с любыми атрибутами
В бесплатной версии есть ограничение на количество товаров в фиды, только 200 шт.
Но, если сильно надо, за небольшое вознаграждение расскажу как включить поддержку про в пару строк) Для этого пишем в личку. А описании канала есть личка админа
#wordpress #plugins
Условно-бесплатный. Скачать и установить можно с репозитория
Позволяет создавать фиды для кучи различных площадок, в том числе для Я.Маркета и любые кастомные фиды.
- обновляет фиды по крону
- можно делать отдельные фиды для нужных категорий
- работает с любыми атрибутами
В бесплатной версии есть ограничение на количество товаров в фиды, только 200 шт.
Но, если сильно надо, за небольшое вознаграждение расскажу как включить поддержку про в пару строк) Для этого пишем в личку. А описании канала есть личка админа
#wordpress #plugins
🔥5👍2
Gutenberg. Видео и статьи по нативной разработке блоков под Gutenberg и темы FSE
▪️How to Create Custom eCommerce Theme with WordPress (FSE) and WooCommerce
▪️WordPress Plugin Development: Gutenberg Blocks, React & More
▪️Разработка Wordpress Gutenberg Blocks. Создание динамического блока с REST API.
▪️WordPress Gutenberg Developer’s Guide
▪️WordPress Block Creator Series
▪️Full site editing for theme developers
▪️Gutenberg Best Practices
▪️Курс по использованию хуков в блоках WordPress (англ.)
▪️Как использовать компоненты WordPress React для страниц плагинов (англ.)
👉 Google Webfonts Helper - инструмент для подготовки google шрифтов
👉 Справочник React на русском
👉 Все компоненты Gutenberg
#FSE #gutenberg #blocks
▪️How to Create Custom eCommerce Theme with WordPress (FSE) and WooCommerce
▪️WordPress Plugin Development: Gutenberg Blocks, React & More
▪️Разработка Wordpress Gutenberg Blocks. Создание динамического блока с REST API.
▪️WordPress Gutenberg Developer’s Guide
▪️WordPress Block Creator Series
▪️Full site editing for theme developers
▪️Gutenberg Best Practices
▪️Курс по использованию хуков в блоках WordPress (англ.)
▪️Как использовать компоненты WordPress React для страниц плагинов (англ.)
👉 Google Webfonts Helper - инструмент для подготовки google шрифтов
👉 Справочник React на русском
👉 Все компоненты Gutenberg
#FSE #gutenberg #blocks
🔥4