• Сайт выполнил переадресацию слишком много раз после переноса WordPress?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    1) корректно ли перенесены файлы сайта?
    2) корректно ли перенесена БД и заменены ли урлы в БД?
    3) удалите содержимое файла htaccess и попробуйте заново
    4) если это vps, то проверьте конфигурацию апач или nginx.
    Ответ написан
    Комментировать
  • Woocommerce - как сделать так, чтобы пользователь мог заказать товар только один раз?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    При добавлении товара поставьте галочку "Продавать индивидуально" во вкладке "Запасы"
    https://screenshots.firefox.com/Cdiu2tnpOOLbGUM9/t...
    Ответ написан
    1 комментарий
  • Существует ли программа или сайт для нарезки jpg картинки?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Как насчет того, чтобы сделать это средствами инструмента "Раскройка" в фотошоп? В ней вы можете указать кол-во строк и столбцов или ширину и высоту нарезаемых кусков, на которые нужно разделить картинку. А дальше просто сохраните и все.
    Ответ написан
  • Как самому создать pot файл для wordpress?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Если ваша тема или плагин уже подготовлен к локализации (строки завернуты в например, _e() ), то можете создать pot файл. Отлично для этих целей подойдет PoEdit.. Он сканирует папку с темой или плагином, находит строки и создает pot файл. Если вам нужна про версия, то скиньте мне файл с вашей темой, я создам и скину вам pot файл
    Ответ написан
    Комментировать
  • Какой есть плагин для WP, чтобы сделать каталог товаров?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Woocommerce + Yith Woocommerce Catalog Mode (чтобы включить режим каталога и удалить страницы корзины, оплаты и т.д.)
    Ответ написан
    Комментировать
  • Почему не работают ссылки WP?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Попробуйте обновить постоянные ссылки - Настройки - Постоянные ссылки - обновить
    Ответ написан
    Комментировать
  • Не работает переход c главной страницы на другие по клику ЛКМ, только по СКМ [WordPress], как исправить?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте)
    Я конечно не специалист по javascript, но если вы глянете в консоли, то увидите слушатель для пунктов меню, в частности для тега <a>
    На главной странице для тега a навешано 3 обработчика, на внутренних 2. Если удалить "лишний" обработчик и кликнуть на пункте меню, то все работает.
    Лишний обработчик обозначен на скрине:
    https://screenshots.firefox.com/rAH3gIewpHUUBi1C/null
    Ответ написан
  • Как правильно вставить таблицу в wordpress?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Будь я на вашем месте, поступил бы следующим образом:
    Установите плагин tablepress он основан на datatables и соответственно может автоматически создавать пагинацию на основе кол-ва строк (функционал можно отключать).
    Html таблицу можете легко импортировать на сайт через плагин и шорткодом добавить на сайт. Он поддерживает сортировку, поиск и т.д.
    Ссылка на плагин - https://ru.wordpress.org/plugins/tablepress/
    А если вам нужна адаптивность таблицы на других устройствах, то вот дополнение для него
    https://tablepress.org/extensions/responsive-tables/
    Ответ написан
    1 комментарий
  • Какой плагин можно использовать для счетчика достижений для Wordpress?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Я знаю плагин Visual Composer + Ultimate Addons for Visual Composer. В нем есть все, что нужно... А если не лень кодить, то можете на обычном html / css сделать. Возможно, что есть другие плагины...
    Ответ написан
    Комментировать
  • Как сделать в Wordpress переход с главной странице на 2 разных подглавных с разными меню?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Создаете Главную страницу и шаблон для нее front-page.php (если нужно).
    Далее создаете 2 шаблоны для страницы и 2 хедера. Например, page-moscow.php page-piter.php + 2 header.php с разными меню. Например, header-moscow header-piter.php После чего в page-moscow используете get_header('moscow') а в page-piter get_header('piter') ну и не забудьте создать 2 меню (https://codex.wordpress.org/Function_Reference/reg... Проще некуда)
    Ответ написан
  • Ка поставить 301 редирект Постранично на новый сайт?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    301 редирект
    Redirect 301 example.com https://example2.com

    Но как по мне, лучше все сразу разобрать. Вот, хорошая идея -
    перенесите ваш сайт на локальный сервер Openserver. По настроению проверьте статьи, удалите лишние и т.д. А потом окончательно перенесите на новый хостинг, тем самым не тронув рабочую версию сайта
    Ответ написан
  • После переноса стал дико загружать ресурсы, в чём проблема?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Не назову конкретной причины, ибо причина может быть разной.
    С фронт-энда я вижу следующее:
    1) у вас установлен https но при этом имеются ошибки
    https://screenshots.firefox.com/H2QKgyAyCjENEav8/null
    После переноса сайта вы заменяли урлы? Особенно на https? Если нет, то установите плагин better search replace и произведите замену.
    2) точно ли достаточно реусрсов для корректной работы сайта?
    например php memory_limit
    Ответ написан
  • Как скрыть картинку от фото поиска Яндекс, Гугл?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    закройте индексацию изображения для всех поисковых ботов через robots.txt
    Ответ написан
  • Как реализовать блоги на WP?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Изучите WPMS (мультисайт).
    Установите ВП и включите режим мультисайта. Для основного домена сделайте новостной сайт, а на субдоменах или субдиректориях сделайте блоги.
    Ответ написан
    Комментировать
  • Как убрать ошибки в Wordpress после переноса на хостинг?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!

    Обычно при переносе сайта могут быть следующие проблемы:
    1) файлы перенесены не в полном объеме. Подключитесь при помощи Total Commander и синхронизируйте каталоги.
    2) БД перенесена неполностью или некорректно. (Заново импортировать БД). Желательно при переносе БД изменить только домен в таблице wp_options. А уже после переноса на хостинг установить плагин better search replace и произвести полную замену старого домена на новый. Не заменяйте домен напрямую в дампе БД поиском и заменой, так как вы можете потерять данные. Например, сериализованные данные...
    3) Проверьте права chmod на директории и файлы. 755 - для файлов, 644 для папок
    4) если у вас vps, то проверьте права пользователя апач или nginx.
    5) Включите дебаг wp_debug и посмотрите логи
    Ответ написан
    Комментировать
  • Как ограничить диапазон чисел с 10 по 50 для editext?

    azerphoenix
    @azerphoenix Автор вопроса
    Java Software Engineer
    Решение -
    public class InputFilterMinMax implements InputFilter {
    
        private int min, max;
    
        public InputFilterMinMax(int min, int max) {
            this.min = min;
            this.max = max;
        }
    
        public InputFilterMinMax(String min, String max) {
            this.min = Integer.parseInt(min);
            this.max = Integer.parseInt(max);
        }
    
    
    
        @Override
        public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
            try {
                String prefix = dest.toString().substring(0, dstart);
                String insert = source.toString();
                String suffix = dest.toString().substring(dend);
                String input_string = prefix + insert + suffix;
                int input = Integer.parseInt(input_string);
    
                if (isInRange(min, max, input) || input_string.length() < String.valueOf(min).length())
                    return null;
            } catch (NumberFormatException nfe) { }
            return "";
        }
    
        private boolean isInRange(int a, int b, int c) {
            return b > a ? c >= a && c <= b : c >= b && c <= a;
        }
    
    }
    Ответ написан
    Комментировать
  • Практика для изучения Java?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Здравствуйте!
    Не пробовали - codingbat.com/java ?
    Ответ написан
  • Как создать пагенацию для шаблона страницы в WordPress?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Простое решение - dimox.name/wordpress-pagination-without-a-plugin
    Пример реализации -
    https://md7.info/surgery
    https://reporter.by/belarus

    Лучше используйте циклы query_posts или WP_Query

    А вы не разделили шаблон на footer.php & header.php ? Как я вижу у вас wp_footer() находится в том же шаблоне, где он вызывается...

    Готовый рабочий код:

    Добавьте в functions:
    function wp_corenavi(){
      global $wp_query;
      $pages = '';
      $max = $wp_query->max_num_pages;
      if (!$current = get_query_var('paged')) $current = 1;
      $a['base'] = str_replace(999999999, '%#%', get_pagenum_link(999999999));
      $a['total'] = $max;
      $a['current'] = $current;
    
      $total = 1; //1 - выводить текст "Страница N из N", 0 - не выводить
      $a['mid_size'] = 3; //сколько ссылок показывать слева и справа от текущей
      $a['end_size'] = 1; //сколько ссылок показывать в начале и в конце
      $a['prev_text'] = '&laquo;'; //текст ссылки "Предыдущая страница"
      $a['next_text'] = '&raquo;'; //текст ссылки "Следующая страница"
    
      if ($max > 1) echo '<div class="navigation">';
      if ($total == 1 && $max > 1) $pages = '<span class="pages">Страница ' . $current . ' из ' . $max . '</span>'."\r\n";
      echo $pages . paginate_links($a);
      if ($max > 1) echo '</div>';
    }


    Добавьте стили:
    /* pagination */
    .navigation {
        display: block;
        text-align: center;
        margin: 20px auto;
    }
    .pages {
        padding: 5px 7px;
        color: #fff;
        background: #333;
    }
    .page-numbers {
        background: #333;
        padding: 5px 7px;
        color: #fff !important;
        
    }
    .page-numbers.current {
        text-decoration: underline;
    }
    .page-numbers:hover {
        text-decoration:none;
        opacity: 0.8;
    }


    Добавьте код вывода пагинации в цикл:
    <?php if (have_posts()) :  while (have_posts()) : the_post(); ?>
    	<? //здесь ваш контент ?>
    <?php endwhile; ?>
    <?php if (function_exists('wp_corenavi')) wp_corenavi(); ?>
    <?php endif; ?>

    P.S. не забудьте передать ваши аргументы $args
    Ответ написан
  • Как решить проблему с длинным меню в Wordpress?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Когда меню слишком массивное, то я использую плагин Ubermenu. Можно разбить мен в несколько колонок https://wpmegamenu.com/
    Ответ написан
    Комментировать
  • Как ускорить загрузку сайта?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Общие рекомендации для ускорения сайта. Этим методом я могу оптимизировать сайты до 100%. Другой вопрос - нужно ли это)))

    1) Установите плагины Fastest cache + Fastest cache premium + Autoptimize.
    В плагине Fastest Cache & Premium включите все пункты, КРОМЕ 3-х пунктов касающихся CSS
    5b7010485d97c901632931.png
    В плагине Autoptimize включите пункт оптимизации CSS, перейдите в расширенные настройки поставьте галочку Inline All CSS и из исходного кода скопируйте код, которые между . После чего сгенерируйте критичный CSS на сайте https://jonassebastianohlsson.com/criticalpathcssg... и добавьте его в плагин autoptimize.
    Этим вы уберете проблемы:
    "удалить js & css код препятствующий отображению". Согласно оф. источнику сам fastest cache не убирает render blocking CSS из-за чего мы и используем autoptimize.
    https://www.wpfastestcache.com/premium/optimize-cs...
    P.S. У вас сейчас на сайте именно на это гугл и жалуется.
    2) оптимизируйте изображения. Рекомендую использовать EWWW Image Optimizer и если позволяют финансы, то берите премиум пакет, чтобы лучше оптимизировать. В противном случае, гугл все равно жалуется. Или же можете вручную сжать фотографии, предварительно скачав их на компьютер. Для ручного сжатия я использую jpegoptim & jpegtran
    Cсылка - https://sheensay.ru/optimization-png-jpg#kak-ustan...
    https://ruhighload.com/jpegoptim
    Достаточно оставить % сжатия 25-30%

    3) Если вы разместили счетчики и различные информеры и кнопки "поделиться", то чтобы гугл не жаловался можно подключать их локально. Так как гугл не рекомедует подключать скрипты локально, так как они могут устареть, то обязательно создайте Cron задачу и регулярно обновляйте эти файлы. Пример рнр скрипта, который регулярно обновляет js скрипты.
    В корне сайта создайте папку js & рнр файл со следующим содержимым. А далее по крону запускайте этот файл. Достаточно обновлять раз в неделю... Соответственно, все скрипты подключайте локально предварительно изменив js код
    <?php
    function downloadJs($file_url, $save_to)
    {
        $content = file_get_contents($file_url);
        file_put_contents($save_to, $content);
    }
    // Yandex Metrika
    downloadJs('https://mc.yandex.ru/metrika/watch.js', realpath("./js") . '/watch.js');
    // Yandex Share
    downloadJs('https://yastatic.net/es5-shims/0.0.2/es5-shims.min.js', realpath("./js") . '/es5-shims.min.js');
    downloadJs('https://yastatic.net/share2/share.js', realpath("./js") . '/share.js');
    // Google Analytics
    downloadJs('https://www.google-analytics.com/analytics.js', realpath("./js") . '/analytics.js');
    // Googla Adsense
    downloadJs('http://pagead2.googlesyndication.com/pagead/show_ads.js', realpath(".js") . '/show_ads.js');
    downloadJs('https://pagead2.googlesyndication.com/pagead/osd.js', realpath("./js") . '/osd.js');
    downloadJs('https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js', realpath("./js") . '/adsbygoogle.js');
    // VK
    downloadJs('http://vk.com/js/api/openapi.js?139', realpath("./js") . '/openapi.js');
    // Google Plus Widget
    downloadJs('https://apis.google.com/js/plusone.js', realpath("./js") . '/plusone.js');
    // Google Recaptcha
    downloadJs('https://www.google.com/recaptcha/api.js', realpath("./js") . '/api.js');
    downloadJs('https://www.google.com/recaptcha/api2/webworker.js', realpath("./js") . '/webworker.js');
    downloadJs('https://www.google.com/recaptcha/api.js', realpath("./js") . '/api.js');
    ?>

    4) Если на сайте ВП используете аватарки от gravatar, то закэшируйте их при помощи плагина FV Gravatar Cache или Harrys Gravatar Cache
    5) Если на сайте вы используете вставку картинок, которые добавляются извне, то плагин LH Cache Remote Images поможет вам их закэшировать и отдавать локально
    6) Если гугл жалуется на Query String from static resources, то установите плагин Remove Query Strings From Static Resources

    На самом деле многое из предложенного выше являются лишним и наверное не стоит гоняться за % оптимизации. У себя я использую плагин Fastest Cache & Fastest Cache Premium и все. Но иногда заказчики просят именно результата 100% и тогда приходится прибегнуть к вышеуказанным мерам.
    Ответ написан
    Комментировать