Restaurante O Descanso

Cras magna leo, tempor sit amet imperdiet eu, ornare at mauris. Integer id nulla ac orci lobortis mollis a non ante. Praesent bibendum, tortor a sodales convallis, ipsum elit dictum massa, vel dictum lectus velit ut sem. Vivamus sollicitudin lorem sed augue pharetra, ut elementum leo pretium. Mauris sed dui id nulla interdum vestibulum. Vivamus interdum fermentum ante vitae aliquet. Phasellus egestas porttitor dolor, sit amet tristique mauris ultrices ut. Suspendisse tempus cursus lacus.

CONTACTAR
Cras magna leo, tempor sit amet imperdiet eu, ornare at mauris. Integer id nulla ac orci lobortis mollis a non ante. Praesent bibendum, tortor a sodales convallis, ipsum elit dictum massa, vel dictum lectus velit ut sem. Vivamus sollicitudin lorem sed augue pharetra, ut elementum leo pretium. Mauris sed dui id nulla interdum vestibulum. Vivamus…
Cras magna leo, tempor sit amet imperdiet eu, ornare at mauris. Integer id nulla ac orci lobortis mollis a non ante. Praesent bibendum, tortor a sodales convallis, ipsum elit dictum massa, vel dictum lectus velit ut sem. Vivamus sollicitudin lorem sed augue pharetra, ut elementum leo pretium. Mauris sed dui id nulla interdum vestibulum. Vivamus…
Cras magna leo, tempor sit amet imperdiet eu, ornare at mauris. Integer id nulla ac orci lobortis mollis a non ante. Praesent bibendum, tortor a sodales convallis, ipsum elit dictum massa, vel dictum lectus velit ut sem. Vivamus sollicitudin lorem sed augue pharetra, ut elementum leo pretium. Mauris sed dui id nulla interdum vestibulum. Vivamus…

Restaurante O Descanso

Cras magna leo, tempor sit amet imperdiet eu, ornare at mauris. Integer id nulla ac orci lobortis mollis a non ante. Praesent bibendum, tortor a sodales convallis, ipsum elit dictum massa, vel dictum lectus velit ut sem. Vivamus sollicitudin lorem sed augue pharetra, ut elementum leo pretium. Mauris sed dui id nulla interdum vestibulum. Vivamus interdum fermentum ante vitae aliquet. Phasellus egestas porttitor dolor, sit amet tristique mauris ultrices ut. Suspendisse tempus cursus lacus.

Dónde está?Qué está incluido?Contacta...
Restaurante O Descanso (Sarria)
Quieres saber más?

Contáctamos y te diremos todo lo que necesitas saber!

Te llamamos
Otros servicios próximos en Sarria

Cafetería Central

Restaurante O Chanto

Pizzería Salento

Hotel Novoa

Servicios

Mapa

<?php
// Función para obtener todos los metaboxes y sus valores
function obtener_todos_los_metaboxes($post_id) {
    $custom_fields = get_post_meta($post_id);
    return $custom_fields;
}

// Función para obtener datos del meta key
function obtener_datos_servicios($post_id, $meta_key) {
    // Obtener los valores del meta key
    $meta_values = get_post_meta($post_id, $meta_key, true);
    return $meta_values;
}

// Función para mostrar los servicios con iconos y encabezados
function mostrar_servicios($post_id, $service_mappings, $label_mappings) {
    $output = '';

    // Obtener la taxonomía del tipo de establecimiento
    $terms = wp_get_post_terms($post_id, 'tipos', array('fields' => 'slugs'));

    if (is_wp_error($terms) || empty($terms)) {
        return '<div>No se ha encontrado el tipo de establecimiento.</div>';
    }

    // Listar los términos obtenidos
//    $output .= '<div>Tipos encontrados: ' . implode(', ', $terms) . '</div>';

    $tipo_establecimiento = $terms[0]; // Suponiendo que solo hay un tipo de establecimiento por post

    // Filtrar los campos según el tipo de establecimiento
    $filtered_mappings = isset($service_mappings[$tipo_establecimiento]) ? $service_mappings[$tipo_establecimiento] : [];

    foreach ($filtered_mappings as $meta_key => $icon_mappings) {
        $servicios = obtener_datos_servicios($post_id, $meta_key);

        if (!empty($servicios) && is_array($servicios)) {
            // Decodificar los valores serializados si es necesario
            if (is_string($servicios)) {
                $servicios = maybe_unserialize($servicios);
            }

            $output .= '<div class="servicio-grupo">';
            $output .= '<h3 class="servicio-encabezado">' . esc_html($label_mappings[$meta_key]) . '</h3>';
            $output .= '<div class="servicio-items">';

            foreach ($servicios as $item) {
                if (is_array($item)) {
                    foreach ($item as $name) {
                        $icon_class = get_icon_class_for_label($name, $icon_mappings);
                        if (!empty($icon_class)) {
                            $output .= '<div class="servicio-item">';
                            $output .= '<i class="' . esc_attr($icon_class) . '"></i> ' . esc_html($name);
                            $output .= '</div>';
                        }
                    }
                } else {
                    $icon_class = get_icon_class_for_label($item, $icon_mappings);
                    if (!empty($icon_class)) {
                        $output .= '<div class="servicio-item">';
                        $output .= '<i class="' . esc_attr($icon_class) . '"></i> ' . esc_html($item);
                        $output .= '</div>';
                    }
                }
            }

            $output .= '</div>'; // Cierra el contenedor de items
            $output .= '</div>'; // Cierra el contenedor de grupo
        } else {
            $output .= '<div class="servicio-grupo">';
            $output .= '<h3 class="servicio-encabezado">' . esc_html($label_mappings[$meta_key]) . '</h3>';
            $output .= '<div>No hay ' . esc_html($meta_key) . ' disponibles.</div>';
            $output .= '</div>';
        }
    }

    return $output;
}

// Función para obtener la clase de icono para una etiqueta
function get_icon_class_for_label($label, $icon_mappings) {
    foreach ($icon_mappings as $mapping) {
        if ($mapping['label'] === $label) {
            return $mapping['icon_class'];
        }
    }
    return ''; // Devuelve una cadena vacía si no se encuentra el icono
}

// Definición de iconos mapeados según el tipo de establecimiento
$service_mappings = [
    'restaurante' => [
        'tipos-cocina-restaurante' => [
            ['label' => 'Tradicional', 'icon_class' => 'fas fa-utensils'],
            ['label' => 'China', 'icon_class' => 'fas fa-utensils'],
            ['label' => 'Europea', 'icon_class' => 'fas fa-utensils'],
            // Agrega más mapeos de iconos aquí
        ],
        'cocina-dietas' => [
            ['label' => 'Vegetarianas', 'icon_class' => 'fas fa-seedling'],
            ['label' => 'Veganas', 'icon_class' => 'fas fa-seedling'],
            ['label' => 'Sin gluten', 'icon_class' => 'fas fa-bread-slice'],
            // Agrega más mapeos de iconos aquí
        ],
        'ventajas-restaurante' => [
            ['label' => 'Reservas', 'icon_class' => 'fas fa-book'],
            ['label' => 'Aparcamiento disponible', 'icon_class' => 'fas fa-car'],
            ['label' => 'Acceso discapacitados', 'icon_class' => 'fas fa-wheelchair'],
            ['label' => 'Wifi gratis', 'icon_class' => 'fas fa-wifi'],
            ['label' => 'Acepta tarjetas de crédito', 'icon_class' => 'fas fa-credit-card'],
            // Agrega más mapeos de iconos aquí
        ],
    ],
    'visita-guiada' => [
        'idiomas-de-la-visita-guiada' => [
            ['label' => 'Español', 'icon_class' => 'fas fa-language'],
            ['label' => 'Inglés', 'icon_class' => 'fas fa-language'],
            ['label' => 'Francés', 'icon_class' => 'fas fa-language'],
            // Agrega más mapeos de iconos aquí
        ],
        'incluido-en-la-visita-guiada' => [
            ['label' => 'Transporte en autobús o minibús', 'icon_class' => 'fas fa-bus'],
            ['label' => 'Traslado de equipaje', 'icon_class' => 'fas fa-luggage-cart'],
            ['label' => 'Vehículo de apoyo', 'icon_class' => 'fas fa-truck'],
            ['label' => 'Seguro de viaje', 'icon_class' => 'fas fa-shield-alt'],
            ['label' => 'Tickets Museo', 'icon_class' => 'fas fa-ticket-alt'],
            // Agrega más mapeos de iconos aquí
        ],
        'no-incluido-en-la-visita-guiada' => [
            ['label' => 'Almuerzo', 'icon_class' => 'fas fa-utensils'],
            // Agrega más mapeos de iconos aquí
        ],
        'accesibilidad-de-la-visita-guiada' => [
            ['label' => 'No es accesible en silla de ruedas', 'icon_class' => 'fas fa-wheelchair'],
            // Agrega más mapeos de iconos aquí
        ],
    ],
    'hotel' => [
        'incluido-hotel' => [
            ['label' => 'Desayuno gratis', 'icon_class' => 'fas fa-coffee'],
            // Agrega más mapeos de iconos aquí
        ],
        'equipamiento' => [
            ['label' => 'Aparcamiento disponible', 'icon_class' => 'fas fa-car'],
            ['label' => 'Piscina', 'icon_class' => 'fas fa-swimmer'],
            ['label' => 'Bañera', 'icon_class' => 'fas fa-bath'],
            ['label' => 'Wifi gratis', 'icon_class' => 'fas fa-wifi'],
            ['label' => 'Gimnasio', 'icon_class' => 'fas fa-dumbbell'],
            // Agrega más mapeos de iconos aquí
        ],
        'categoria' => [
            ['label' => '1 Estrella', 'icon_class' => 'fas fa-star'],
            ['label' => '2 Estrellas', 'icon_class' => 'fas fa-star'],
            ['label' => '3 Estrellas', 'icon_class' => 'fas fa-star'],
            ['label' => '4 Estrellas', 'icon_class' => 'fas fa-star'],
            ['label' => '5 Estrellas', 'icon_class' => 'fas fa-star'],
            // Agrega más mapeos de iconos aquí
        ],
        'opciones' => [
            ['label' => 'Reservas', 'icon_class' => 'fas fa-book'],
            ['label' => 'Acepta tarjetas de crédito', 'icon_class' => 'fas fa-credit-card'],
            // Agrega más mapeos de iconos aquí
        ],
    ],
];

// Definición de los labels de cada metakey
$label_mappings = [
    'tipos-cocina-restaurante' => 'Tipos de Cocina',
    'cocina-dietas' => 'Dietas Especiales',
    'ventajas-restaurante' => 'Ventajas del Restaurante',
    'idiomas-de-la-visita-guiada' => 'Idiomas de la Visita Guiada',
    'incluido-en-la-visita-guiada' => 'Incluido en la Visita Guiada',
    'no-incluido-en-la-visita-guiada' => 'No Incluido en la Visita Guiada',
    'accesibilidad-de-la-visita-guiada' => 'Accesibilidad de la Visita Guiada',
    'incluido-hotel' => 'Servicios Incluidos en el Hotel',
    'equipamiento' => 'Equipamiento del Hotel',
    'categoria' => 'Categoría del Hotel',
    'opciones' => 'Opciones del Hotel',
];

// Obtener el ID del post actual
$post_id = get_the_ID(); // Asegúrate de que este código se ejecute en el contexto de un post

// Mostrar los servicios
echo mostrar_servicios($post_id, $service_mappings, $label_mappings);
?>

<style>
.servicio-grupo {
    margin-bottom: 20px;
    padding: 10px;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
}

.servicio-encabezado {
    font-size: 1.2em;
    margin-bottom: 10px;
    font-weight: bold;
    color: #333;
    text-align: center;
}

.servicio-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.servicio-item {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    width: calc(50% - 10px); /* Dos columnas con un pequeño espacio entre ellas */
}

.servicio-item i {
    margin-right: 8px;
    font-size: 20px;
}

/* Estilos para móvil */
@media (max-width: 600px) {
    .servicio-item {
        width: 100%; /* Una columna en dispositivos móviles */
        flex-direction: column;
        align-items: flex-start;
    }

    .servicio-item i {
        margin-bottom: 5px;
    }
}
</style>





Servicios

Here goes your text ... Select any part of your text to access the formatting toolbar.

Mapa

Here goes your text ... Select any part of your text to access the formatting toolbar.

Restaurante O Descanso

Lorem ipsum dolor sit amet consectetur. Risus aliquam id mauris quis. Laoreet odio facilisi justo risus tincidunt venenatis. In placerat tortor risus enim id venenatis ut lacus quis. Nulla suspendisse iaculis risus vel aenean pharetra dolor iaculis.
I am a button

Restaurante O Descanso

I am a button

Featured title or feature

Lorem ipsum dolor sit amet consectetur. Risus aliquam id mauris quis. Laoreet odio facilisi justo risus tincidunt venenatis. In placerat tortor risus enim id venenatis ut lacus quis. Nulla suspendisse iaculis risus vel aenean pharetra dolor iaculis.
I am a button

Featured title or feature

I am a button

Encuentra lo que buscas

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis.

Find The Class You Want

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis.

Beginner Yoga Class

Learn More

Yoga Group Class

Learn More

Spiritual Medication

Learn More

Lo último de nuestro blog

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis.

Lo último de nuestro blog (copia portada)

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis.

1

Otros servicios próximos en

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec odio. Quisque volutpat mattis eros. Nullam malesuada erat ut turpis.

Pizzería Salento (Sarria) Vista exterior

Pizzería Salento

kristaps-ungurs-rpg4cp2n9j8

Cafetería Central

Vista del Hotel Novoa (Sarria)

Hotel Novoa

Restaurante O Chanto (Sarria). Vista exterior

Restaurante O Chanto

Tipos de Cocina

Tradicional
China

Dietas Especiales

Veganas
Vegetarianas

Ventajas del Restaurante

No hay ventajas-restaurante disponibles.

Restaurante O Descanso

Restaurante O Descanso

Restaurante O Descanso

Más información...

{je_servicios_telefono1}

{je_servicios_email}

Calvo Sotelo, 223 Bajo C (Esq. Alías Valiña), Sarria, Lugo