/home/vianto5/ceibaresidencial.mx/wp-content/themes/moore_old/elementor/widgets
Edit: /home/vianto5/ceibaresidencial.mx/wp-content/themes/moore_old/elementor/widgets/room-list.php (18841B)
start_controls_section(
'section_content',
[
'label' => esc_html__( 'Room List', 'moore' ),
]
);
$type_args = array(
'taxonomy' => 'cat_room',
'orderby' => 'name',
'order' => 'ASC'
);
$type_room = get_categories( $type_args );
$type_room_all = array( 'all' => 'All');
$type_room_data = array();
if ( $type_room ) {
foreach ( $type_room as $type ) {
$type_room_data[$type->slug] = $type->cat_name;
}
} else {
$type_room_data["No content Category found"] = 0;
}
$this->add_control(
'type_room',
[
'label' => esc_html__( 'Type Room', 'moore' ),
'type' => Controls_Manager::SELECT,
'default' => 'all',
'options' => array_merge( $type_room_all, $type_room_data )
]
);
$features_args = array(
'taxonomy' => 'features_room',
'orderby' => 'name',
'order' => 'ASC'
);
$features_room = get_categories( $features_args );
$features_room_all = array( 'all' => 'All');
$features_room_data = array();
if ( $features_room ) {
foreach ( $features_room as $features ) {
$features_room_data[$features->slug] = $features->cat_name;
}
} else {
$features_room_data[''] = esc_html__('Features Room Not Found', 'moore');
}
$this->add_control(
'features_room',
[
'label' => esc_html__( 'Features Room', 'moore' ),
'type' => Controls_Manager::SELECT,
'default' => 'all',
'options' => array_merge( $features_room_all, $features_room_data )
]
);
$this->add_control(
'posts_per_page',
[
'label' => esc_html__( 'Posts Per Page', 'moore' ),
'type' => Controls_Manager::NUMBER,
'default' => 5,
]
);
$this->add_control(
'text_button',
[
'label' => esc_html__( 'Text Button', 'moore' ),
'type' => Controls_Manager::TEXT,
'default' => esc_html__( 'Load More', 'moore' ),
]
);
$this->end_controls_section();
// *******section date style *****//
$this->start_controls_section(
'section_date_style',
[
'label' => esc_html__( 'Date', 'moore' ),
'tab' => Controls_Manager::TAB_STYLE,
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'name' => 'date_typography',
'selector' => '{{WRAPPER}} .ova-room-list .room .date .room-date',
]
);
$this->add_control(
'color_date',
[
'label' => esc_html__( 'Color', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .date .room-date' => 'color : {{VALUE}};',
],
]
);
$this->add_control(
'color_date_hover',
[
'label' => esc_html__( 'Color Hover', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .date:hover .room-date' => 'color : {{VALUE}};',
],
]
);
$this->add_responsive_control(
'padding_date',
[
'label' => esc_html__( 'Padding', 'moore' ),
'type' => Controls_Manager::DIMENSIONS,
'size_units' => [ 'px', 'em', '%' ],
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .date .room-date' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
],
]
);
$this->end_controls_section();
// *******end content date style *****//
// *******section square *****//
$this->start_controls_section(
'section_square_style',
[
'label' => esc_html__( 'Square', 'moore' ),
'tab' => Controls_Manager::TAB_STYLE,
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'name' => 'square_typography',
'selector' => '{{WRAPPER}} .ova-room-list .room .plan .square',
]
);
$this->add_control(
'color_square',
[
'label' => esc_html__( 'Color', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .plan .square' => 'color : {{VALUE}};',
],
]
);
$this->add_control(
'color_square_hover',
[
'label' => esc_html__( 'Color Hover', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .plan:hover .square' => 'color : {{VALUE}};',
],
]
);
$this->add_responsive_control(
'padding_square',
[
'label' => esc_html__( 'Padding', 'moore' ),
'type' => Controls_Manager::DIMENSIONS,
'size_units' => [ 'px', 'em', '%' ],
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .plan .square' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
],
]
);
$this->end_controls_section();
// *******end square style *****//
// *******section bedrooms and floor *****//
$this->start_controls_section(
'section_bed_floor_style',
[
'label' => esc_html__( 'Bedrooms & Floor', 'moore' ),
'tab' => Controls_Manager::TAB_STYLE,
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'label' => esc_html__( 'Bedrooms Typography', 'moore' ),
'name' => 'bed_typography',
'selector' => '{{WRAPPER}} .ova-room-list .room .bed-floor .bedrooms',
'separator' => 'before'
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'label' => esc_html__( 'Floor Typography', 'moore' ),
'name' => 'floor_typography',
'selector' => '{{WRAPPER}} .ova-room-list .room .bed-floor .floor',
]
);
$this->add_control(
'color_bed_floor',
[
'label' => esc_html__( 'Color', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .bed-floor .bedrooms' => 'color : {{VALUE}};',
'{{WRAPPER}} .ova-room-list .room .bed-floor .floor' => 'color : {{VALUE}};',
],
]
);
$this->add_control(
'color_bed_floor_hover',
[
'label' => esc_html__( 'Color Hover', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .bed-floor:hover .floor' => 'color : {{VALUE}};',
'{{WRAPPER}} .ova-room-list .room .bed-floor:hover .bedrooms' => 'color : {{VALUE}};',
],
]
);
$this->add_responsive_control(
'padding_bed_floor',
[
'label' => esc_html__( 'Padding', 'moore' ),
'type' => Controls_Manager::DIMENSIONS,
'size_units' => [ 'px', 'em', '%' ],
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .bed-floor' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
],
]
);
$this->end_controls_section();
// *******section price *****//
$this->start_controls_section(
'section_price_style',
[
'label' => esc_html__( 'Price', 'moore' ),
'tab' => Controls_Manager::TAB_STYLE,
]
);
$this->add_group_control(
Group_Control_Typography::get_type(),
[
'name' => 'price_typography',
'selector' => '{{WRAPPER}} .ova-room-list .room .price .total_price',
]
);
$this->add_control(
'color_price',
[
'label' => esc_html__( 'Color', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .price .total_price' => 'color : {{VALUE}};',
],
]
);
$this->add_control(
'color_price_hover',
[
'label' => esc_html__( 'Color Hover', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .price:hover .total_price' => 'color : {{VALUE}};',
],
]
);
$this->add_responsive_control(
'padding_price',
[
'label' => esc_html__( 'Padding', 'moore' ),
'type' => Controls_Manager::DIMENSIONS,
'size_units' => [ 'px', 'em', '%' ],
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .price .total_price' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
],
]
);
$this->end_controls_section();
// *******end price style *****//
$this->start_controls_section(
'section_icon_style',
[
'label' => esc_html__( 'Icons', 'moore' ),
'tab' => Controls_Manager::TAB_STYLE,
]
);
$this->add_responsive_control(
'size_icon',
[
'label' => esc_html__( 'Size', 'moore' ),
'type' => Controls_Manager::SLIDER,
'range' => [
'px' => [
'min' => 10,
'max' => 50,
],
],
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .icon_group .icons i' => 'font-size: {{SIZE}}{{UNIT}};',
],
'separator' => 'before',
]
);
$this->add_control(
'color_icon',
[
'label' => esc_html__( 'Icon Color', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .icon_group .icons i' => 'color : {{VALUE}};',
],
]
);
$this->add_control(
'bgcolor_icon',
[
'label' => esc_html__( 'Background Color', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .icon_group .icons' => 'background-color : {{VALUE}};',
],
]
);
$this->add_control(
'color_icon_hover',
[
'label' => esc_html__( 'Icon Color Hover', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .icon_group .icons:hover i' => 'color : {{VALUE}};',
],
]
);
$this->add_control(
'bgcolor_icon_hover',
[
'label' => esc_html__( 'Background Color Hover', 'moore' ),
'type' => Controls_Manager::COLOR,
'selectors' => [
'{{WRAPPER}} .ova-room-list .room .icon_group .icons:hover' => 'background-color : {{VALUE}};',
],
]
);
$this->end_controls_section();
// *******end square style *****//
}
// Render Template Here
protected function render() {
$settings = $this->get_settings();
$text_button = $settings['text_button'] ;
$posts_per_page = $settings['posts_per_page'];
$args = array(
'post_type' => 'ova_room',
'posts_per_page' => $posts_per_page,
'orderby' => 'name',
'order' => 'ASC'
);
if ( ( 'all' != $settings['type_room'] ) && ( 'all' === $settings['features_room'] ) ) {
$args['tax_query'] = array(
'relation' => 'OR',
array(
'taxonomy' => 'cat_room',
'field' => 'slug',
'terms' => array( $settings['type_room'] ),
),
array(
'taxonomy' => 'features_room',
'field' => 'slug',
'terms' => array( $settings['features_room'] ),
),
);
} elseif ( ( 'all' != $settings['features_room'] ) && ( 'all' === $settings['type_room'] ) ) {
$args['tax_query'] = array(
'relation' => 'OR',
array(
'taxonomy' => 'cat_room',
'field' => 'slug',
'terms' => array( $settings['type_room'] ),
),
array(
'taxonomy' => 'features_room',
'field' => 'slug',
'terms' => array( $settings['features_room'] ),
),
);
} elseif ( ( 'all' != $settings['features_room'] ) && ( 'all' != $settings['type_room'] ) ) {
$args['tax_query'] = array(
'relation' => 'AND',
array(
'taxonomy' => 'cat_room',
'field' => 'slug',
'terms' => array( $settings['type_room'] ),
),
array(
'taxonomy' => 'features_room',
'field' => 'slug',
'terms' => array( $settings['features_room'] ),
),
);
};
$rooms = new \WP_Query( $args );
?>
have_posts() ) : ?>
have_posts() ) : $rooms->the_post();
$room_id = get_the_ID();
$mooredate = get_post_meta( $room_id, 'ova_mooredate', true );
$room_date = date('d/m', strtotime( $mooredate ));
$square = get_post_meta( $room_id, 'ova_moorearea', true ).' ';
$bedrooms = get_post_meta( $room_id, 'ova_moorebedrooms', true );
$floor = get_post_meta( $room_id, 'ova_moorefloor', true );
// *****************
$total_price = get_post_meta( $room_id, 'ova_mooretotal', true );
// *****************
$icon_group = get_post_meta( $room_id, 'wiki_test_repeat_group', true );
// ******************
$url_image = get_the_post_thumbnail_url( $room_id );
// for popup
$url_image_popup = get_post_meta( $room_id, 'ova_mooreimage_popup', true );
$url_send_request = get_post_meta( $room_id, 'ova_mooreurl_send_request', true );
$url_file_layout = get_post_meta( $room_id, 'ova_moorefile_layout', true );
$path = str_replace( site_url('/'), ABSPATH, esc_url( $url_file_layout) );
$size_file_layout = file_exists( $path ) ? size_format( filesize( $path ), 1 ) : '';
?>
2
register( new Moore_Elementor_Room_List() );