• File: PortfolioWidget.php
  • Full Path: /home/matthif/www/wp-content/plugins/uber-grid/src/PortfolioWidget.php
  • Date Modified: 03/16/2023 5:23 PM
  • File size: 2.79 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php


namespace PfhubPortfolio;


use 
WP_Widget;

class 
PortfolioWidget extends WP_Widget
{
    public function 
__construct() {
        
parent::__construct(
            
'PfhubPortfolio',
            
'PortfolioHub',
            array( 
'description' => __'Portfolio''pfhub_portfolio' ), )
        );
    }

    public function 
widget$args$instance ) {
        if ( isset( 
$instance['grid_id'] ) ) {
            
$grid_id $instance['grid_id'];

            
$title apply_filters'widget_title'$instance['title'] );

            echo 
$args['before_widget'];
            if ( ! empty( 
$title ) ) {
                echo 
$args['before_title'] . $title .$args['after_title'];
            }

            echo 
do_shortcode"[pfhub_portfolio id={$grid_id}]" );
            echo 
$args['after_widget'];
        }
    }

    
/**
     * Update options
     * @param array $new_instance
     * @param array $old_instance
     *
     * @return array
     */
    
public function update$new_instance$old_instance ) {
        
$instance                 = array();
        
$instance['grid_id'] = strip_tags$new_instance['grid_id'] );
        
$instance['title']        = strip_tags$new_instance['title'] );

        return 
$instance;
    }

    
/**
     * Print out the widget's form HTML
     *
     * @param array $instance
     *
     * @return string|void
     */
    
public function form$instance ) {
        
$selected_portfolio 0;
        
$title              "";
        if ( isset( 
$instance['title'] ) ) {
            
$title $instance['title'];
        }
        if (isset(
$instance['grid_id'])) {
            
$selected_portfolio $instance['grid_id'];
        }

        
?>
        <p>
        <p>
            <label for="<?php echo $this->get_field_id'title' ); ?>"><?php _e'Label:' ); ?></label>
            <input class="widefat" id="<?php echo $this->get_field_id'title' ); ?>"
                   name="<?php echo $this->get_field_name'title' ); ?>" type="text"
                   value="<?php echo esc_attr$title ); ?>"/>
        </p>
        <label
            for="<?php echo $this->get_field_id'grid_id' ); ?>"><?php _e'Select portfolio:''pfhub_portfolio' ); ?></label>
        <select id="<?php echo $this->get_field_id'grid_id' ); ?>"
                name="<?php echo $this->get_field_name'grid_id' ); ?>">
            <?php
            
global $wpdb;
            
$query     "SELECT * FROM " $wpdb->prefix "pfhub_portfolio_grids ";
            
$rowwidget $wpdb->get_results$query );
            foreach ( 
$rowwidget as $rowwidgetecho ) { ?>
                <option <?php selected$selected_portfolio$rowwidgetecho->idtrue); ?> value="<?php echo $rowwidgetecho->id?>"><?php echo $rowwidgetecho->name?></option>
            <?php ?>
        </select>
        </p>
        <?php
    
}
}