• Как в woocommerce сделать свою карточку товара?

    @Anonimmus
    вот гайд - https://opttour.ru/plugins/razbiraem-woocommerce-n...

    скопируйте шаблон из папки wp-content/plugins/woocommerce/templates в папку "ваша-тема/woocomerce/content-single-product.php"

    content-single-product.php отвечает за карточку товара. Внутри вы обнаружите разметку и хуки. Его можно переписать на свой лад. Все что вам остается это ознакомиться с хуками и подключать их в свою разметку.

    стилизация подтягивается с get_header () так что вы можете создавать даже новую разметку
    Ответ написан
    Комментировать
  • Как в Swiper слайдере настроить внешний вид пагинации?

    @Anonimmus
    затем когда появится контект у вас появится новая головная боль как убрать 0.
    решение у меня такое

    pagination: {
            el: '.swiper-pagination',
            type: 'fraction',
            formatFractionCurrent: addZero,
            formatFractionTotal: addZero
          },
    
    //где нить ниже 
    
        function addZero(num){
          return (num > 9) ? num : '0' + num;
        }
    Ответ написан
    Комментировать
  • Как вывести уведомление "Спасибо за отзыв" после оставления отзыва на карточке товара (Woocommerce)?

    @Anonimmus
    я сделал такое при помощи плагина popup maker,
    тригер - это отправка формы.

    6073faad551a5614425553.png
    Ответ написан
    Комментировать
  • Как вывести метку в товаре?

    @Anonimmus Автор вопроса
    В общем не дождавшись ответа....... Выкладываю ответ который у меня получился

    <div class="prod__tags">
                <?php if ( !empty(woocommerce_show_product_loop_sale_flash()) ) : ?>
                    <?php woocommerce_show_product_loop_sale_flash(); ?>
                <?php else : ?>
              <?php endif; ?>
    
          <?php if ( has_term('hit', 'product_tag') ) : ?>
          <?php $tagz = get_term_by('slug', 'hit', 'product_tag'); ?>
          <div class="prod__tags-item prod__tags-fire">
            <span class="prod__tags-item-text"><?php echo $tagz->name; ?></span>
          </div>
          <?php endif; ?>


    в loop/sale-flash.php
    <?php if ( $product->is_on_sale() ) : ?>
    	<div class="prod__tags-item prod__tags-sale">
    	<?php echo apply_filters( 'woocommerce_sale_flash', '<span class="prod__tags-item-text">' . esc_html__( 'Скидка', 'woocommerce' ) . '</span>', $post, $product ); ?>
    	</div>
    
    <?php endif;
    Ответ написан
    Комментировать
  • Как вывести товары и с пагинацией в файле taxonomy-product.php?

    @Anonimmus Автор вопроса
    Товарищи ну спасите
    <section class="section recommendations similar">
    	<div class="container recommendations_container">	
    		<div class="content" style="padding: 0 15px;">
    					<div class="section_header">
    						<div class="recommendations_items">
    <?php 
    $related = wc_get_related_products($product->get_id());
    $loop = new WP_Query( array( 
    
    	'post_type'				=> 'product',
    	'ignore_sticky_posts'	=> 1,
    	'posts_per_page'		=> 99,
    	'columns'				=> 3,
    	'order'					=> 'rand',
    	'post__in'				=> $related,
    	'post__not_in'			=> array($product->get_id())
      )); 
    
      while ( $loop->have_posts() ): $loop->the_post(); ?>
      	<div class="recommendation">
    
    
    
      <div <?php post_class("inloop-product"); ?>>
        <div class="row">
          <div class="col-sm-4">
            <?php the_post_thumbnail("thumbnail-215x300"); ?>
          </div>
          <div class="col-sm-8">
            <h4>
              <a href="<?php the_permalink(); ?>">
                <?php the_title(); ?>
              </a>
            </h4>
            <?php the_content(); ?>
            <p class="price">
              <?php _e("Price:","examp"); ?>
              <?php woocommerce_template_loop_price(); ?>
            </p>
            <?php woocommerce_template_loop_add_to_cart(); ?>
          </div>
        </div>
      </div> 
    
    
    </div>
      <?php endwhile; ?>
       <?php if (function_exists('wp_corenavi')) wp_corenavi(); ?>
    
    </div>
    </div>
    </div>
      </div>
    </section>


    function.php
    // для навигации на страницу объектов 
    function wp_corenavi() {  
      global $wp_query, $wp_rewrite;  
      $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'] = 2; //СКОЛЬКО ССЫЛОК ПОКАЗЫВАТЬ СЛЕВА И СПРАВА ОТ ТЕКУЩЕЙ  
      $a['end_size'] = 1; //СКОЛЬКО ССЫЛОК ПОКАЗЫВАТЬ В НАЧАЛЕ И В КОНЦЕ  
      $a['prev_text'] = 'Назад'; //ТЕКСТ ССЫЛКИ "ПРЕДЫДУЩАЯ СТРАНИЦА"  
      $a['next_text'] = 'Дальше'; //ТЕКСТ ССЫЛКИ "СЛЕДУЮЩАЯ СТРАНИЦА"  
       
      if ($max > 1) echo '<div class="paginator">';  
      if ($total == 1 && $max > 1) $pages = '<span class="pages">Страница ' . $current . ' из ' . $max . '</span>'."\r\n";  
      echo $pages . paginate_links($a);  
      if ($max > 1) echo '</div>';  
    }
    Ответ написан
    Комментировать
  • Как вывести товары по атрибуту?

    @Anonimmus Автор вопроса
    <?php 
             $args = array(
              'post_type' => 'product',
              'post_status' => 'publish',
              'ignore_sticky_posts'   => 1, 
              'product_cat' => $term->slug
            );
    
             $products = new WP_Query( $args );
             if ( $products->have_posts() ) :
              ?>
    
              <?php while ( $products->have_posts() ) : $products->the_post(); ?>
                <!-- item -->
    
                <?php  
                $attributes = $product->get_attributes();
                foreach ( $attributes as $attribute ):
        $attribute_data = $attribute->get_data(); // Get the data in an array
    
        $attribute_name = $attribute_data['name']; // The taxonomy slug name
        $attribute_terms = $attribute_data['options'][0]; // The terms Ids
        // echo '<pre>'; print_r($attribute_terms); echo '</pre>'; 
    
        if ($attribute_name == 'метка' & $attribute_terms == 'Новинки' ) {
         wc_get_template_part( 'content', 'product' ); 
        }
     endforeach;
     ?>


    Сам спросил сам же и ответил.. Буду рад разбору вопроса, только адекватно
    Ответ написан
    Комментировать
  • Как сделать переадресацию на страницу в wp?

    @Anonimmus Автор вопроса
    помог лишь вариант где -
    if (in_category('objekt')) { ?>
    include(TEMPLATEPATH.'/templates/object.php');
    <?
    }
    if (in_category('service')) {
    include(TEMPLATEPATH.'/templates/service.php');
    }
    if (in_category('services')) {
    include(TEMPLATEPATH.'/templates/single-service.php');
    }
    Ответ написан
    Комментировать
  • Как изменить или добавить сумму при выборе опции Woocomerce checout form?

    @Anonimmus Автор вопроса
    настройка - Flexible Shipping поможет ??
    Ответ написан
    Комментировать
  • Как найти id и остановить вопроспроизведение ролика?

    @Anonimmus Автор вопроса
    решено, может кому пригодится

    <div class="card">
    
    					<!-- изображение карты -->
    					<div class="card-img">
    						<a class="lightbox" href="#data-1">
    							<img src="source/img/FNAF4_cover.jpg" />
    						</a>
    						<div class="lightbox-target" id="data-1">
    							<video id="video1" controls>
    								<source src="source/video/FNAF 4.mp4" type="video/mp4">
    								Your browser does not support HTML5 video.
    							</video>
    							<a class="lightbox-close" href="#"></a>
    						</div>
    
    					</div>
    					<!-- конец изображения карты -->
    
    					<!-- Заголовок карты -->
    					<div class="card-title">
    						<span class="card-title__title">Заголовок фото видео</span>
    					</div>
    					<!-- конец Заголовок карты -->
    
    					<!-- ссылка -->
    					<!-- <div class="card-button">
    						<a class="card-button__link" href="#0"></a>
    					</div> -->
    					<!-- конец ссылка -->
    				</div>

    $('.lightbox').click(function (event) {
    	var thisvideo = $(this).next('div').attr('id');
    });
    
    $('.lightbox-close').click(function () {
    
    	var myVideoNow = $(this).prev('video').attr('id');
    	// alert(myVideoNow);
    	var myVideo = document.getElementById(myVideoNow);
    
    	if (myVideo != null) {
    		myVideo.pause();
    	}
    });
    Ответ написан
    Комментировать
  • Как правильно задать условие дня недели на php?

    @Anonimmus Автор вопроса
    Незнаю правильно ли.....
    <?php 
    //часовой пояс
    $timezone  = +15;  
    //текущее время
    $currentHour = gmdate("Hi", time() + 3600*($timezone+date("I"))); 
    
    $date = date_create('2021-02-14');
    // date_modify($date, '+1 day');
    $day = date_format($date, 'l');
    
    echo " " . $currentHour . " "; 
    echo $day; 
    if(($currentHour > 1159  and $currentHour < 2229) || ($day == "Friday" || $day == "Saturday" || $day == "Sunday" ) ) 
    { ?>
      рабочее время
    <?php
    }
    else { ?>
     не рабочее время		
    <?php	} 
    ?>
    Ответ написан
    Комментировать
  • Как закрыть блок при клике вне его полей?

    @Anonimmus
    Источник : https://api.jquery.com/mouseout/

    <!doctype html>
    <html lang="en">
    <head>
      <meta charset="utf-8">
      <title>mouseout demo</title>
      <style>
      div.out {
        width: 40%;
        height: 120px;
        margin: 0 15px;
        background-color: #d6edfc;
        float: left;
      }
      div.in {
        width: 60%;
        height: 60%;
        background-color: #fc0;
        margin: 10px auto;
      }
      p {
        line-height: 1em;
        margin: 0;
        padding: 0;
      }
      </style>
      <script src="https://code.jquery.com/jquery-3.5.0.js"></script>
    </head>
    <body>
     
    <div class="out overout">
      <p>move your mouse</p>
      <div class="in overout"><p>move your mouse</p><p>0</p></div>
      <p>0</p>
    </div>
     
    <div class="out enterleave">
      <p>move your mouse</p>
      <div class="in enterleave"><p>move your mouse</p><p>0</p></div>
      <p>0</p>
    </div>


    <script>
    var i = 0;
    $( "div.overout" )
      .mouseout(function() {
        $( "p", this ).first().text( "mouse out" );
        $( "p", this ).last().text( ++i );
      })
      .mouseover(function() {
        $( "p", this ).first().text( "mouse over" );
      });
     
    var n = 0;
    $( "div.enterleave" )
      .on( "mouseenter", function() {
        $( "p", this ).first().text( "mouse enter" );
      })
      .on( "mouseleave", function() {
        $( "p", this ).first().text( "mouse leave" );
        $( "p", this ).last().text( ++n );
      });
    </script>


    при клике тоже самое
    <script>
    $( "любой блок вне" ).click(function() {
      $( ваш блок который скрыть ).hide();
    });
    </script>
    Ответ написан
    Комментировать
  • Как реализовать такой слайдер?

    @Anonimmus
    Оочень рекомендую попробовать именно этот слайдер
    https://swiperjs.com/demos/#responsive_breakpoints
    https://stackblitz.com/edit/swiper-demo-37-respons...

    именно в этом слайдере вы можете реализовать строгую разметку вне зависимости от экрана
    задавая API, также легко добавляются и стрелочки, направления, пагинация итд.. попробуйте, рекомендую
    slidesPerView: 4, // сколько слайдеров на экране
    spaceBetween: 50, // расстояние между ними
    Ответ написан
  • Ссылки в шапке идут с начала а не с конца хотя свойтсво flexend применил. Может еще что-то не написал?

    @Anonimmus
    Position: absolute - делает ваш блок плавающим, тобишь указав ему left: 0 или right: 0. Вы его спозиционируете, а вот от какого элемента - неизвестно, плавающий блок должен иметь родителя с position: relative (от кого отталкиваться).
    Пример вам уже написали ☝️выше
    Ответ написан
    Комментировать
  • Как это починить Бутстрап 4 табы + swiper?

    @Anonimmus Автор вопроса
    Рустам Байназаров,
    Спасибо, заработало лишь через api
    updateOnWindowResize: true,
    observer: true,
    observeParents: true,
    Ответ написан
    2 комментария
  • Как задать свойствоowl carousel 2 - 3 item???

    @Anonimmus Автор вопроса
    Проблему не нашел
    Ответ написан
    Комментировать
  • Как убрать подчёркивание ссылки?

    @Anonimmus
    Мне даже самому интересно стало)
    Пробовали ли text-decoration:none!important; ?
    А шрифт без подчеркивания? Проверьте в панели разработчика может наследование какое... Коммент сожет быть не о чем но так из виду не потеряю)
    Ответ написан
    2 комментария
  • Почему не отображаются отзывы о товарах в woocommerce?

    @Anonimmus
    5fd7c676edcd5418643813.jpeg
    недавно столкнулся, вот решение, ну а если не появится - то в content-single-product проверить наличие строк
    <?php
      /**
       * Hook: woocommerce_after_single_product_summary.
       *
       * @hooked woocommerce_output_product_data_tabs - 10
       * @hooked woocommerce_upsell_display - 15
       * @hooked woocommerce_output_related_products - 20
       */
      do_action( 'woocommerce_after_single_product_summary' );
      ?>
    </div>
    
    <?php do_action( 'woocommerce_after_single_product' ); ?>
    Ответ написан
    Комментировать
  • Как исправить ошибку Wp get_option?

    @Anonimmus Автор вопроса
    Решение не в function.php, а как оказалось в options.php файла wp-includes/contact form 7. Строка blacklist. Переименовать в dissalowed.
    Ответ написан
    Комментировать
  • Дelete answerrrr?

    @Anonimmus
    Всякое бывает: вот ссылка
    Ответ написан
    Комментировать