// Отключить все обновления
define( 'AUTOMATIC_UPDATER_DISABLED', true );
add_action( 'site_transient_update_plugins', '__return_false' );
pre_site_transient_update_plugins
- это фильтр, который срабатывает перед тем, как transient будет сохранен. site_transient_update_plugins
- это экшн, который вызывается сразу после того, как transient был сохранен. Поэтому они работают по разному. Фильтр - возращает измененное значение, которое сохраняется в transient. Экшн выполняет действие после сохранения.http_request_args
, и проверять куда готовится запрос. Если это на сервер обновлений - то блокируем запрос до того, как он был отправлен. <?php wp_nav_menu( array( 'theme_location' => 'menu-1', 'menu_id' => 'menu-header' ) ); ?>
<?php wp_nav_menu( array( 'theme_location' => 'menu-1', 'menu_id' => 'menu-footer' ) ); ?>
<?php
$args=array(
'orderby' => 'name',
'order' => 'ASC',
'child_of' => 8, // ID родительской рубрики "Услуги"
'hide_empty' => false
);
$categories=get_categories($args);
foreach($categories as $category) : ?>
<div class="sertvices-cat">
<a href="<?php echo get_category_link( $category->term_id )?>" title="<?php printf( __( "View all posts in %s" ), $category->name ) ?>"><?php echo $category->name; ?></a>
<p><?php echo $category->description; ?></p>
</div>
<?php $args = array(
'cat' => $category->term_id,
'posts_per_page' => 4,//или сколько нужно
);
$my_posts = new WP_Query($args);
if ($my_posts->have_posts()) :?>
<div>
<?php while($my_posts->have_posts()) : $my_posts->the_post();?>
Вывод постов
<?php endwhile;
wp_reset_postdata();?>
</div>
<?php endif;?>
<?php endforeach;?>
<?php
require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );
global $post;
global $wpdb;
?>
<?php $markers = get_posts ('post_type=markers&order=ASC'); ?>
<?php $arr = array(); ?>
<?php if ($markers) :?>
<?php foreach ($markers as $post) : setup_postdata ($post); ?>
<?php
$arr[get_the_ID()]['type'] = 'Feature';
$arr[get_the_ID()]['id'] = '0';
$arr[get_the_ID()]['geometry']['type'] = 'Point';
$arr[get_the_ID()]['geometry']['coordinates'] = array(55.831903, 37.411961);
$arr[get_the_ID()]['properties']['balloonContent'] = 'Содержимое балуна';
$arr[get_the_ID()]['properties']['clusterCaption'] = 'Еще одна метка';
$arr[get_the_ID()]['properties']['hintContent'] = 'Текст подсказки';
?>
<?php endforeach; ?>
<?php endif; ?>
<?php wp_reset_postdata(); ?>
<?php
$array = array(
"type" => "FeatureCollection",
"features" => array_values($arr)
);
?>
<?php echo json_encode($array); ?>
function woo_login_redirect( $redirect_to ) {
$redirect_to = wc_customer_edit_account_url();
return $redirect_to;
}
add_filter( 'woocommerce_login_redirect', 'woo_login_redirect' );
/**
* Always redirect user to "Edit Account" page after login.
*
* @return string Target URL
*/
function woo_login_redirect()
{
return wc_customer_edit_account_url();
}
add_filter( 'woocommerce_login_redirect', 'woo_login_redirect' );
/**
* Always redirect user to "Edit Account" page after login.
*
* @return string Target URL
*/
add_filter( 'woocommerce_login_redirect', function() {
return wc_customer_edit_account_url();
} );
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 }
}
<?php
global $post;
$post_id = 9;
$post = get_post($post_id);
setup_postdata($post);
?>
<?php the_post_thumbnail(); ?>
<h3><?php the_title(); ?></h3>
<p><?php the_excerpt(); ?></p>
<a href="<?php the_permalink(); ?>" class="btn">Подробнее о нас</a>
<?php wp_reset_query(); ?>
get_option('mainpage'); // id поля опции уже сами выберите
<?php
class Toster_Theme_Customize{
public static function init()
{
$customize = new Toster_Theme_Customize();
add_action( 'customize_register', array($customize, 'customizeRegister') );
}
public function customizeRegister( $wp_customize )
{
$wp_customize->add_section(
'theme_option', // id секции
array(
'title' => __('Theme Options', "interia"),
'priority' => 1
)
);
if ( get_pages() ) {
$wp_customize->add_setting( 'mainpage', array(
'type' => 'option',
'capability' => 'manage_options',
) );
$wp_customize->add_control( 'mainpage', array(
'label' => __( 'Main page', "interia" ),
'section' => 'theme_option',
'type' => 'dropdown-pages',
) );
}
}
}
Toster_Theme_Customize::init();