__( 'Primary Menu', 'tailpress' ),
)
);
add_theme_support(
'html5',
array(
'search-form',
'comment-form',
'comment-list',
'gallery',
'caption',
)
);
add_theme_support( 'custom-logo' );
add_theme_support( 'post-thumbnails' );
add_theme_support( 'align-wide' );
add_theme_support( 'wp-block-styles' );
add_theme_support( 'responsive-embeds' );
add_theme_support( 'editor-styles' );
add_editor_style( 'css/editor-style.css' );
}
add_action( 'after_setup_theme', 'tailpress_setup' );
/**
* Enqueue theme assets.
*/
function tailpress_enqueue_scripts() {
$theme = wp_get_theme();
wp_enqueue_style( 'tailpress', tailpress_asset( 'css/app.css' ), array(), $theme->get( 'Version' ) );
wp_enqueue_script( 'tailpress', tailpress_asset( 'js/app.js' ), array(), $theme->get( 'Version' ) );
}
add_action( 'wp_enqueue_scripts', 'tailpress_enqueue_scripts' );
/**
* Get asset path.
*
* @param string $path Path to asset.
*
* @return string
*/
function tailpress_asset( $path ) {
if ( wp_get_environment_type() === 'production' ) {
return get_stylesheet_directory_uri() . '/' . $path;
}
return add_query_arg( 'time', time(), get_stylesheet_directory_uri() . '/' . $path );
}
/**
* Adds option 'li_class' to 'wp_nav_menu'.
*
* @param string $classes String of classes.
* @param mixed $item The current item.
* @param WP_Term $args Holds the nav menu arguments.
*
* @return array
*/
function tailpress_nav_menu_add_li_class( $classes, $item, $args, $depth ) {
if ( isset( $args->li_class ) ) {
$classes[] = $args->li_class;
}
if ( isset( $args->{"li_class_$depth"} ) ) {
$classes[] = $args->{"li_class_$depth"};
}
return $classes;
}
add_filter( 'nav_menu_css_class', 'tailpress_nav_menu_add_li_class', 10, 4 );
/**
* Adds option 'submenu_class' to 'wp_nav_menu'.
*
* @param string $classes String of classes.
* @param mixed $item The current item.
* @param WP_Term $args Holds the nav menu arguments.
*
* @return array
*/
function tailpress_nav_menu_add_submenu_class( $classes, $args, $depth ) {
if ( isset( $args->submenu_class ) ) {
$classes[] = $args->submenu_class;
}
if ( isset( $args->{"submenu_class_$depth"} ) ) {
$classes[] = $args->{"submenu_class_$depth"};
}
return $classes;
}
add_filter( 'nav_menu_submenu_css_class', 'tailpress_nav_menu_add_submenu_class', 10, 3 );
function get_current_room() {
return pll_current_language() === 'gym' ? 'gym' : 'fitness';
}
$modal_file = get_template_directory() . '/template-parts/la-components/functions/modals.php';
$block_file = get_template_directory() . '/template-parts/la-components/functions/blocks.php';
$forms_file = get_template_directory() . '/template-parts/la-components/functions/forms.php';
$breadcrumbs_file = get_template_directory() . '/template-parts/la-components/functions/breadcrumbs.php';
if (file_exists($breadcrumbs_file)) {
require_once $breadcrumbs_file;
}
if (file_exists($block_file)) {
require_once $block_file;
}
if (file_exists($modal_file)) {
require_once $modal_file;
}
if (file_exists($forms_file)) {
require_once $forms_file;
}
function enqueue_swiper_assets() {
wp_enqueue_style(
'swiper-css',
'https://cdnjs.cloudflare.com/ajax/libs/Swiper/8.4.7/swiper-bundle.min.css',
array(),
'8.4.7'
);
wp_enqueue_script(
'swiper-js',
'https://cdnjs.cloudflare.com/ajax/libs/Swiper/8.4.7/swiper-bundle.min.js',
array(),
'8.4.7',
true
);
}
add_action('wp_enqueue_scripts', 'enqueue_swiper_assets');
add_action('admin_enqueue_scripts', 'enqueue_swiper_assets');
add_action('enqueue_block_editor_assets', 'enqueue_swiper_assets');
function display_icon($field_name)
{
$icon = get_field($field_name, 'option');
$icon_id = isset($icon['icon_url']) ? $icon['icon_url'] : 0;
if ($icon_id) {
echo wp_get_attachment_image($icon_id, 'full');
}
}
function wider_language_cols() {
echo '';
}
add_action('admin_head', 'wider_language_cols');
function get_simple_menu_items($menu_name = 'Шапка сайта') {
$menu = wp_get_nav_menu_object($menu_name);
if (!$menu) {
return array();
}
$menu_items = wp_get_nav_menu_items($menu->term_id);
$current_lang = function_exists('pll_current_language') ? pll_current_language() : null;
if (!$menu_items) {
return array();
}
$clean_title = function($title) {
return trim(preg_replace('/\s*\([^)]*\)/', '', $title));
};
$simple_items = array();
foreach ($menu_items as $item) {
$url = $item->url;
$title = $clean_title($item->title);
if ($current_lang && $item->object == 'page' && function_exists('pll_get_post')) {
$translated_page_id = pll_get_post($item->object_id, $current_lang);
if ($translated_page_id) {
$url = get_permalink($translated_page_id);
$translated_title = get_the_title($translated_page_id);
if ($translated_title) {
$title = $clean_title($translated_title);
}
}
}
$simple_items[] = array(
'title' => $title,
'url' => $url,
'id' => $item->ID
);
}
return $simple_items;
}
function add_dark_class_to_editor() {
$screen = get_current_screen();
if (!$screen || !in_array($screen->base, ['post', 'page'])) {
return;
}
$current_lang = '';
if (isset($_GET['post'])) {
$current_lang = pll_get_post_language($_GET['post']);
} elseif (isset($_GET['lang'])) {
$current_lang = $_GET['lang'];
} else {
$current_lang = pll_current_language();
}
if ($current_lang === 'gym') {
?>