即时得到两行我尝试使用isset,但没有机会修复这个通知。注意:未定义的变量:firsthalf在WordPress插件
即时得到的变量声明$firsthalf
和$secondhalf
Notice: Undefined variable: firsthalf
和
Notice: Undefined variable: firsthalf
所以,代码如下:
for ($i=0;$i<$catCount;$i++) {
if ($i<$catColumns){
$firsthalf = $firsthalf.''.$catArray[$i].'</li>';
}
elseif ($i>=$catColumns){
$secondhalf = $secondhalf.''.$catArray[$i].'</li>';
}
}
哪一个是定为这我有时间并尝试了所有的方法,但仍然得到同样的问题。你有没有有没有关于这个的想法? Thanklyou!下面
编辑是所有WordPress的功能
function wpse97413_register_custom_widgets() {
register_widget('wpse97411_WP_Widget_Categories');
register_widget('wpse97411_WP_Search_Widget');
}
add_action('widgets_init', 'wpse97413_register_custom_widgets');
/* Widget Video Categories framework */
class wpse97411_WP_Widget_Categories extends WP_Widget {
public function __construct() {
$widget_ops = array('classname' => 'widget_categories', 'description' => __("A list of categories."));
parent::__construct('categories', __('Categories'), $widget_ops);
}
public function widget($args, $instance) {
/** This filter is documented in wp-includes/default-widgets.php */
$title = apply_filters('widget_title', empty($instance['title']) ? __('Categories') : $instance['title'], $instance, $this->id_base);
$c = ! empty($instance['count']) ? '1' : '0';
$h = ! empty($instance['hierarchical']) ? '1' : '0';
$d = ! empty($instance['dropdown']) ? '1' : '0';
echo $args['before_widget'];
if ($title) {
echo $args['before_title'] . $title . $args['after_title'];
}
$catArray = explode("</li>",wp_list_categories('title_li=&echo=0&depth=1&show_count=0'));
$catCount = count($catArray) - 1;
$catColumns = round($catCount/2);
for ($i=0;$i<$catCount;$i++) {
if ($i<$catColumns){
$firsthalf = $firsthalf.''.$catArray[$i].'</li>';
}
elseif ($i>=$catColumns){
$secondhalf = $secondhalf.''.$catArray[$i].'</li>';
}
} ?>
<nav class="nav-categories">
<ul>
<?php echo $firsthalf; ?>
</ul>
<div class="hidden-content" id="hidden-categories">
<ul>
<?php echo $secondhalf; ?>
</ul>
</div>
<button class="category-toggle" data-action="content-toggle" data-target="#hidden-categories" data-more="<?php _e('Show More Categories', 'framework'); ?>" data-less="<?php _e('Show Less Categories', 'framework'); ?>"><?php _e('Show More Categories', 'framework'); ?></button>
</nav>
<?php echo $args['after_widget'];
}
public function update($new_instance, $old_instance) {
$instance = $old_instance;
$instance['title'] = strip_tags($new_instance['title']);
$instance['count'] = !empty($new_instance['count']) ? 1 : 0;
return $instance;
}
public function form($instance) {
//Defaults
$instance = wp_parse_args((array) $instance, array('title' => ''));
$title = esc_attr($instance['title']);
$count = isset($instance['count']) ? (bool) $instance['count'] :false;
?>
<p><label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title:'); ?></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 $title; ?>" /></p><br />
<?php
}
}
被称为什么线的错误?这些变量在其他地方使用吗我觉得你错过了一些东西 – NoLiver92
没有被称为上面的任何代码 – Gazi
下面呢?你有一个if-else语句。当这两个条件都不符合时会发生什么? - 然后变量没有被定义。 。你也应该使用=追加到字符串,而不是打电话给你的定义 – NoLiver92