Задать вопрос
  • Как увеличить скорость загрузки сайта?

    Davidaa_WoW
    @Davidaa_WoW
    Вариантов может быть множество. Для начала надо понять где тормозит - фронтенд, или бекенд.
    Проще всего это можно понять, добавив на шаблоны нужных страниц exit(); в самом начале. Если страница грузит быстро - то проблема во фронтенде, если всё ещё медленно, то в бекенде. (Если шаблон - это мешанина из PHP и HTML, то такой способ не подойдёт, надо глубже копать чтобы понимать источник)

    Если фронтенд - начинаем раскапывать JS скрипты, чтобы понять чем могли так нагрузить
    Если бекенд - то самые вероятные проблемы - это запросы к БД в цикле, или отсутствие оптимизации запросов. Если есть кастомные таблицы, можно попробовать навесить на них индексы на нужные вам поля.
    Если есть самописный код, с тяжёлыми алгоритмами, то провести рефакторинг алгоритмов, можно быстро прогнать кусок кода через GPT, он может оптимизировать алгоритмы.
    Ответ написан
    1 комментарий
  • Как сделать пакетную обработку в laravel?

    Davidaa_WoW
    @Davidaa_WoW
    Основная проблема - это обращение к БД в цикле, каждый раз. Помимо долгого ожидания Вы так и БД перегружаете.
    Для пакетной обработки не нужно никаких отдельных инструментов и библиотек. Вы просто собираете все данные в локальный массив, устанавливаете предел обработки пачки, после достижения предела делаете ОДИН запрос в БД.
    Если у Вас идёт обращение к разным таблицам, то можно либо JOIN-ами выводить нужные данные, если таблицы пересекаются, либо отдельно готовить под каждую таблицу свой массив для выборки.

    Если предел размерности у Вас небольшой, допустим 100 элементов, то там и на пачки разбивать не обязательно. Всё, что Вам нужно сделать - это вынести из цикла все обращения к БД, оставив только подготовку данных, для дальнейших запросов
    Ответ написан
    1 комментарий
  • Насколько правильным будет решение на ларавель?

    Davidaa_WoW
    @Davidaa_WoW
    Сравнивайте итеративно конкретные поля, через Whitelist. Сравнение по количеству изменённых полей выглядит ненадёжным
    Ответ написан
    Комментировать
  • Откуда могут появляться {{ после слэша в адресе страниц?

    Davidaa_WoW
    @Davidaa_WoW
    Если у Вас не работают ссылки при переходах, то значит, что они все заменились в БД, и отключение плагинов тут не поможет. Вам придётся самому идти в БД и заменять их на нормальные
    Ответ написан
    Комментировать
  • Как можно изменить настройки модуля навигации карт Google на Яндекс карты?

    Davidaa_WoW
    @Davidaa_WoW
    Yandex maps и Google maps - это совершенно разные продукты, использующие разные подходы к разработке и формированию API. Так что, отвечая на изначальный вопрос - нет, магической кнопки, позволяющей переключится на яндекс карты к сожалению не существует.
    Варианты развития событий для Вас.
    1. Попытаться получить API ключ гуглокарт, через иностранную карту, и пользоваться спокойно тем же движком
    2. Перейти на другой инструментарий, поддерживающий интеграцию с яндекс картами "из коробки"
    3. Попытаться связаться с разработчиками текущего инструментария, с вопросом о возможности интеграции яндекс карт. Учитывая, что яндекс переводчик у них уже доступен для интеграции
    4. Разработать кусок для интеграции самому/отдать во фриланс. Не знаю политику этого инструментария (движка), но если он предоставляет Вам открытый код, то можно в него залезть и модифицировать поведение. Если открытого кода нет, то можно будет "костылями", делать переход на отдельную, "исключительно вашу" страницу, на которой и будет интеграция с яндекс картами.
    Ответ написан
    Комментировать
  • Как сортировать новости в результатах поиска по дате публикации?

    Davidaa_WoW
    @Davidaa_WoW
    Интересный кейс. Я бы возможно вручную определил интервалы и давал по ним бусты.
    Допустим:
    новости за сегодня - буст = 10
    новости за последнюю неделю - буст = 5
    новости за последний месяц - буст = 3
    новости за последний год - буст = 1
    новости старше - буст = 0.2

    При таком условии, наиболее точные совпадения, вероятнее всего всё равно будут выше, даже если они старше. Например, если текст названия полностью совпадает с новостью двухлетней давности.
    Хотя, в данном случае надо смотреть ещё отдельно и тьюнить фильтры и метчеры, которые вы используете
    Ответ написан
    Комментировать
  • Почему не применяются QSS стили на QTabWidget с TabShape Triangular?

    Davidaa_WoW
    @Davidaa_WoW
    У вас вероятно стили конфликтуют. Можно либо ухищрениями пытаться поднять приоритет стилям https://habr.com/ru/articles/278477/
    Либо отказаться от
    QTabWidget.TabShape.Triangular
    И написать аналогичные стили самостоятельно
    Ответ написан
    Комментировать
  • При использовании mediatopic.post как указать, что пост должен отображаться от имени группы?

    Davidaa_WoW
    @Davidaa_WoW
    Внизу страницы документации, которую Вы скинули, есть параметр
    onBehalfOfGroup
    Чтобы писать от имени группы он должен быть true
    6763cc943b37e653380191.png
    Ответ написан
    Комментировать
  • Не отображается логотип на странице в Wordpress на телефоне?

    Davidaa_WoW
    @Davidaa_WoW
    Вполне возможно, что на ПК у Вас логотип закеширован браузером. Можете проверить зайдя на него в режиме инкогнито.
    Ну и посмотрите заодно консоль разработчика, возможно в ней есть ошибки о недоступности изображения по тем, или иным причинам.
    Ответ написан
    1 комментарий
  • Выкачать картинку высоко качества с сайта, как?

    Davidaa_WoW
    @Davidaa_WoW
    Там на стороне CDN видимо стоит движок, который автоматически скейлит изображение. То есть можно вписать любой размер и он выдаст его в хорошем качестве
    https://medtronic.scene7.com/is/image/Medtronic/pu...
    Ответ написан
  • Как исправить ошибку "Uncaught ReferenceError: $ is not defined" хотя jQuery подключен?

    Davidaa_WoW
    @Davidaa_WoW
    Можно попробовать заменить значок доллара на jQuery. То есть у Вас вместо
    $(".values").length
    Будет
    jQuery(".values").length

    Это актуально для тех случаев, когда у jQuery идут конфликты за знак $ с другими библиотеками. Но, конечно же, такой подход не решит отсутствие подключения самой библиотеки.
    А $ - это по сути просто альяс для функции jQuery:
    https://api.jquery.com/jQuery.noConflict/
    Ответ написан
    Комментировать
  • Как сделать чтобы виджетовая форма авторизации от Google не закрывалась?

    Davidaa_WoW
    @Davidaa_WoW
    Есть вероятность, что у вас клик засчитывается, как "клик снаружи". Можно попробовать добавить костыль на повторное открытие:
    https://stackoverflow.com/a/78332250/15493934

    Также, в том же треде, ниже, есть предложение выключить опцию 'use_fedcm_for_prompt'. Можете также её попробовать
    Ответ написан
    1 комментарий
  • Как исправить ошибку при занесении платежных реквизитов на сайте?

    Davidaa_WoW
    @Davidaa_WoW
    У вас вот в этой строчке:
    if ( strlen(check_text( $_POST['pursepayeer'] )) < 6 OR strlen(check_text( $_POST['pursepayeer'] )) > 15 ) {

    Стоит ограничение на размер вводимой строки. Она должна быть от 6 до 15 символов.
    Возможно вы обращаетесь не к тому ключу.
    Попробуйте перед строкой с оповещением, временно добавить вывод этого параметра в консоль, чтобы проверить что в нём приходит:
    echo $_POST['pursepayeer'];
    Ответ написан
    Комментировать
  • Правильный способ реализовать поиск с автодополнением по одному слову?

    Davidaa_WoW
    @Davidaa_WoW
    Зависит от того, что вы храните в индексе, и какой результат в итоге хотите получить.
    Какие могут быть кейсы:
    1. В индексе хранится много чего: кошки, собаки, попугаи и т.д.
    Решение: заводите новое поле, например 'pet_type'. Устанавливайте в него значение, например: 'собака'. Далее, создаёте статический фильтр синонимов в индексе, называете его, например 'pet_analyzer' и прописываете список необходимых синонимов. В результате должно получиться, что-то типа такого:
    PUT /pets_index
    {
      "settings": {
        "analysis": {
          "filter": {
            "pet_synonyms": {
              "type": "synonym",
              "synonyms": [
                "собака, щенок, кобель => dog",
                "кошка, кот, котёнок => cat",
                "попугай, попугайчик => parrot"
              ]
            }
          },
          "analyzer": {
            "pet_analyzer": {
              "type": "custom",
              "tokenizer": "standard",
              "filter": ["lowercase", "pet_synonyms"]
            }
          }
        }
      },
      "mappings": {
        "properties": {
          "pet_type": {
            "type": "text",
            "analyzer": "pet_analyzer"
          }
        }
      }
    }

    2. В индексе хранятся только собаки, либо вам нужно распределение (щенки/взрослые собаки/распределение по полу)
    В таком случае, добавляете эту характеристику прямо в name. То есть документ у вас будет называться: 'Щенок лабрадора'. Далее, смотрите на типы формирования входящих запросов. Вам могут подойти:
    Ответ написан
    Комментировать
  • Почему height auto у textarea не выставляется меньше 50px?

    Davidaa_WoW
    @Davidaa_WoW Автор вопроса
    Оказалось, что по умолчанию у textarea атрибут rows="2", даже если явно не указан. И элемент постоянно пытается подогнать значение высоты под него.
    Нужно просто установить в html/js значение атрибута rows="1", тогда у элемента будет ожидаемое поведение.
    Ответ написан
    Комментировать
  • Как в yandex maps нарисовать ломанную с разрывами?

    Davidaa_WoW
    @Davidaa_WoW Автор вопроса
    По итогу получилось решить задачу сделав каждую из координат отдельным массивом вида [[latx, lonx], [latx, lonx]], по сути просто дублируя все значения. Минус только в том, что yandex map не съело такие мультиразмерные координаты для polyline. Пришлось ставить leaflet специально для этих целей. Там такое прокатило.
    Ответ написан
    Комментировать