2016-10-31 2 views
1

У меня есть сайт Wordpress, где я получаю телефонные звонки от людей, чтобы сделать заказ. Моя проблема заключается в том, что когда я перехожу в Woocommerce к «Добавить заказ», я не знаю, существует ли этот клиент, если я не наберу его имя. У меня есть люди, которые говорят свое имя как «Майк», в следующий раз, как «Майкл» и т. Д., Поэтому я имею его в моем списке 2 раза. Бывает и с другими именами. Я использую плагин «Создавать заказчик по заказу», поэтому, если клиент не существует, я создаю его в этот момент.Wordpress - клиент «Добавить заказ» по телефону

Так что мой вопрос: есть ли способ добавить код в поле «Клиент», после нажатия «Добавить заказ», чтобы я мог искать человека по его номеру телефона, а не по его имени?

ответ

1

WordPress по умолчанию позволяет вам искать пользователей по имени пользователя/nicename. Вы можете, конечно, основываться на этом и иметь возможность искать по имени, фамилии, адресу электронной почты и любому пользовательскому мета-полю, который уже существует в мета-таблице пользователя.

Взгляните на то, как они построили этот плагин: Woocommerce - Better User Search

Основной запрос они используют, чтобы соответствовать пользователям выглядит примерно так:

  $user_ids = $wpdb->get_col($sql = $wpdb->prepare(" 
       SELECT user_id 
       FROM (" . implode('UNION ALL', array_fill(0, count($terms), " 
        SELECT DISTINCT u.ID AS user_id 
        FROM {$wpdb->users} u 
        INNER JOIN {$wpdb->usermeta} um 
        ON um.user_id = u.ID 
        INNER JOIN {$mktable} mk 
        ON mk.meta_key = um.meta_key 
        WHERE LOWER(um.meta_value) LIKE %s 
        OR LOWER(u.user_login) LIKE %s 
        OR LOWER(u.user_nicename) LIKE %s 
        OR LOWER(u.user_email) LIKE %s 
        OR LOWER(u.user_url) LIKE %s 
        OR LOWER(u.display_name) LIKE %s 
       ")) . ") AS user_search_union 
       GROUP BY user_id 
       HAVING COUNT(*) >= %d; 
      ", $values)); 

Взгляните на их исходный код, это хорошо прокомментировал и приспособил его к вашим потребностям (если вы только хотите использовать телефон), это очень просто. Просто возьмите соответствующий контент из best-user-search.php и импортируйте его в свои темы functions.php или создайте свой собственный плагин с вдохновением от их работы.

+0

Спасибо, Бобета. Я посмотрю, что – user2607179

Смежные вопросы