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

    ligisayan,
    Естественно, т.к. woocommerce предлагает для этого еще поставить галку зарегистрироваться и все равно ты новый клиент или повторный, но просто не залогиненый, а это неудобно.

    Вот тут мысль как раз пришла. По идее у WooCommerce есть фильтр перед самим созданием пользователя. Данные, возвращаемые этим фильтром передаются далее в wp_insert_user(). Если в эти данные добавить ID юзера (а его мы можем получить проверив на существование по мылу или телефону), то будет обновлен существующий юзер + далее этот же ID существующего юзера будет возвращен далее в WooCommerce в виде $customer_id. То есть, будет получен нужный результат.
  • Как заменить в админке в статусе заказа гостя на зарегистрованного пользователя?

    ligisayan, Хм, пробежал по диагонали эту статью, интересно. Уверен, что это не единственный (и возможно даже не самый разумный) способ, но ковырять и решать столь объемную задачу сейчас, увы, времени и возможности нет (хотя не скрою, она меня заинтересовала). Работает - и хорошо. Для вас на данном этапе это самое главное.

    А это как? Просить вводить юзера не полный телефон? чревато ошибками, расчет на дурака всегда должен быть

    Нормализация это и есть комплекс мер, которые включают и защиту от дурака, и форсирование определенного формата, и валидацию ошибок, и потом, после того как данные прошли, их последующая обработка, чтобы в БД они всегда хранились в одинаковом формате. Например:
    - ввести можно только цифры (пробелы, скобки, +, дефисы и тд - не принимаются полем типа "number")
    - длина должна быть 10 (3 цифры код оператора/региона + 7 цифр сам номер) или 12 (+2 цифры международного формата). Это для Украины - у нас 38 код страны, 0XX код оператора и XXX XX XX - сам номер. У США код страны 1 цифра, например. Подробнее по нужным странам можно посмотреть тут.
    - далее, если 12 цифр - валидируем что первые 2 соответствуют коду страны
    - на бекенде смотрим, если 10 цифр, дописываем код страны
    - сохраняем в БД в одинаковом формате: 12 цифр (код страны + код оператора + номер)

    Это минимально адекватный вариант. В зависимости от требований учесть другие страны можно логику усложнять - можно выбор страны сделать селектом + геолокация, отдельно код оператора/региона (+валидировать его чтобы он был реальный, все эти коды известны и есть их базы), отдельно сам номер 7 цифр без пробелов и других символов. В общем, это не так сложно, как кажется на первый взгляд.
  • Как заменить в админке в статусе заказа гостя на зарегистрованного пользователя?

    ligisayan, по метаданным можно искать конкретного юзера через WP_User_Query, принцип тот же что и с WP_Query. Впрочем, если телефонный номер считается более уникальным, чем имейл (и на него опираемся), то я бы в таком случае модифицировал регистрационный процесс - нормализация телефонного номера (к одному стандарту - полный международный формат, только цифры) и использование его в качестве логина. Тогда возвращаемся к get_user_by. В любом случае, нужно этот фрагмент упрощать и оптимизировать, потому что брать всех и перебирать со сравнением - это бутылочное горлышко.

    А какие хуки у регистрации клиента woocommerce?

    Ну я смотрю что у вас на thankyou происходит wp_insert_user() и это как бы совсем неправильно. WooCommerce умеет регистрировать гостей в процессе оформления заказа, и в этом случае на страницу thankyou уже прилетает созданный пользователь, а заказ уже привязан к нему. Вы же, видимо, не используете родную фичу WC, а пытаетесь делать это самостоятельно.
  • Почему на западе любят поддомен www в адресе сайте, а у нас корень домена?

    Siberian_Bear, я когда-то сам задавался этим вопросом, и тоже что-то меня изнутри грызло, подозревало что не все так однозначно. Углубился, исследовал, порасспрашивал более опытных коллег на западе - и все прояснилось. Рад передать знания дальше.
  • Зачем нужен PHPDoc в php-7?

    WordPress тоже страдает таким повсеместно, там часто бывает целый зоопарк на выходе типа WP_Post|int|bool|null (при чем int может быть только 0, а bool - false).
  • Почему worpress добавляет перед каждым символом (') или ("). (\) В методе get и post?

    zeni1agent, Забудьте, мы на разных языках говорим. Я не анализировал ваш js-код и понятия не имею что вы там делаете. Говорю лишь о том, что WordPress делает addslashes() не просто так. Если в вашем конкретном случае они не нужны (и вы в этом уверены на 100%) - тогда делайте stripslashes() и вопрос закрыт.
  • Почему worpress добавляет перед каждым символом (') или ("). (\) В методе get и post?

    zeni1agent, https://www.sitepoint.com/php-security-blunders-2/
    Технически, возможно в вашем случае не принципиально, тогда делайте stripslashes. Но WordPress обязательно будет экранировать спецсимволы, чтобы новички, ничего не смыслящие в написании безопасного кода, не оставляли за собой открытые двери.
  • Почему worpress добавляет перед каждым символом (') или ("). (\) В методе get и post?

    zeni1agent, ну, изучать весь ваш код не вижу смысла, просто напомню вам о том, что с таким же успехом в ваше текстовое поле можно ввести javascript-код, который будет без проблем выполнен.
  • Как переименовать произвольный тип записи?

    aliasst, ну я же говорил что проблема сама по себе тривиальная. Но вопрос у вас получился совсем сумбурным потоком сознания, сложно было уловить что именно вам поменять надо.
  • Почему worpress добавляет перед каждым символом (') или ("). (\) В методе get и post?

    zeni1agent, ну, подобные функции в PHP почти все идут парами - одна добавляет, другая убирает. Дело не в этом. Если вам вообще приходится делать это вручную в контексте CMS (в данном случае WordPress), то что-то вы не так делаете. Грубо говоря, вы приняли на стороне сервера через POST данные с экранированными кавычками (так и должно быть), что дальше вы будете с этими данными такое делать, что вам нужно убрать слэши?
  • Как переименовать произвольный тип записи?

    Ничего не понятно, хотя проблемка-то мелкая и простая. Но из вашего описания непонятно с какой стороны начать.
  • Проблема с оптимизацией скорости сайта?

    azerphoenix, pagespeed жалуется правильно, какая разница что скрипты их же?) Сам концепт замедляет сайт, факт. Но иногда он неизбежен, ибо приходится аналитику подключать (ну и все такое прочее). Удобство подключения (копи-паста кусочка кода из аналитики) в ущерб скорости. А там где балом правят разрабы и те, кто понимает толк в оптимизации все равно будет сделано так, как лучше для скорости.

    Возможно, что я ошибаюсь, но как по мне предпочтительнее отдавать статику из CDN, чем из локалки.

    Тут нет однозначного ответа и нет "правильно" или "неправильно". Сильно зависит от специфики проекта, конкретного кода, аудитории сайта, расположения серверов и тд. К примеру, сейчас запускаем сайт австралийской локальной компании, для местной ЦА (95%+ посетителей из одного региона Австралии). В этом случае CDN лишний, даже несмотря на то, что половина сайта это посадочные продающие страницы с тучей мелкой графики, autoplay видосами и тд (много запросов на статику). Сервер в Мельбурне с обычным HTTP/2, адекватным prefetch/preload/preconnect и http push позволяет грузить все практически мгновенно. Если бы аудитория этого сайта была по всему миру - тогда только CDN, без вариантов. А если относительно простой сайт с к-вом статических запросов <40-50, то CDN вообще не нужен (при условии что используется HTTP/2), заметного выигрыша не даст. В общем, все нужно тестировать и замерять в каждом конкретном случае. Одного волшебного рецепта не существует.
  • Проблема с оптимизацией скорости сайта?

    в порядке БРЕДА можете локально отдавать эти скрипты. Чтобы они были актуальны обновляйте по CRON.

    Говорю заранее, это не самый лучший вариант (отдавать скрипты локально, но чтобы гугл перестал жаловаться на них, можно сделать так)

    Вообще-то это как раз тема, рекоммендуемая (втихаря правда) самими разрабами из гугла, команды хрома и тд. Тот же Addy Osmani регулярно в своих постах или докладах это упоминает. И ничего опасного в этом нет, если делать с умом (и, конечно же, понимать что делать). У нас на многих проектах практикуется - и аналитика, и шрифты, и даже google tag manager. Работает как часы, никаких проблем.
  • Почему на wordpess конфликтуют jquery и jquery-ui и я получаю ошибку Uncaught TypeError: Cannot read property 'safari' of undefined?

    zeni1agent, это звучит очень и очень странно. Сервер какой? ОС? Похоже больше на какое-то кеширование.
  • Почему на wordpess конфликтуют jquery и jquery-ui и я получаю ошибку Uncaught TypeError: Cannot read property 'safari' of undefined?

    zeni1agent,
    Это уже второй раз как wordpress повел себя странно первый раз он резко перестал показывать конфликт ванильного jquery и jquery.min.

    WordPress не ведет себя странно или нормально, в зависимости от погодных условий или настроения. Это не женщина. Если что-то странное происходит, в 99.999999% случаев это вы что-то не то делаете.
  • Почему на wordpess конфликтуют jquery и jquery-ui и я получаю ошибку Uncaught TypeError: Cannot read property 'safari' of undefined?

    zeni1agent, как вы подключали? Код в студию. Откатитесь до состояния подключения родных библиотек из поставки WP. И тогда показывайте ошибки. Будем смотреть.

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

    Плюс, есть подозрение что вы не используете jQuery в своем клиентском коде в режиме noConflict.
  • Почему на wordpess конфликтуют jquery и jquery-ui и я получаю ошибку Uncaught TypeError: Cannot read property 'safari' of undefined?

    Так, давайте для начала разберемся, чем вас не устраивают jQuery и jQuery-UI которые идут в комплекте с WordPress и подключаются автоматически просто как зависимости для вашего скрипта через массив $deps в wp_enqueue_script?
  • MacBook Pro 15 2015 какая должна быть температура?

    lamer350, старовеРы :)

    85% описанного опыта в сети от людей которые никогда не работали с системой/устройством :)

    это да. И недавние свитчеры, которые все еще не могут отвыкнуть от виндоуз
  • Можно ли сделать сайт на javascript с интеграцией в вордпресс?

    Владимир,
    В связке ios-app+Серверное приложение+Веб-сайт не годится сайт на вордпрессе. Это совсем неправильное решение. Так мне и серверщик сказал, да и все говорят.

    Ваши "серверщики" и "все говорят" - идиоты.

    В такой системе сайт должен быть самописным.

    Абсолютно бредовое утверждение.

    Заказать самописный сайт- не великая задача. Но потом мне, как чайнику, нсли нужно добавить любую мелочь, которую на вордпрессе я делаю одним щелчком, установив нужный плагин, мне придется бегать к программисту.

    Это распространенное заблуждение. Если вы будете использовать REST API (а именно его будете использовать что для JS-SPA, что для iOS App), то после добавления плагинов вам надо будет обращаться к разработчику, чтобы он необходимую информацию выводил в ответы REST API, или вообще создавал под новые задачи и фичи отдельные роуты. В общем, без разработчика не обойтись так или иначе.

    В целом, сделать все на WP можно. Но разраб (при чем опытный и хорошо знающий WP, а не говнокодер) все равно понадобится. Делать ли на WP или на фреймворке или вообще самописный с нуля, или же даже не на PHP, а на Golang например - это уже отдельный разговор, и он зависит исключительно от специфики задачи / проекта. А не просто "вордпресс не для такого создан" из уст ограниченного "серверщика".