Skip to content
Snippets Groups Projects
Select Git revision
  • master default
1 result

functions.php

Blame
  • functions.php 9.61 KiB
    <?php
    //sidebar functionality
    if ( function_exists('register_sidebar') ){
        register_sidebar('name=Sidebar&before_widget=<div class="zenboxsolid cool">&after_widget=</div>&before_title=<h3>&after_title=</h3>');
        register_sidebar('name=Footer&before_widget=&after_widget=&before_title=<h3>&after_title=</h3>');
        register_sidebar('name=Optional Footer&before_widget=<div class="footer_col">&after_widget=</div>&before_title=<h3>&after_title=</h3>');
    }
    
    // Turns the links into the top navigation menu.
    // A link Categories' description becomes it's URL if it's valid.
    function unl_menu_bookmarks(){
    	$output = "";
    	$cats = get_terms('link_category');
    	foreach ( (array) $cats as $cat ) {
    		$bookmarks = get_bookmarks('category='.$cat->term_id);
    		if ( empty($bookmarks) )
    			continue;
    		if(filter_var($cat->description, FILTER_VALIDATE_URL)){
    			$output .= '<li><a href="'. $cat->description. '" title="' . $cat->name . '">' . $cat->name . '</a><ul>';
    		}else{
    			$output .= '<li>' . $cat->name . '<ul>';
    		}
    		foreach($bookmarks as $bookmark){
    			$output .= '<li><a href="' . $bookmark->link_url . '" title="' . $bookmark->link_name . '">' . $bookmark->link_name . '</a></li>';
    		}
    		$output .= '</ul></li>';
    	}
    	return $output;
    }
    
    function unl_footer_widgets($index = 1, $template_regions, $page) {
    	global $wp_registered_sidebars, $wp_registered_widgets;
    
    	if ( is_int($index) ) {
    		$index = "sidebar-$index";
    	} else {
    		$index = sanitize_title($index);
    		foreach ( (array) $wp_registered_sidebars as $key => $value ) {
    			if ( sanitize_title($value['name']) == $index ) {
    				$index = $key;
    				break;
    			}
    		}
    	}
    
    	$sidebars_widgets = wp_get_sidebars_widgets();
    
    	if ( empty($wp_registered_sidebars[$index]) || !array_key_exists($index, $sidebars_widgets) || !is_array($sidebars_widgets[$index]) || empty($sidebars_widgets[$index]) )
    		return false;
    
    	$sidebar = $wp_registered_sidebars[$index];
    
    	$did_one = false;
    	$x = 0;
    	foreach ( (array) $sidebars_widgets[$index] as $id ) {
    		if ( !isset($wp_registered_widgets[$id]) ) continue;
    
    		$params = array_merge(
    			array( array_merge( $sidebar, array('widget_id' => $id, 'widget_name' => $wp_registered_widgets[$id]['name']) ) ),
    			(array) $wp_registered_widgets[$id]['params']
    		);
    
    		// Substitute HTML id and class attributes into before_widget
    		$classname_ = '';
    		foreach ( (array) $wp_registered_widgets[$id]['classname'] as $cn ) {
    			if ( is_string($cn) )
    				$classname_ .= '_' . $cn;
    			elseif ( is_object($cn) )
    				$classname_ .= '_' . get_class($cn);
    		}