@media
. Через условные комментарии нужно подключить respond.js и html5shiv в самом конце head, обязательно ПОСЛЕ всех своих стилей.<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<?php $mycat=get_the_category(); $mycat=$mycat[0]; ?>
<?php $postslist = get_posts('numberposts=-1&orderby=title&order=ASC&category='.$mycat->cat_ID); ?>
<ul>
<section class="portfolio">
<div class="grid" data-cols="2" data-margin="15" data-height="1" data-double-height="2" style="margin: -15px; position: relative; height: 1650px;">
<?php
$i=1;
foreach ($postslist as $post) : setup_postdata($post); ?>
<div class="entry <?php if( $i%3 == 0 ) echo 'w2';?>" style="width: 429px; height: 300px; margin: 15px; position: absolute; left: 918px; top: 0px;">
<a href="<?php the_permalink(); ?>">
<?php if ( has_post_thumbnail()) {
$image_url_min = wp_get_attachment_image_src( get_post_thumbnail_id(), 'full'); ?>
<div class="entry-image imageBG" data-img="<?php echo $image_url_min[0]; ?>" style="background-image: url('<?php echo $image_url_min[0]; ?>'); background-size: cover; background-position: 50% 50%;"></div>
<?php }?>
<div class="entry-content hidden">
<div class="entry-desc">
<div class="entry-title"><a class="h2grid" href="<?php the_permalink(); ?>"><?php the_title(); ?></a></div>
<div class="entry-p"> <p class="dopp" style=""><?php the_field('date'); ?><p>
<p class="ssilkahomeitem" style="font-size: 13px!important; font-family: 'proximanovabold';">
<a href="/lektsii/">ЛЕКЦИИ</a></p>
</div>
</div>
</div>
</a>
</div>
<?php
$i++;
endforeach; ?>
add_action( 'after_setup_theme', 'mytheme_setup' );
function mytheme_setup() {
add_theme_support( 'menus' );
}
wp_nav_menu()
<?php
wp_nav_menu( array(
'menu' => 'название_меню',
'container' => 'nav', // ну или div
'container_class' => 'класс контейнера',
) );
?>
add_action( 'woocommerce_after_shop_loop_item_title', 'show_attributes', 20 );
function show_attributes() {
global $product;
if ($product->product_type == 'variable') {
$attributes = $product->get_attributes();?>
<ul>
<?php $variations_ids = $product->get_children();
foreach ($variations_ids as $variation_id) {
$variation = $product->get_child($variation_id);
$variation_data = $variation->get_variation_attributes();
$attributes = $variation->parent->get_attributes();
$description = array();
$attr_name = '';
if ( is_array( $variation_data ) ) {
foreach ( $attributes as $attribute ) {
if ( ! $attribute[ 'is_variation' ] ) {
continue;
}
$variation_selected_value = isset( $variation_data[ 'attribute_' . sanitize_title( $attribute[ 'name' ] ) ] ) ? $variation_data[ 'attribute_' . sanitize_title( $attribute[ 'name' ] ) ] : '';
$description_name = esc_html( wc_attribute_label( $attribute[ 'name' ] ) );
$description_value = __( 'Any', 'woocommerce' );
if ( $attribute[ 'is_taxonomy' ] ) {
$post_terms = wp_get_post_terms( $variation->id, $attribute[ 'name' ] );
foreach ( $post_terms as $term ) {
if ( $variation_selected_value === $term->slug ) {
$description_value = esc_html( apply_filters( 'woocommerce_variation_option_name', $term->name ) );
}
}
} else {
$options = wc_get_text_attributes( $attribute[ 'value' ] );
foreach ( $options as $option ) {
if ( sanitize_title( $variation_selected_value ) === $variation_selected_value ) {
if ( $variation_selected_value !== sanitize_title( $option ) ) {
continue;
}
} else {
if ( $variation_selected_value !== $option ) {
continue;
}
}
$description_value = esc_html( apply_filters( 'woocommerce_variation_option_name', $option ) );
}
}
$description[] = rawurldecode( $description_value );
}
$attr_name .= implode( '', $description );
} ?>
<li><?php echo $attr_name;?> - <?php echo $variation->get_price_html();?></li>
<?php } ?>
</ul>
<?php }
}
is_tax();
if ( is_tax( 'product_cat', 'primer' )) {
$args = array(
'theme_location' => 'sidebar-menu',
'menu_class' => 'sidebar-nav',
);
wp_nav_menu($args);
}
else{
$args = array(
'theme_location' => 'sidebar-menu-2',
'menu_class' => 'sidebar-nav',
);
wp_nav_menu($args);
}
woocommerce_content()
, которая определяет тип страницы и подтягивает нужный шаблон из шаблонов в самом плагине. Все шаблоны вы можете переопределять и кастомизировать. Оставляете главную на сайте как есть. index.php, например, или как у вас сейчас, я не знаю. Там вероятно есть header.php и footer.php. Создайте header-shop.php и footer-shop.php для использования на страницах магазина. Подключайте так get_header('shop');
Еще почитайте здесь virtum.com.ua/sozdanie-temy-dlya-woocommerce-kratk... add_filter( 'manage_edit-product_sortable_columns', 'my_product_sorting_column' );
function my_product_sorting_column( $columns ) {
$columns['is_in_stock'] = 'in_stock';
return $columns;
}
add_action( 'pre_get_posts', 'my_product_sorting' );
function my_product_sorting( $query ) {
if( ! is_admin() )
return;
$orderby = $query->get( 'orderby');
if( 'in_stock' == $orderby ) {
$query->set('meta_key','_stock_status');
$query->set('orderby','meta_value');
}
}
// Open directly via API
$.magnificPopup.open({
items: {
src: '<div class="white-popup">Dynamically created popup</div>', // can be a HTML string, jQuery object, or CSS selector
type: 'inline'
}
});
<?php
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$pagination_args = array(
'prev_text' => __( '«' ),
'next_text' => __( '»' )
);
$args = array(
'posts_per_archive_page' => 3,
'orderby' => 'none',
'post_type' => 'news',
'offset' => 1,
'paged' => $paged
);
$wp_query = new WP_Query( $args );
if ( have_posts() ) :
while ($wp_query->have_posts()) : $wp_query->the_post();
endwhile;
the_posts_pagination($pagination_args);
endif;
wp_reset_query(); ?>
<ul>
<?php
$terms = get_terms( 'product_cat', array( 'child_of' => 30, ) );
foreach ($terms as $term) {
echo '<li><a href="'.get_term_link($term,'product_cat').'">'.$term->name.'</a></li>';
} ?>
</ul>
Решение данной проблемы простое, необходимо в файл wp-config.php дописать в самый конец строку:
define('FS_METHOD', 'direct');
Либо более «правильный» код:
if(is_admin()) {
add_filter('filesystem_method', create_function('$a', 'return "direct";' ));
define( 'FS_CHMOD_DIR', 0751 );
}
После чего WordPress должен обновляться в нормальном режиме.