function hocwp_remove_empty_array_item($arr, $remove_zero = false) { if (is_array($arr)) { foreach ($arr as $key => $item) { if (is_array($item)) { $arr[$key] = hocwp_remove_empty_array_item($item); } elseif (hocwp_string_empty($item) || $remove_zero && 0 === $item) { unset($arr[$key]); } } } return $arr; }
function hocwp_setup_theme_nav_menu_item_title($title, $menu_item, $args, $depth) { if (is_a($menu_item, 'WP_Post') && $menu_item->post_type == 'nav_menu_item') { if ('page' == $menu_item->object) { $post_id = $menu_item->object_id; $page = get_post($post_id); $diff_title = get_post_meta($post_id, 'different_title', true); if (!hocwp_string_empty($diff_title) && $page->post_title != $diff_title && $title == $diff_title) { $title = do_shortcode($page->post_title); $title = apply_filters('translate_text', $title, $lang = null, $flags = 0); } } } return $title; }
function hocwp_field_input_right_label($type, $args = array()) { $options = isset($args['options']) ? $args['options'] : array(); $value = isset($args['value']) ? $args['value'] : ''; $label = isset($args['label']) ? $args['label'] : ''; $id = hocwp_get_value_by_key($args, 'id'); $name = hocwp_get_value_by_key($args, 'name'); hocwp_transmit_id_and_name($id, $name); if (!hocwp_array_has_value($options)) { $option_item = array('label' => $label, 'value' => $value, 'default' => hocwp_get_value_by_key($args, 'default'), 'id' => $id, 'name' => $name); $options[] = $option_item; } $count = 0; foreach ($options as $option) { $value = isset($option['value']) ? $option['value'] : $value; $option['type'] = $type; $option['before'] = isset($args['before']) ? $args['before'] : '<p>'; $option['after'] = isset($args['after']) ? $args['after'] : '</p>'; $option['name'] = isset($option['name']) ? $option['name'] : $name; $option['value'] = $value; if (hocwp_string_empty($value) && 0 == $count && 'radio' == $type) { $option['attributes']['checked'] = 'checked'; } hocwp_field_input($option); $count++; } }