Fix PHP 8.4 compatibility issues in Sensational theme
- Fixed deprecated WP_Widget constructors in all widget files - Changed $this->WP_Widget() to parent::__construct() in: * widget-social.php * widget-fblikebox.php * widget-googleplus.php * widget-tabs.php - Fixed old-style constructor methods to __construct() in: * widget-ad125.php (mts_Ad_Widget -> __construct) * widget-ad300.php (mts_ad_300_Widget -> __construct) - Fixed for loop syntax error in widget-tweets.php (for(i; -> for($i = 1;) - Enabled registration for ad125 and ad300 widgets - Added new 'After First Paragraph' widget area for in-content ads All widgets now compatible with PHP 8.4 and editable in WordPress admin. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
class NHP_Options_posts_multi_select extends NHP_Options{
|
||||
|
||||
/**
|
||||
* Field Constructor.
|
||||
*
|
||||
* Required - must call the parent constructor, then assign field and value to vars, and obviously call the render field function
|
||||
*
|
||||
* @since NHP_Options 1.0.1
|
||||
*/
|
||||
function __construct($field = array(), $value ='', $parent){
|
||||
|
||||
parent::__construct($parent->sections, $parent->args, $parent->extra_tabs);
|
||||
$this->field = $field;
|
||||
$this->value = $value;
|
||||
//$this->render();
|
||||
|
||||
}//function
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Field Render Function.
|
||||
*
|
||||
* Takes the vars and outputs the HTML for the field in the settings
|
||||
*
|
||||
* @since NHP_Options 1.0.1
|
||||
*/
|
||||
function render(){
|
||||
|
||||
$class = (isset($this->field['class']))?'class="'.$this->field['class'].'" ':'';
|
||||
|
||||
echo '<select id="'.$this->field['id'].'" name="'.$this->args['opt_name'].'['.$this->field['id'].'][]" '.$class.'multiple="multiple" >';
|
||||
|
||||
$args = wp_parse_args($this->field['args'], array('numberposts' => '-1'));
|
||||
|
||||
$posts = get_posts($args);
|
||||
foreach ( $posts as $post ) {
|
||||
$selected = (is_array($this->value) && in_array($post->ID, $this->value))?' selected="selected"':'';
|
||||
echo '<option value="'.$post->ID.'"'.$selected.'>'.$post->post_title.'</option>';
|
||||
}
|
||||
|
||||
echo '</select>';
|
||||
|
||||
echo (isset($this->field['desc']) && !empty($this->field['desc']))?'<br/><span class="description">'.$this->field['desc'].'</span>':'';
|
||||
|
||||
}//function
|
||||
|
||||
}//class
|
||||
?>
|
||||
Reference in New Issue
Block a user