admin_form_before(); $output .= $this->admin_form_start(); $output .= $this->default_fields(); $widget_saved_values = $this->get_settings(); $output .= Text::get([ 'name' => 'title', 'label' => __('Title'), 'value' => $widget_saved_values['title'] ?? null, 'info' => __('set title for button') ]); $output .= Text::get([ 'name' => 'link', 'label' => __('Link'), 'value' => $widget_saved_values['link'] ?? null, 'info' => __('enter link'), ]); // add padding option $output .= $this->admin_form_submit_button(); $output .= $this->admin_form_end(); $output .= $this->admin_form_after(); return $output; } /** * @inheritDoc */ public function frontend_render() { $settings = $this->get_settings(); $order_by = SanitizeInput::esc_html($settings['order_by']); $order = SanitizeInput::esc_html($settings['order']); $items = SanitizeInput::esc_html($settings['items']); $slider_items = SanitizeInput::esc_html($settings['slider_items']); $padding_top = SanitizeInput::esc_html($settings['padding_top']); $padding_bottom = SanitizeInput::esc_html($settings['padding_bottom']); $background_color = SanitizeInput::esc_html($settings['background_color']); $background_color = !empty($background_color) ? 'style="background-color:'.$background_color.';"' : ''; $brand_logos = Brand::query()->orderBy($order_by,$order)->get(); if(!empty($items)){ $brand_logos = $brand_logos->take($items); } $category_markup = ''; foreach ($brand_logos as $logo){ $image = render_image_markup_by_attachment_id($logo->image); $link_open = ''; $link_close = ''; if (!empty($logo->url)){ $link_open .= ''; $link_close .= ''; } $category_markup .= <<
{$link_open} {$image} {$link_close}
HTML; } return <<
HTML; } /** * @inheritDoc */ public function addon_title() { return __('Image With Link: 01'); } }