Как скрыть этот конкретный элемент div, используя css для каждой страницы (WP) - PullRequest
0 голосов
/ 29 мая 2018

Первый пост здесь (ууу!), Я ищу помощи, так как борюсь с этим с сегодняшнего утра.Раньше я пытался неловко использовать CSS, но, похоже, это не сработало.

Итак, я пытаюсь удалить эту иконку / кнопку корзины (в правом нижнем углу для посетителей, которые не вошли в систему).(www.friendly.marketing)

Код этого элемента:

</header>         
     <div id="dark-cart-overlayer"></div>
 <div id="cart-panel">
    <div id="cart-panel-trigger">
        <span class="fas fa-shopping-cart"></span>
        <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="20" height="20" viewBox="0 0 20 20">
            <path fill="#ffffff" d="M10.707 10.5l5.646-5.646c0.195-0.195 0.195-0.512 0-0.707s-0.512-0.195-0.707 0l-5.646 5.646-5.646-5.646c-0.195-0.195-0.512-0.195-0.707 0s-0.195 0.512 0 0.707l5.646 5.646-5.646 5.646c-0.195 0.195-0.195 0.512 0 0.707 0.098 0.098 0.226 0.146 0.354 0.146s0.256-0.049 0.354-0.146l5.646-5.646 5.646 5.646c0.098 0.098 0.226 0.146 0.354 0.146s0.256-0.049 0.354-0.146c0.195-0.195 0.195-0.512 0-0.707l-5.646-5.646z"></path>
        </svg>
    </div>

Есть ли способ, которым я могу добиться этого в css?

Ответы [ 4 ]

0 голосов
/ 30 мая 2018

Вам понадобится какая-то условная логика, чтобы определить, вошел ли пользователь в систему. Вы можете использовать хуки WooCommerce, чтобы скрыть кнопку добавления в корзину.Этот код должен достичь этого.Вам нужно будет добавить его к теме вашей дочерней темы functions.php.

add_action( 'init', 'hide_add_to_cart_not_logged_in' );

function hide_add_to_cart_not_logged_in() { 
 if ( !is_user_logged_in() ) {       
  remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
  remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
  add_action( 'woocommerce_after_shop_loop_item', 'print_login_to_see', 11 ); 
  add_action( 'woocommerce_single_product_summary', 'print_login_to_see', 31 );
}
}

function print_login_to_see() {
echo '<a href="' . get_permalink(wc_get_page_id('myaccount')) . '">' . __('Login to add to cart', 'theme_name') . '</a>';
}
0 голосов
/ 29 мая 2018

Попробуйте:

div#cart-panel-trigger { display: none; }  

Надеюсь, это сработает.

0 голосов
/ 29 мая 2018

WordPress имеет класс .logged-in, помещенный в тег <body>, чтобы определить, вошел ли пользователь в систему или нет.

В вашем css определите свой стиль следующим образом:

body.logged-in #cart-panel-trigger {
  display: none;
}
#cart-panel-trigger {
  display: block;
}
0 голосов
/ 29 мая 2018

Вы можете попробовать это

cart-panel{display:none;}

Это скрыло бы Div Id с тележкой-панелью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...