Fix collection widgets.

This commit is contained in:
Hoang Huu 2019-10-17 10:45:12 +07:00
parent b55d26fcb2
commit e604069ef5
6 changed files with 387 additions and 527 deletions

@ -32,15 +32,15 @@ class Opalestate_Agency_Collection_Elementor_Widget extends Opalestate_Elementor
* *
* Used to set scripts dependencies required to run the widget. * Used to set scripts dependencies required to run the widget.
* *
* @since 1.3.0 * @return array Widget scripts dependencies.
* @since 1.3.0
* @access public * @access public
* *
* @return array Widget scripts dependencies.
*/ */
public function get_script_depends() { public function get_script_depends() {
return [ 'jquery-slick' ]; return [ 'jquery-slick' ];
} }
/** /**
* Get widget title. * Get widget title.
* *
@ -94,287 +94,210 @@ class Opalestate_Agency_Collection_Elementor_Widget extends Opalestate_Elementor
'label' => esc_html__( 'Agencies Search/Collection', 'opalestate-pro' ), 'label' => esc_html__( 'Agencies Search/Collection', 'opalestate-pro' ),
] ]
); );
// $this->add_control(
// 'search_form',
// [
// 'label' => esc_html__('Search Form', 'opalestate-pro'),
// 'type' => \Elementor\Controls_Manager::SELECT,
// 'default' => '',
// 'options' => array(
// '' => esc_html__( 'Advanded', 'opalestate-pro' ),
// 'address' => esc_html__( 'Search By Address', 'opalestate-pro' ),
// )
// ]
// );
$this->add_control( $this->add_control(
'search_form', 'enable_sortable_bar',
[ [
'label' => esc_html__('Search Form', 'opalestate-pro'), 'label' => esc_html__( 'Enable Sortable Bar', 'opalestate-pro' ),
'type' => \Elementor\Controls_Manager::SELECT, 'type' => Controls_Manager::SWITCHER,
'default' => '',
'options' => array(
'' => esc_html__( 'Advanded', 'opalestate-pro' ),
'address' => esc_html__( 'Search By Address', 'opalestate-pro' ),
)
] ]
); );
$this->add_control(
'enable_sortable_bar',
[
'label' => esc_html__('Enable Sortable Bar', 'opalestate-pro'),
'type' => Controls_Manager::SWITCHER,
]
);
$this->add_control( $this->add_control(
'item_layout', 'item_layout',
[ [
'label' => esc_html__('Item Layout', 'opalestate-pro'), 'label' => esc_html__( 'Item Layout', 'opalestate-pro' ),
'type' => \Elementor\Controls_Manager::SELECT, 'type' => \Elementor\Controls_Manager::SELECT,
'default' => 'grid', 'default' => 'grid',
'options' => array( 'options' => [
'grid' => esc_html__( 'Grid', 'opalestate-pro' ), 'grid' => esc_html__( 'Grid', 'opalestate-pro' ),
'list' => esc_html__( 'List', 'opalestate-pro' ), 'list' => esc_html__( 'List', 'opalestate-pro' ),
) ],
]
);
$this->add_responsive_control(
'column',
[
'label' => esc_html__( 'Columns', 'opalestate-pro' ),
'type' => \Elementor\Controls_Manager::SELECT,
'default' => 3,
'options' => [ 1 => 1, 2 => 2, 3 => 3, 4 => 4, 6 => 6 ],
'prefix_class' => 'elementor-grid%s-',
'condition' => [
'item_layout' => 'grid',
],
] ]
); );
$this->add_responsive_control(
'column',
[
'label' => esc_html__('Columns', 'opalestate-pro'),
'type' => \Elementor\Controls_Manager::SELECT,
'default' => 3,
'options' => [1 => 1, 2 => 2, 3 => 3, 4 => 4, 6 => 6],
'prefix_class' => 'elementor-grid%s-',
'condition' => [
'item_layout' => 'grid'
]
]
);
$this->add_control( $this->add_control(
'column_gap', 'column_gap',
[ [
'label' => esc_html__( 'Columns Gap', 'opalestate-pro' ), 'label' => esc_html__( 'Columns Gap', 'opalestate-pro' ),
'type' => Controls_Manager::SLIDER, 'type' => Controls_Manager::SLIDER,
'range' => [ 'range' => [
'px' => [ 'px' => [
'min' => 0, 'min' => 0,
'max' => 100, 'max' => 100,
], ],
], ],
'selectors' => [ 'selectors' => [
'{{WRAPPER}} .elementor-items-container' => 'grid-column-gap: {{SIZE}}{{UNIT}}' '{{WRAPPER}} .elementor-items-container' => 'grid-column-gap: {{SIZE}}{{UNIT}}',
],
'condition' => [
'item_layout' => 'grid'
]
]
);
$this->add_control( ],
'enable_carousel', 'condition' => [
[ 'item_layout' => 'grid',
'label' => esc_html__('Enable', 'opalestate-pro'), ],
'type' => Controls_Manager::SWITCHER, ]
] );
);
$this->add_control(
'enable_carousel',
[
'label' => esc_html__( 'Enable', 'opalestate-pro' ),
'type' => Controls_Manager::SWITCHER,
]
);
$this->end_controls_section(); $this->end_controls_section();
$this->add_slick_controls( array('enable_carousel' => 'yes') , ' .agency-slick-carousel ' ); $this->add_slick_controls( [ 'enable_carousel' => 'yes' ], ' .agency-slick-carousel ' );
$this->start_controls_section( $this->start_controls_section(
'section_query', 'section_query',
[ [
'label' => esc_html__('Query', 'opalestate-pro'), 'label' => esc_html__( 'Query', 'opalestate-pro' ),
'tab' => Controls_Manager::TAB_CONTENT, 'tab' => Controls_Manager::TAB_CONTENT,
] ]
); );
$this->add_control( $this->add_control(
'posts_per_page', 'posts_per_page',
[ [
'label' => esc_html__('Posts Per Page', 'opalestate-pro'), 'label' => esc_html__( 'Posts Per Page', 'opalestate-pro' ),
'type' => Controls_Manager::NUMBER, 'type' => Controls_Manager::NUMBER,
'default' => 6, 'default' => 6,
] ]
); );
$this->add_control(
'advanced',
[
'label' => esc_html__( 'Advanced', 'opalestate-pro' ),
'type' => Controls_Manager::HEADING,
]
);
$this->add_control( $this->add_control(
'advanced', 'orderby',
[ [
'label' => esc_html__('Advanced', 'opalestate-pro'), 'label' => esc_html__( 'Order By', 'opalestate-pro' ),
'type' => Controls_Manager::HEADING, 'type' => Controls_Manager::SELECT,
] 'default' => 'post_date',
); 'options' => [
'post_date' => esc_html__( 'Date', 'opalestate-pro' ),
'post_title' => esc_html__( 'Title', 'opalestate-pro' ),
'menu_order' => esc_html__( 'Menu Order', 'opalestate-pro' ),
'rand' => esc_html__( 'Random', 'opalestate-pro' ),
],
]
);
$this->add_control( $this->add_control(
'orderby', 'order',
[ [
'label' => esc_html__('Order By', 'opalestate-pro'), 'label' => esc_html__( 'Order', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT, 'type' => Controls_Manager::SELECT,
'default' => 'post_date', 'default' => 'desc',
'options' => [ 'options' => [
'post_date' => esc_html__('Date', 'opalestate-pro'), 'asc' => esc_html__( 'ASC', 'opalestate-pro' ),
'post_title' => esc_html__('Title', 'opalestate-pro'), 'desc' => esc_html__( 'DESC', 'opalestate-pro' ),
'menu_order' => esc_html__('Menu Order', 'opalestate-pro'), ],
'rand' => esc_html__('Random', 'opalestate-pro'), ]
], );
]
);
$this->add_control( $this->add_control(
'order', 'categories',
[ [
'label' => esc_html__('Order', 'opalestate-pro'), 'label' => esc_html__( 'Categories', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT, 'type' => Controls_Manager::SELECT2,
'default' => 'desc', 'options' => $this->get_post_categories(),
'options' => [ 'multiple' => true,
'asc' => esc_html__('ASC', 'opalestate-pro'), ]
'desc' => esc_html__('DESC', 'opalestate-pro'), );
],
]
);
$this->add_control( $this->add_control(
'categories', 'cat_operator',
[ [
'label' => esc_html__('Categories', 'opalestate-pro'), 'label' => esc_html__( 'Category Operator', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT2, 'type' => Controls_Manager::SELECT,
'options' => $this->get_post_categories(), 'default' => 'IN',
'multiple' => true, 'options' => [
] 'AND' => esc_html__( 'AND', 'opalestate-pro' ),
); 'IN' => esc_html__( 'IN', 'opalestate-pro' ),
'NOT IN' => esc_html__( 'NOT IN', 'opalestate-pro' ),
],
'condition' => [
'categories!' => '',
],
]
);
$this->add_control( $this->end_controls_section();
'cat_operator',
[
'label' => esc_html__('Category Operator', 'opalestate-pro'),
'type' => Controls_Manager::SELECT,
'default' => 'IN',
'options' => [
'AND' => esc_html__('AND', 'opalestate-pro'),
'IN' => esc_html__('IN', 'opalestate-pro'),
'NOT IN' => esc_html__('NOT IN', 'opalestate-pro'),
],
'condition' => [
'categories!' => ''
],
]
);
$this->end_controls_section(); $this->start_controls_section(
'section_pagination',
[
'label' => esc_html__( 'Pagination', 'opalestate-pro' ),
]
);
$this->start_controls_section( $this->add_control(
'section_pagination', 'pagination',
[ [
'label' => esc_html__('Pagination', 'opalestate-pro'), 'label' => esc_html__( 'Pagination', 'opalestate-pro' ),
'condition' => [ 'type' => Controls_Manager::SELECT,
'enable_carousel!' => 'yes' 'default' => '',
], 'options' => [
] '' => esc_html__( 'None', 'opalestate-pro' ),
); 'show' => esc_html__( 'Show', 'opalestate-pro' ),
],
]
);
$this->add_control( $this->add_control(
'pagination_type', 'pagination_page_limit',
[ [
'label' => esc_html__('Pagination', 'opalestate-pro'), 'label' => esc_html__( 'Page Limit', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT, 'type' => Controls_Manager::NUMBER,
'default' => '', 'default' => '3',
'options' => [ 'condition' => [
'' => esc_html__('None', 'opalestate-pro'), 'pagination' => 'show',
'numbers' => esc_html__('Numbers', 'opalestate-pro'), ],
'prev_next' => esc_html__('Previous/Next', 'opalestate-pro'), ]
'numbers_and_prev_next' => esc_html__('Numbers', 'opalestate-pro') . ' + ' . esc_html__('Previous/Next', 'opalestate-pro'), );
]
]
);
$this->add_control( $this->end_controls_section();
'pagination_page_limit',
[
'label' => esc_html__('Page Limit', 'opalestate-pro'),
'default' => '5',
'condition' => [
'pagination_type!' => ''
],
]
);
$this->add_control(
'pagination_numbers_shorten',
[
'label' => esc_html__('Shorten', 'opalestate-pro'),
'type' => Controls_Manager::SWITCHER,
'default' => '',
'condition' => [
'pagination_type' => [
'numbers',
'numbers_and_prev_next',
],
],
]
);
$this->add_control(
'pagination_prev_label',
[
'label' => esc_html__('Previous Label', 'opalestate-pro'),
'default' => esc_html__('« Previous', 'opalestate-pro'),
'condition' => [
'pagination_type' => [
'prev_next',
'numbers_and_prev_next',
],
],
]
);
$this->add_control(
'pagination_next_label',
[
'label' => esc_html__('Next Label', 'opalestate-pro'),
'default' => esc_html__('Next »', 'opalestate-pro'),
'condition' => [
'pagination_type' => [
'prev_next',
'numbers_and_prev_next',
],
],
]
);
$this->add_control(
'pagination_align',
[
'label' => esc_html__('Alignment', 'opalestate-pro'),
'type' => Controls_Manager::CHOOSE,
'options' => [
'flex-start' => [
'title' => esc_html__('Left', 'opalestate-pro'),
'icon' => 'fa fa-align-left',
],
'center' => [
'title' => esc_html__('Center', 'opalestate-pro'),
'icon' => 'fa fa-align-center',
],
'flex-end' => [
'title' => esc_html__('Right', 'opalestate-pro'),
'icon' => 'fa fa-align-right',
],
],
'default' => 'flex-start',
'selectors' => [
'{{WRAPPER}} .pagination' => 'justify-content: {{VALUE}};',
],
'condition' => [
'pagination_type!' => '',
],
]
);
$this->end_controls_section();
} }
public function get_post_categories() { public function get_post_categories() {
$list = array(); $list = [];
return $list;
return $list;
} }
} }

@ -32,15 +32,15 @@ class Opalestate_Agent_Collection_Elementor_Widget extends Opalestate_Elementor_
* *
* Used to set scripts dependencies required to run the widget. * Used to set scripts dependencies required to run the widget.
* *
* @since 1.3.0 * @return array Widget scripts dependencies.
* @since 1.3.0
* @access public * @access public
* *
* @return array Widget scripts dependencies.
*/ */
public function get_script_depends() { public function get_script_depends() {
return [ 'jquery-slick' ]; return [ 'jquery-slick' ];
} }
/** /**
* Get widget title. * Get widget title.
* *
@ -51,7 +51,7 @@ class Opalestate_Agent_Collection_Elementor_Widget extends Opalestate_Elementor_
* @return string Widget title. * @return string Widget title.
*/ */
public function get_title() { public function get_title() {
return esc_html__( 'Block: Agent Collection', 'opalestate-pro' ); return esc_html__( 'Block: Agents Collection', 'opalestate-pro' );
} }
/** /**
@ -94,287 +94,210 @@ class Opalestate_Agent_Collection_Elementor_Widget extends Opalestate_Elementor_
'label' => esc_html__( 'Agents Search Collection', 'opalestate-pro' ), 'label' => esc_html__( 'Agents Search Collection', 'opalestate-pro' ),
] ]
); );
// $this->add_control(
// 'search_form',
// [
// 'label' => esc_html__('Search Form', 'opalestate-pro'),
// 'type' => \Elementor\Controls_Manager::SELECT,
// 'default' => '',
// 'options' => array(
// '' => esc_html__( 'Advanded', 'opalestate-pro' ),
// 'address' => esc_html__( 'Search By Address', 'opalestate-pro' ),
// )
// ]
// );
$this->add_control( $this->add_control(
'search_form', 'enable_sortable_bar',
[ [
'label' => esc_html__('Search Form', 'opalestate-pro'), 'label' => esc_html__( 'Enable Sortable Bar', 'opalestate-pro' ),
'type' => \Elementor\Controls_Manager::SELECT, 'type' => Controls_Manager::SWITCHER,
'default' => '',
'options' => array(
'' => esc_html__( 'Advanded', 'opalestate-pro' ),
'address' => esc_html__( 'Search By Address', 'opalestate-pro' ),
)
] ]
); );
$this->add_control(
'enable_sortable_bar',
[
'label' => esc_html__('Enable Sortable Bar', 'opalestate-pro'),
'type' => Controls_Manager::SWITCHER,
]
);
$this->add_control( $this->add_control(
'item_layout', 'item_layout',
[ [
'label' => esc_html__('Item Layout', 'opalestate-pro'), 'label' => esc_html__( 'Item Layout', 'opalestate-pro' ),
'type' => \Elementor\Controls_Manager::SELECT, 'type' => \Elementor\Controls_Manager::SELECT,
'default' => 'grid', 'default' => 'grid',
'options' => array( 'options' => [
'grid' => esc_html__( 'Grid', 'opalestate-pro' ), 'grid' => esc_html__( 'Grid', 'opalestate-pro' ),
'list' => esc_html__( 'List', 'opalestate-pro' ), 'list' => esc_html__( 'List', 'opalestate-pro' ),
) ],
]
);
$this->add_responsive_control(
'column',
[
'label' => esc_html__( 'Columns', 'opalestate-pro' ),
'type' => \Elementor\Controls_Manager::SELECT,
'default' => 3,
'options' => [ 1 => 1, 2 => 2, 3 => 3, 4 => 4, 6 => 6 ],
'prefix_class' => 'elementor-grid%s-',
'condition' => [
'item_layout' => 'grid',
],
] ]
); );
$this->add_responsive_control(
'column',
[
'label' => esc_html__('Columns', 'opalestate-pro'),
'type' => \Elementor\Controls_Manager::SELECT,
'default' => 3,
'options' => [1 => 1, 2 => 2, 3 => 3, 4 => 4, 6 => 6],
'prefix_class' => 'elementor-grid%s-',
'condition' => [
'item_layout' => 'grid'
]
]
);
$this->add_control( $this->add_control(
'column_gap', 'column_gap',
[ [
'label' => esc_html__( 'Columns Gap', 'opalestate-pro' ), 'label' => esc_html__( 'Columns Gap', 'opalestate-pro' ),
'type' => Controls_Manager::SLIDER, 'type' => Controls_Manager::SLIDER,
'range' => [ 'range' => [
'px' => [ 'px' => [
'min' => 0, 'min' => 0,
'max' => 100, 'max' => 100,
], ],
], ],
'selectors' => [ 'selectors' => [
'{{WRAPPER}} .elementor-items-container' => 'grid-column-gap: {{SIZE}}{{UNIT}}' '{{WRAPPER}} .elementor-items-container' => 'grid-column-gap: {{SIZE}}{{UNIT}}',
],
'condition' => [
'item_layout' => 'grid'
]
]
);
$this->add_control( ],
'enable_carousel', 'condition' => [
[ 'item_layout' => 'grid',
'label' => esc_html__('Enable', 'opalestate-pro'), ],
'type' => Controls_Manager::SWITCHER, ]
] );
);
$this->add_control(
'enable_carousel',
[
'label' => esc_html__( 'Enable', 'opalestate-pro' ),
'type' => Controls_Manager::SWITCHER,
]
);
$this->end_controls_section(); $this->end_controls_section();
$this->add_slick_controls( array('enable_carousel' => 'yes') , ' .agent-slick-carousel ' ); $this->add_slick_controls( [ 'enable_carousel' => 'yes' ], ' .agent-slick-carousel ' );
$this->start_controls_section( $this->start_controls_section(
'section_query', 'section_query',
[ [
'label' => esc_html__('Query', 'opalestate-pro'), 'label' => esc_html__( 'Query', 'opalestate-pro' ),
'tab' => Controls_Manager::TAB_CONTENT, 'tab' => Controls_Manager::TAB_CONTENT,
] ]
); );
$this->add_control( $this->add_control(
'posts_per_page', 'posts_per_page',
[ [
'label' => esc_html__('Posts Per Page', 'opalestate-pro'), 'label' => esc_html__( 'Posts Per Page', 'opalestate-pro' ),
'type' => Controls_Manager::NUMBER, 'type' => Controls_Manager::NUMBER,
'default' => 6, 'default' => 6,
] ]
); );
$this->add_control(
'advanced',
[
'label' => esc_html__( 'Advanced', 'opalestate-pro' ),
'type' => Controls_Manager::HEADING,
]
);
$this->add_control( $this->add_control(
'advanced', 'orderby',
[ [
'label' => esc_html__('Advanced', 'opalestate-pro'), 'label' => esc_html__( 'Order By', 'opalestate-pro' ),
'type' => Controls_Manager::HEADING, 'type' => Controls_Manager::SELECT,
] 'default' => 'post_date',
); 'options' => [
'post_date' => esc_html__( 'Date', 'opalestate-pro' ),
'post_title' => esc_html__( 'Title', 'opalestate-pro' ),
'menu_order' => esc_html__( 'Menu Order', 'opalestate-pro' ),
'rand' => esc_html__( 'Random', 'opalestate-pro' ),
],
]
);
$this->add_control( $this->add_control(
'orderby', 'order',
[ [
'label' => esc_html__('Order By', 'opalestate-pro'), 'label' => esc_html__( 'Order', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT, 'type' => Controls_Manager::SELECT,
'default' => 'post_date', 'default' => 'desc',
'options' => [ 'options' => [
'post_date' => esc_html__('Date', 'opalestate-pro'), 'asc' => esc_html__( 'ASC', 'opalestate-pro' ),
'post_title' => esc_html__('Title', 'opalestate-pro'), 'desc' => esc_html__( 'DESC', 'opalestate-pro' ),
'menu_order' => esc_html__('Menu Order', 'opalestate-pro'), ],
'rand' => esc_html__('Random', 'opalestate-pro'), ]
], );
]
);
$this->add_control( $this->add_control(
'order', 'categories',
[ [
'label' => esc_html__('Order', 'opalestate-pro'), 'label' => esc_html__( 'Categories', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT, 'type' => Controls_Manager::SELECT2,
'default' => 'desc', 'options' => $this->get_post_categories(),
'options' => [ 'multiple' => true,
'asc' => esc_html__('ASC', 'opalestate-pro'), ]
'desc' => esc_html__('DESC', 'opalestate-pro'), );
],
]
);
$this->add_control( $this->add_control(
'categories', 'cat_operator',
[ [
'label' => esc_html__('Categories', 'opalestate-pro'), 'label' => esc_html__( 'Category Operator', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT2, 'type' => Controls_Manager::SELECT,
'options' => $this->get_post_categories(), 'default' => 'IN',
'multiple' => true, 'options' => [
] 'AND' => esc_html__( 'AND', 'opalestate-pro' ),
); 'IN' => esc_html__( 'IN', 'opalestate-pro' ),
'NOT IN' => esc_html__( 'NOT IN', 'opalestate-pro' ),
],
'condition' => [
'categories!' => '',
],
]
);
$this->add_control( $this->end_controls_section();
'cat_operator',
[
'label' => esc_html__('Category Operator', 'opalestate-pro'),
'type' => Controls_Manager::SELECT,
'default' => 'IN',
'options' => [
'AND' => esc_html__('AND', 'opalestate-pro'),
'IN' => esc_html__('IN', 'opalestate-pro'),
'NOT IN' => esc_html__('NOT IN', 'opalestate-pro'),
],
'condition' => [
'categories!' => ''
],
]
);
$this->end_controls_section(); $this->start_controls_section(
'section_pagination',
[
'label' => esc_html__( 'Pagination', 'opalestate-pro' ),
]
);
$this->start_controls_section( $this->add_control(
'section_pagination', 'pagination',
[ [
'label' => esc_html__('Pagination', 'opalestate-pro'), 'label' => esc_html__( 'Pagination', 'opalestate-pro' ),
'condition' => [ 'type' => Controls_Manager::SELECT,
'enable_carousel!' => 'yes' 'default' => '',
], 'options' => [
] '' => esc_html__( 'None', 'opalestate-pro' ),
); 'show' => esc_html__( 'Show', 'opalestate-pro' ),
],
]
);
$this->add_control( $this->add_control(
'pagination_type', 'pagination_page_limit',
[ [
'label' => esc_html__('Pagination', 'opalestate-pro'), 'label' => esc_html__( 'Page Limit', 'opalestate-pro' ),
'type' => Controls_Manager::SELECT, 'type' => Controls_Manager::NUMBER,
'default' => '', 'default' => '3',
'options' => [ 'condition' => [
'' => esc_html__('None', 'opalestate-pro'), 'pagination' => 'show',
'numbers' => esc_html__('Numbers', 'opalestate-pro'), ],
'prev_next' => esc_html__('Previous/Next', 'opalestate-pro'), ]
'numbers_and_prev_next' => esc_html__('Numbers', 'opalestate-pro') . ' + ' . esc_html__('Previous/Next', 'opalestate-pro'), );
]
]
);
$this->add_control( $this->end_controls_section();
'pagination_page_limit',
[
'label' => esc_html__('Page Limit', 'opalestate-pro'),
'default' => '5',
'condition' => [
'pagination_type!' => ''
],
]
);
$this->add_control(
'pagination_numbers_shorten',
[
'label' => esc_html__('Shorten', 'opalestate-pro'),
'type' => Controls_Manager::SWITCHER,
'default' => '',
'condition' => [
'pagination_type' => [
'numbers',
'numbers_and_prev_next',
],
],
]
);
$this->add_control(
'pagination_prev_label',
[
'label' => esc_html__('Previous Label', 'opalestate-pro'),
'default' => esc_html__('« Previous', 'opalestate-pro'),
'condition' => [
'pagination_type' => [
'prev_next',
'numbers_and_prev_next',
],
],
]
);
$this->add_control(
'pagination_next_label',
[
'label' => esc_html__('Next Label', 'opalestate-pro'),
'default' => esc_html__('Next »', 'opalestate-pro'),
'condition' => [
'pagination_type' => [
'prev_next',
'numbers_and_prev_next',
],
],
]
);
$this->add_control(
'pagination_align',
[
'label' => esc_html__('Alignment', 'opalestate-pro'),
'type' => Controls_Manager::CHOOSE,
'options' => [
'flex-start' => [
'title' => esc_html__('Left', 'opalestate-pro'),
'icon' => 'fa fa-align-left',
],
'center' => [
'title' => esc_html__('Center', 'opalestate-pro'),
'icon' => 'fa fa-align-center',
],
'flex-end' => [
'title' => esc_html__('Right', 'opalestate-pro'),
'icon' => 'fa fa-align-right',
],
],
'default' => 'flex-start',
'selectors' => [
'{{WRAPPER}} .pagination' => 'justify-content: {{VALUE}};',
],
'condition' => [
'pagination_type!' => '',
],
]
);
$this->end_controls_section();
} }
public function get_post_categories() { public function get_post_categories() {
$list = array(); $list = [];
return $list;
return $list;
} }
} }

@ -3,7 +3,7 @@
* Plugin Name: Opal Estate Pro * Plugin Name: Opal Estate Pro
* Plugin URI: http://www.wpopal.com/product/opal-estate-wordpress-plugin/ * Plugin URI: http://www.wpopal.com/product/opal-estate-wordpress-plugin/
* Description: Opal Real Estate Plugin is an ideal solution and brilliant choice for you to set up a professional estate website. * Description: Opal Real Estate Plugin is an ideal solution and brilliant choice for you to set up a professional estate website.
* Version: 1.1.3 * Version: 1.1.4
* Author: WPOPAL * Author: WPOPAL
* Author URI: http://www.wpopal.com * Author URI: http://www.wpopal.com
* Requires at least: 4.6 * Requires at least: 4.6
@ -151,7 +151,7 @@ if ( ! class_exists( 'OpalEstate' ) ) {
*/ */
public function __clone() { public function __clone() {
// Cloning instances of the class is forbidden // Cloning instances of the class is forbidden
_doing_it_wrong( __FUNCTION__, esc_html__( 'Cheatin’ huh?', 'opalestate-pro' ), '1.1.3' ); _doing_it_wrong( __FUNCTION__, esc_html__( 'Cheatin’ huh?', 'opalestate-pro' ), '1.1.4' );
} }
/** /**
@ -160,7 +160,7 @@ if ( ! class_exists( 'OpalEstate' ) ) {
public function setup_constants() { public function setup_constants() {
// Plugin version // Plugin version
if ( ! defined( 'OPALESTATE_VERSION' ) ) { if ( ! defined( 'OPALESTATE_VERSION' ) ) {
define( 'OPALESTATE_VERSION', '1.1.3' ); define( 'OPALESTATE_VERSION', '1.1.4' );
} }
// Plugin Folder Path // Plugin Folder Path

@ -153,6 +153,9 @@ This section describes how to install the plugin and get it working.
* System tickets support 24/7 available : [free support](https://wpopal.ticksy.com/ "Visit the Plugin support Page") * System tickets support 24/7 available : [free support](https://wpopal.ticksy.com/ "Visit the Plugin support Page")
== Changelog == == Changelog ==
= 1.1.4 - 2019-10-17 =
* Fixes - Properties collection Pagination.
= 1.1.3 - 2019-10-15 = = 1.1.3 - 2019-10-15 =
* Fixes - Submission. * Fixes - Submission.

@ -1,5 +1,6 @@
<?php <?php
$settings = $this->get_settings_for_display(); $settings = $this->get_settings_for_display();
extract( $settings );
$layout = $settings['item_layout']; $layout = $settings['item_layout'];
$attrs = $this->get_render_attribute_string( 'wrapper-style' ); $attrs = $this->get_render_attribute_string( 'wrapper-style' );
if ( isset( $_GET['display'] ) && $_GET['display'] == 'grid' ) { if ( isset( $_GET['display'] ) && $_GET['display'] == 'grid' ) {
@ -9,13 +10,20 @@ if ( isset( $_GET['display'] ) && $_GET['display'] == 'grid' ) {
$layout = 'list'; $layout = 'list';
$attrs = 'class="column-list"'; $attrs = 'class="column-list"';
} }
$onlyfeatured = 0;
if ( isset( $_GET['s_agents'] ) ) { if ( is_front_page() ) {
$query = Opalestate_Agency_Query::get_agencies( [ "posts_per_page" => $limit, 'paged' => $paged ], $onlyfeatured ); $paged = ( get_query_var( 'page' ) ) ? get_query_var( 'page' ) : 1;
} else { } else {
$query = Opalestate_Agency_Query::get_search_agencies_query(); $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
} }
$onlyfeatured = 0;
// if ( isset( $_GET['s_agents'] ) ) {
$query = Opalestate_Agency_Query::get_agencies( [ 'posts_per_page' => $posts_per_page, 'paged' => $paged ], $onlyfeatured );
// } else {
// $query = Opalestate_Agency_Query::get_search_agencies_query();
// }
$rowcls = apply_filters( 'opalestate_row_container_class', 'opal-row' ); $rowcls = apply_filters( 'opalestate_row_container_class', 'opal-row' );
?> ?>
@ -48,10 +56,8 @@ $rowcls = apply_filters( 'opalestate_row_container_class', 'opal-row' );
<?php endwhile; ?> <?php endwhile; ?>
</div> </div>
</div> </div>
<?php if ( $query->max_num_pages ): ?> <?php if ( isset( $pagination ) && $pagination && ( ! isset( $enable_carousel ) || ! $enable_carousel ) ): ?>
<div class="w-pagination"> <div class="w-pagination"><?php opalestate_pagination( $pagination_page_limit ); ?></div>
<?php opalestate_pagination( $query->max_num_pages ); ?>
</div>
<?php endif; ?> <?php endif; ?>
<?php else: ?> <?php else: ?>
<div class="agency-results"> <div class="agency-results">

@ -1,5 +1,6 @@
<?php <?php
$settings = $this->get_settings_for_display(); $settings = $this->get_settings_for_display();
extract( $settings );
$layout = $settings['item_layout']; $layout = $settings['item_layout'];
$attrs = $this->get_render_attribute_string( 'wrapper-style' ); $attrs = $this->get_render_attribute_string( 'wrapper-style' );
if ( isset( $_GET['display'] ) && $_GET['display'] == 'grid' ) { if ( isset( $_GET['display'] ) && $_GET['display'] == 'grid' ) {
@ -10,13 +11,19 @@ if ( isset( $_GET['display'] ) && $_GET['display'] == 'grid' ) {
$attrs = 'class="column-list"'; $attrs = 'class="column-list"';
} }
if ( is_front_page() ) {
$paged = ( get_query_var( 'page' ) ) ? get_query_var( 'page' ) : 1;
} else {
$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
}
$onlyfeatured = 0; $onlyfeatured = 0;
if ( isset( $_GET['s_agents'] ) ) { // if ( isset( $_GET['s_agents'] ) ) {
$query = Opalestate_Query::get_agents( [ "posts_per_page" => $limit, 'paged' => $paged ], $onlyfeatured ); $query = Opalestate_Query::get_agents( [ "posts_per_page" => $posts_per_page, 'paged' => $paged ], $onlyfeatured );
} else { // } else {
$query = OpalEstate_Search::get_search_agents_query(); // $query = OpalEstate_Search::get_search_agents_query();
} // }
$form = $settings['search_form'] ? "search-agents-form-" . $settings['search_form'] : "search-agents-form"; $form = $settings['search_form'] ? "search-agents-form-" . $settings['search_form'] : "search-agents-form";
$rowcls = apply_filters( 'opalestate_row_container_class', 'opal-row' ); $rowcls = apply_filters( 'opalestate_row_container_class', 'opal-row' );
@ -51,10 +58,8 @@ $rowcls = apply_filters( 'opalestate_row_container_class', 'opal-row' );
<?php endwhile; ?> <?php endwhile; ?>
</div> </div>
</div> </div>
<?php if ( $query->max_num_pages ): ?> <?php if ( isset( $pagination ) && $pagination && ( ! isset( $enable_carousel ) || ! $enable_carousel ) ): ?>
<div class="w-pagination"> <div class="w-pagination"><?php opalestate_pagination( $pagination_page_limit ); ?></div>
<?php opalestate_pagination( $query->max_num_pages ); ?>
</div>
<?php endif; ?> <?php endif; ?>
<?php else: ?> <?php else: ?>
<div class="agents-results"> <div class="agents-results">