Last active
August 29, 2015 14:05
-
-
Save hitsujixgit/ac4b223c482ddb9922d5 to your computer and use it in GitHub Desktop.
According to widget title, replace its string to image in WordPress.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// Widgetタイトルを画像に置き換える(タイトル検知版) | |
if( !function_exists('change_widget_title_to_image') ) { | |
function change_widget_title_to_image($params) { | |
// widget-idを、widget名と数字に分ける | |
if(preg_match('/^(?<name>.+)\-(?<key>\d+)$/', $params[0]['widget_id'], $m)) { | |
$option_name = 'widget_' . $m['name']; | |
$widgets = get_option($option_name, array()); | |
$index = intval($m['key']); | |
if (array_key_exists($index, $widgets)) { | |
if(array_key_exists('title', $widgets[$index])) { | |
// widgetのラベル名を入手した | |
$widget_title = $widgets[$index]['title']; | |
switch ($widget_title) { | |
case 'Categories': | |
$params[0]['before_title'] = $params[0]['before_title'].'<img src="'.get_bloginfo('template_url').'/img/widget_categories_2x.png" width="106" height="20" alt="Categories" /><span style="display:none;">'; | |
$params[0]['after_title'] = '</span>'.$params[0]['after_title']; | |
break; | |
case 'Recent Posts': | |
$params[0]['before_title'] = $params[0]['before_title'].'<img src="'.get_bloginfo('template_url').'/img/widget_recent_posts_2x.png" width="127" height="20" alt="Recent Posts" /><span style="display:none;">'; | |
$params[0]['after_title'] = '</span>'.$params[0]['after_title']; | |
break; | |
case 'Search Posts': | |
$params[0]['before_title'] = $params[0]['before_title'].'<img src="'.get_bloginfo('template_url').'/img/widget_search_posts_2x.png" width="127" height="20" alt="Search Posts" /><span style="display:none;">'; | |
$params[0]['after_title'] = '</span>'.$params[0]['after_title']; | |
break; | |
case 'Author': | |
$params[0]['before_title'] = $params[0]['before_title'].'<img src="'.get_bloginfo('template_url').'/img/widget_author_2x.png" width="78" height="20" alt="Author" /><span style="display:none;">'; | |
$params[0]['after_title'] = '</span>'.$params[0]['after_title']; | |
break; | |
case 'Archive': | |
$params[0]['before_title'] = $params[0]['before_title'].'<img src="'.get_bloginfo('template_url').'/img/widget_archive_2x.png" width="78" height="20" alt="Archive" /><span style="display:none;">'; | |
$params[0]['after_title'] = '</span>'.$params[0]['after_title']; | |
break; | |
case 'Main Menu': | |
$params[0]['before_title'] = $params[0]['before_title'].'<img src="'.get_bloginfo('template_url').'/img/widget_mainmenu_2x.png" width="116" height="20" alt="Main Menu" /><span style="display:none;">'; | |
$params[0]['after_title'] = '</span>'.$params[0]['after_title']; | |
break; | |
default: | |
break; | |
} | |
} | |
} | |
} | |
return $params; | |
} | |
} | |
add_filter('dynamic_sidebar_params', 'change_widget_title_to_image'); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment