add_action('wp_enqueue_scripts', 'champfood_enqueue_styles');
$args = [];
global $wp_query;
$wp_query = new WP_Query($args);
По уроку посадил верстку на CMS, вместо заголовков(h1-h4) стоит : <?php the_title(); ?>
Видимо все <?php the_title(); ?> привязаны к одной и той же записи.
the_title()
Выводит название текущей записи в цикле. HTML заголовки тут совершенно не причем. Вы функцию можете обернуть в заголовок или передать теги заголовка в аргуметы к этой функции.Вместо параграфов : <?php the_post(); ?> <?php the_content(); ?>Что значит вместо параграфов? Идите в документацию. Использование
the_post()
ВНЕ цикла WP не имеет никакого смысла. the_content()
выводит содержимое текущей записи в цикле. Причем тут параграфы?(Документация wordpress конкретно мне ничего не даст)
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 }
}
// 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 страницу ?