For phone masking use this webstool.ru/jquery.maskedinput.html
How correctly remove wpml plugin
This artickles will help with it:
wpml.org/documentation/getting-started-guide/language-setup/deleting-languages-and-plugin-data-by-doing-a-wpml-reset-on-your-site/
If you have time out after attempt to delete language, read this:
wpml.org/forums/topic/how-to-delete-language-content-from-database/
sql queries works quickly.
Ошибка 550-5.7.1 при отправке почты на gmail
Из сообщения об ошибке, которое вы получили от Gmail, ясно, что отправляемое
письмо было заблокировано из-за низкой репутации домена отправителя.
Да, использование шифрования почтового домена играет важную роль в повышении
валидности вашей почты.
Gmail использует строгие почтовые фильтры и не редко возникают проблемы при
доставке писем на их почтовые серверы, в случае, если почтовый домен не имеет
достаточный уровень валидности.
Так же стоит обратить внимание, что часто письма могут не доходить до серверов
Gmail из-за отсутствия DKIM подписи, SPF записи для домена, а так же PTR для IP
адреса.
Вы можете протестировать отправку писем с ваших ящиков и проверить, что именно
в вашем случае может снижать легитимность письма. Для этого можете
воспользоваться специальным сервисом:
mail-tester.com/
Если тест показывает хороший результат и правила соблюдены, то можно попробовать пройти https://support.google.com/mail/troubleshooter/2696779?hl=ru&sjid=8537909192587310172-EU&visit_id=638411521223163401-3038626329&rd=2 после этого отправляется запрос в гугл.
Также для информации можно добавить домен в https://postmaster.google.com/
Временные метки wp
Если страницы сайта долго загружаются, то причина может быть в теме оформления wp.
Для анализа скорости работы темы оформления можно добавлять код, который будет логировать временные метки.
И на основе анализа этих меток можно будет оценить время выполнения php с момента вызова functions.php до момента вызова последней строки в footer.php
1 2 3 4 5 6 |
<?php if (function_exists('wc_get_logger') && is_user_logged_in() && str_contains($_SERVER['REQUEST_URI'], 'your uri here') ) { $logger = wc_get_logger(); $context = array( 'source' => 'slow log' ); $err_msg = 'start header.php '.microtime(true); $logger->info( $err_msg, $context ); }?> |
Файл лога будет доступен в админке в табе логов woocommerce.
В коде добавлен адрес конкретной страницы и условие авторизации пользователя, чтобы другие посетители не попадали в лог.
How to run php script from ubuntu console?
Connect to server via Putty and run command
1 |
php -f /var/www/www-root/data/www/site.com/script.php |
Disable download .htpasswd file
If you need to disable download .htpasswd file on nginx web server this solution will help.
1 2 3 |
location ~* \.(htpasswd)$ { deny all; } |
If you need to disable download all hidden files:
1 2 3 |
location ~ /\. { deny all; } |
Добавить php скрипт в cron
Данная настройка актуальная для ispmanager
Обновление мини корзины после ajax добавления в корзину
Скрипт ajax_add_to_cart.js имеет объект response(можно вывести в console.log() для понимания что приходит в ответ), который возвращается после запроса.
При успешном добавлении в нем будет html из шаблона mini-cart.php обернутый в класс widget_shopping_cart_content. Если в шаблоне такой обертки нет, то html миникарт не будет обновляться и будет хранить данные, полученные при загрузке страницы.
При этом в настройках woocommerce должна стоять галочка «Enable ajax on archive, shop pages»
linux show folders in directory
1 2 |
cd \var\www\www-root\data\www\ ls -d */ |
ACF for product tag page
If you need to set custom field for product tag page, this code will help you.
1 2 3 4 5 6 7 8 9 10 11 12 |
function custom_aioseo_title_for_product_tag($title) { // Check if the current page is a product tag archive if (is_tax('product_tag')) { $term = get_queried_object(); $new_title = get_field('meta_tag_title', $term); if ($new_title) return $new_title; } // Return the original title for other pages return $title; } add_filter('aioseo_title', 'custom_aioseo_title_for_product_tag'); |
In this example code changing title meta tag for product tag page.