login_redirect
add_filter( 'login_redirect', 'login_redirect', 10, 3 );
function login_redirect( $redirect_to, $request, $user ) {
if ( is_plugin_active( 'woocommerce/woocommerce.php' ) ) {
return get_edit_user_link( $user->ID );
}
return $redirect_to;
}
woocommerce_login_redirect
, можете попробовать использовать егоadd_filter( 'woocommerce_login_redirect', 'filter_function_name_7289', 10, 2 );
function filter_function_name_7289( $remove_query_arg, $user ){
// filter...
return $remove_query_arg;
}
position: absolute;
width: 100%;
z-index: 10;
top: 0;
left: 0;
$description = "<div id='details-2' class='col-12 col-xl-4 col-lg-12 mb-xl-5 mb-5'><div class='d-flex b-skills'><div class='height:70px;'><div class='text-bold'>";
echo $description,"\n";
echo addslashes($description);
if (isset($_POST['currentTier']) && strpos($_GET['type'], 'placements')===false) $description .= "<div id=details-2 class='col-12 col-xl-4 col-lg-12 mb-xl-5 mb-5'><div class='d-flex b-skills'><div class='height:70px;'><div class='text-bold'>Текущая лига:</div> <div class='text-primary'> ".$tiers[$_POST['currentTier']]."</div></div></div></div></br>";
price = price_total.reduce((a, b) => a + b, 0);
if (server === "na" || server === "oce") {
price = price * 1.2; // 100 * 1.2 = 120
currency = "USD";
currency_s = "$";
if (current_tier >= 6 || desired_tier >= 6) {
price = price * 1.1;
} else {
price = price * 1.2; // 120 * 1.2 = 144
}
} else {
currency = "EUR";
currency_s = "€";
}
...
is_home()
— проверяет показывается ли страница с последними постамиget_theme_file_uri()
, которую редко используют из-за кучи старых гайдов. Она ищет файл сначала в дочерней теме, если его там нет, то берет его из основнойfilemtime()
. Это нужно, чтобы браузер не кешировал измененные файлы и всегда показывал только актуальную версиюis_page()
проверяю слаги постов. Но это уже вкусовщинаfunction custom_scripts_init() {
// общие стили
wp_enqueue_style( 'common-styles', get_theme_file_uri( 'assets/css/common.min.css' ) , array(), filemtime( get_theme_file_path( '/assets/css/common.min.css' ) ) );
// общие скрипты
wp_enqueue_script( 'common-scripts', get_theme_file_uri( 'assets/js/common.min.js' ), array( 'jquery' ), filemtime( get_theme_file_path( '/assets/js/common.min.js' ) ), true );
// скрипты для страницы постов
if ( is_home() ) {
wp_enqueue_script( 'home-scripts', get_theme_file_uri( 'assets/js/home.min.js' ), array( 'jquery' ), filemtime( get_theme_file_path( '/assets/js/home.min.js' ) ), true );
}
// скрипты для массива страниц
if ( is_page( ['sample-page', 'contacts'] ) ) {
wp_enqueue_script( 'page-scripts', get_theme_file_uri( 'assets/js/page.min.js' ), array( 'jquery' ), filemtime( get_theme_file_path( '/assets/js/page.min.js' ) ), true );
}
}
add_action( 'wp_enqueue_scripts', 'custom_scripts_init' );
add_filter( 'woocommerce_checkout_fields', 'conditionally_remove_checkout_fields', 25, 1 );
function conditionally_remove_checkout_fields( $fields ) {
// Определяем категорию для которой отключем поля
$categories = array('house');
$found = false;
// Проверяем товары: находятся ли они в выше указаной категории?
foreach ( WC()->cart->get_cart() as $cart_item ){
if( has_term( $categories, 'product_cat', $cart_item['product_id'] ) ) {
$found = true;
break;
}
}
// Если товар принадлежит выше указаной категории, тогда отключаем поля
if ( $found ) {
// hide the billing fields
unset($fields['shipping']['shipping_first_name']);
unset($fields['shipping']['shipping_last_name']);
unset($fields['shipping']['shipping_company']);
unset($fields['shipping']['shipping_address_1']);
unset($fields['shipping']['shipping_address_2']);
unset($fields['shipping']['shipping_city']);
unset($fields['shipping']['shipping_postcode']);
unset($fields['shipping']['shipping_country']);
unset($fields['shipping']['shipping_state']);
unset($fields['shipping']['shipping_phone']);
}
return $fields;
}