Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

Крил

  • 1
    вклад
  • 65
    вопросов
  • 17
    ответов
  • 47%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как вылечить сортировку кириллицы в get_terms?

    Крил @80689248440 Автор вопроса
    $termchildren = get_terms('product_cat', $args); 
    $array = (array)$termchildren; 
    $sortirovka = array();
    foreach($array as $value){
    	$sortirovka[$value->name] = $value;
    }
    ksort($sortirovka,SORT_LOCALE_STRING);
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Откуда сортировка в $wp_query или как её отключить?

    Крил @80689248440 Автор вопроса
    Это гениально! $args['orderby'] = 'post__in';
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как добавлять функции woocommerce на страницы шаблона?

    Крил @80689248440
    У каждого товара есть данные в произвольных полях - вам остаётся найти id товара и вывести через get_post_meta()
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как сделать автоматическую отправку email на Wordpress?

    Крил @80689248440
    нужно писать обработчик формы который будет отправлять данные в mailchimp по api и сразу же отправлять письмо со ссылкой на мейл что указал пользователь
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • В contact form 7 как сделать уведомление на почту?

    Крил @80689248440
    В блоке где формируем получателя есть блок второго получателя, вот в нём в поле To поставьте тег в котором содержится почта отставленная через форму
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • WooCommerce ка изменить функционал корзины?

    Крил @80689248440
    Включите один из способов оплаты, сделайте его по умолчанию, а через css скройте
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как сделать ограничение к доступу сайта (Wordpress)?

    Крил @80689248440
    Только через кукисы, не вижу смысла куда-то писать ip и прочие данные
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Смена цены в зависимости от выбора размера товара woocommerce?

    Крил @80689248440
    С помощью jQuery - меняем значение в теге после загрузки страницы (или в файле price.php отображаем минимальное значение сразу) и при клике меняем его
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Где хранятся формы плагина "contact form 7"?

    Крил @80689248440
    В таблице posts и postmeta
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как выводить похожие товары только из подкатегории?

    Крил @80689248440 Автор вопроса
    вопрос решен - всё дело в массиве $related в файле related.php
    global $product, $woocommerce_loop;
    
    if ( empty( $product ) || ! $product->exists() ) {
    	return;
    }
    
    $related = $product->get_related( $posts_per_page );
    
    if ( sizeof( $related ) == 0 ) return;
    
    foreach (get_the_terms( $product->id, 'product_cat' ) as $cat){
       if($cat->parent == 0){
    	   $mama = $cat->term_id;	   
    		foreach (get_the_terms( $product->id, 'product_cat' ) as $cat2){
    			if($cat2->parent == $cat->term_id){
    				$child = $cat2->term_id;				
    				break;				
    			}			
    		}
    	   break;
       }   
    }
    
    
    $args = array(	
    	'orderby'=>'rand',
    	'tax_query' => array(
    		array(
    			'taxonomy' => 'product_cat',			
    			'terms' => $child,
    			include_children => false
    		)
    	)
    );
    $childprod = new WP_Query( $args );
    $arr = array();
    foreach ($childprod->posts as $pid){	
    	array_push($arr, $pid->ID);			
    }
    wp_reset_postdata();
    unset($arr[array_search($product->id,$arr)]);
    shuffle($arr); 
    array_splice($arr, 3);
    if(count($arr) < 3){
    	$arr = $related;
    }
    
    $args = apply_filters( 'woocommerce_related_products_args', array(
    	'post_type'            => 'product',
    	'ignore_sticky_posts'  => 1,
    	'no_found_rows'        => 1,
    	'posts_per_page'       => $posts_per_page,
    	'orderby'              => $orderby,	
    	'post__in'             => $arr,	
    	'post__not_in'         => array( $product->id )
    ) );
    
    $products = new WP_Query( $args );
    
    $woocommerce_loop['columns'] = $columns;
    
    if ( $products->have_posts() ) : ?>
    
    </div>
    </div>
    <div style="clear: both;"></div>
    </div>
    
    	<div class="related products">
    
    		<h2 style="display: inline; text-transform: uppercase;"><?php _e( 'Related Products', 'woocommerce' ); ?></h2>
    
    		<?php woocommerce_product_loop_start(); ?>
    
    			<?php while ( $products->have_posts() ) : $products->the_post(); ?>
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему не сохраняется поле фамилия?

    Крил @80689248440 Автор вопроса
    причем update_user_meta($user_id, 'billing_last_name', $_POST['last_name']); и
    update_user_meta($user_id, 'last_name', $_POST['last_name']);
    возвращают 1 и номер поля но похоже что они перезаписываются самим вукомерцем ещё раз
    приоритет пробовал менять - не помогло
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Сегодня встретил в коде uptoliked.ru, css.googleaps.ru, wq4.ru, shareup.ru/social.js что это?

    Крил @80689248440
    Никак не доходили руки почистить 1 свой сайт и как оказалось заражены 22 сайта из 25 (2 локальные)
    Удалось узнать как закрыть дыру?
    Скиньте зараженный cache.php у кого есть для анализа.

    Вот нашёл решение hlep.ru/udalyaem-skript-wollses-com-iz-kontenta
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему в $query получаю бред?

    Крил @80689248440 Автор вопроса
    получил с помошью
    $customer_orders = get_posts( apply_filters( 'woocommerce_my_account_my_orders_query', array(
    'numberposts' => $order_count,
    'meta_key' => '_customer_user',
    'meta_value' => get_current_user_id(),
    'post_type' => wc_get_order_types( 'view-orders' ),
    'post_status' => array_keys( wc_get_order_statuses() )
    ) ) );
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как сделать редирект когда корзина woocomerce пустая?

    Крил @80689248440 Автор вопроса
    Правильный код:
    add_action('init','removeOldRedirectFunction');
    function removeOldRedirectFunction(){
        remove_action( 'template_redirect', 'wc_template_redirect' );
        add_action('template_redirect', 'my_wc_template_redirect');
    }
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Отобржение своего статуса таксономии в плагине woocomerce - не работает - почему?

    Крил @80689248440 Автор вопроса
    разобрался - все дело в файле abstract-wc-product.php
    добавляем так
    } elseif ( $this->post->post_status === 'nal' ) {
    			$purchasable = true;
    
    		// Check the product is published
    		} elseif ( $this->post->post_status !== 'publish' && ! current_user_can( 'edit_post', $this->id ) ) {
    			$purchasable = false;		
    		}

    и вот так
    } elseif ( $this->post->post_status === 'nal' ) {
    			$visible = true;
    		// Published/private
    		} elseif ( $this->post->post_status !== 'publish' && ! current_user_can( 'edit_post', $this->id ) ) {
    			$visible = false;
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как закрыть/выгрузить из памяти данные XMLReader()?

    Крил @80689248440 Автор вопроса
    Решение кроется в том чтоб мне вернуться на начало документа так как в
    while($nxml->read() && $nxml->name !== 'offer');
    Мы опускаемся всё ниже и ниже, а вот как вернуть курсор на начало документа не знаю способа кроме как открыть его заново.
    Пробовал:
    moveToAttribute
    moveToAttributeNo
    moveToAttributeNs
    moveToElement
    moveToFirstAttribute
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как разобрать $wp_query?

    Крил @80689248440 Автор вопроса
    Всё как я и сказал, но пришлось понять вложенность массивов и объектов.
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
Оценили как «Нравится»
Самые активные сегодня
  • mayton2019
    • 8 ответов
    • 0 вопросов
  • Enokin
    Владислав
    • 8 ответов
    • 0 вопросов
  • Evgenii
    • 7 ответов
    • 0 вопросов
  • Drno
    • 5 ответов
    • 0 вопросов
  • sharp97
    sharp97
    • 4 ответа
    • 1 вопрос
  • OpenAI
    OpenAI
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации