$file_import = get_stylesheet_directory() . '/data/baza.xlsx';
if ( $xlsx = SimpleXLSX::parse( $file_import ) ) {
$excel = $xlsx->rows(0);
foreach ( $excel as $key_r => $excel_row ) {
// rows.
foreach ( $excel_row as $key_c => $excel_col ) {
// cols.
}
}
}
$separator = '|';
// Title prefixes.
if ( is_post_type_archive() ) {
$title[] = _x( 'Archives:', 'post type archive title prefix', 'wpgen' );
} elseif ( is_category() ) {
$title[] = _x( 'Category:', 'category archive title prefix', 'wpgen' );
} elseif ( is_tag() ) {
$title[] = _x( 'Tag:', 'tag archive title prefix', 'wpgen' );
} elseif ( is_author() ) {
$title[] = _x( 'Author:', 'author archive title prefix', 'wpgen' );
} elseif ( is_date() ) {
if ( is_year() ) {
$title[] = _x( 'Year:', 'date archive title prefix', 'wpgen' );
} elseif ( is_month() ) {
$title[] = _x( 'Month:', 'date archive title prefix', 'wpgen' );
} elseif ( is_day() ) {
$title[] = _x( 'Day:', 'date archive title prefix', 'wpgen' );
}
} elseif ( is_tax( 'post_format' ) ) {
if ( is_tax( 'post_format', 'post-format-aside' ) ) {
$title[] = _x( 'Asides', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-gallery' ) ) {
$title[] = _x( 'Galleries', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-image' ) ) {
$title[] = _x( 'Images', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-video' ) ) {
$title[] = _x( 'Videos', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-quote' ) ) {
$title[] = _x( 'Quotes', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-link' ) ) {
$title[] = _x( 'Links', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-status' ) ) {
$title[] = _x( 'Statuses', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-audio' ) ) {
$title[] = _x( 'Audio', 'post format archive title', 'wpgen' );
} elseif ( is_tax( 'post_format', 'post-format-chat' ) ) {
$title[] = _x( 'Chats', 'post format archive title', 'wpgen' );
}
}
// Main title.
if ( is_single() || is_page() ) {
$title[] = get_the_title();
} elseif ( is_404() ) {
$title[] = __( 'Page not found', 'wpgen' );
} elseif ( is_search() ) {
$title[] = sprintf( __( 'Search Results for “%s”', 'wpgen' ), get_search_query( false ) );
} elseif ( is_post_type_archive() ) {
$title[] = get_queried_object()->label;
} elseif ( is_author() ) {
$title[] = get_queried_object()->display_name ?? '';
} elseif ( is_date() ) {
if ( is_year() ) {
$title[] = get_the_date( 'Y' );
} elseif ( is_month() ) {
$title[] = get_the_date( 'F Y' );
} elseif ( is_day() ) {
$title[] = get_the_date( 'F j, Y' );
}
} elseif ( is_archive() ) {
$title[] = get_queried_object()->name;
}
// Add site info in the title.
if ( ! isset( $title ) ) {
$title[] = get_bloginfo( 'name' );
$title[] = $separator;
$title[] = get_bloginfo( 'description' );
} else {
if ( is_paged() ) {
$title[] = $separator;
$title[] = __( 'Page', 'wpgen' ) . ' ' . $paged;
}
$title[] = $separator;
$title[] = get_bloginfo( 'name' );
}
$title = implode( ' ', $title );
register_post_type()
и register_taxonomy()
get_template_part( 'templates/archive/post', get_post_type() );
pre_get_posts
$thumbnail_id = get_woocommerce_term_meta( $cat->term_id, 'thumbnail_id', true );
$image_url = wp_get_attachment_url( $thumbnail_id );
get_woocommerce_term_meta()
не работает, используйте get_term_meta()
вместо нее$thumbnail_id = get_term_meta( $cat->term_id, 'thumbnail_id', true );
$image_url = wp_get_attachment_url( $thumbnail_id );
wp_is_mobile()
, которая проверяет переменную HTTP_USER_AGENT по ключевым словам на наличие мобильного устройства у пользователя, но на нее нельзя полагаться на 100% geoip_detect2_get_info_from_current_ip()
При подключений PHP файлов сайт не работает
сами php файлы у меня в директории сайта находятся
require_once ( ABSPATH . 'wp-admin/includes/plugin.php' );
require_once get_stylesheet_directory() . '/includes/setup.php';
wp_add_inline_script()
, которая добавляет JS прямо в html документ, после указанного скрипта. Например, инициализация masonry может выглядеть так:wp_enqueue_script( 'masonry' );
$masonry_init = 'jQuery(function($) {
var $container = $(".masonry-gallery");
$container.imagesLoaded( function() {
$container.masonry({
columnWidth: ".masonry-item",
itemSelector: ".masonry-item"
});
});
});';
wp_add_inline_script( 'masonry', $masonry_init );
add_action()
, а убираются с помощью remove_action()
remove_action( 'woocommerce_before_single_product_summary', 'woocommerce_show_product_sale_flash', 10 );
remove_action( 'woocommerce_before_single_product_summary', 'woocommerce_show_product_images', 20 );
meta_key
запроса wp_query()
$posts = get_posts( array(
'post_type' => 'event',
'meta_key' => 'date',
'orderby' => 'meta_value_num',
'order' => 'ASC',
));
pre_get_posts
add_action( 'pre_get_posts', 'pre_get_events', 1 );
function pre_get_events( $query ) {
if ( $query->is_post_type_archive( 'event' ) ) {
$query->set( 'meta_key', 'date' );
$query->set( 'orderby', 'meta_value_num' );
}
}
get_query_var()
проверяете наличие переменной и меняете основной запросadd_action( 'pre_get_posts', 'custom_pre_get_posts', 1 );
function custom_pre_get_posts( $query ) {
if ( $tag = get_query_var( 'tag', false ) ) {
$query->set( 'tag', $tag );
}
}
get_query_var()
проверять наличие переменной и подменять заголовок с описанием wp_add_inline_script()
. Пример:add_action( 'wp_enqueue_scripts', 'masonry_init_scripts' );
function masonry_init_scripts() {
wp_enqueue_script('masonry');
$masonry_init = 'jQuery(function($) {
var $container = $(".masonry-container");
$container.imagesLoaded( function() {
$container.masonry({
columnWidth: ".masonry-item",
itemSelector: ".masonry-item"
});
});
});';
wp_add_inline_script( 'masonry', $masonry_init );
}
var_dump( get_option( 'rewrite_rules', false ) );
var_dump( get_option( 'widget_categories', false ) );
var_dump( get_option( 'wp_user_roles', false ) );
var_dump( get_option( 'cron', false ) );
var_dump( get_post_meta( get_the_ID(), '_schema_json', true ) );