options = get_option( 'add_search_to_menu' ); } /** * PHP 4 Compatible Constructor. */ function ASTM_Public() { $this->__construct(); } /** * Enqueues search menu style and script files. */ function enqueue_script_style(){ $options = $this->options; if ( ! isset( $options['do_not_load_plugin_files']['plugin-css-file'] ) ){ wp_enqueue_style( 'add-search-to-menu-styles', plugins_url( '/public/css/add-search-to-menu.css', ASTM_PLUGIN_FILE ), array(), ASTM_VERSION ); } if ( ! isset( $options['do_not_load_plugin_files']['plugin-js-file'] ) && ( isset( $options['add_search_to_menu_style'] ) && $options['add_search_to_menu_style'] != 'default' ) ) { wp_enqueue_script( 'add-search-to-menu-scripts', plugins_url( '/public/js/add-search-to-menu.js', ASTM_PLUGIN_FILE ), array( 'jquery' ), ASTM_VERSION, true ); } } /** * Displays search form in the navigation bar in the front end of site. */ function search_menu_item( $items, $args ) { $options = $this->options; if ( isset( $options['add_search_to_menu_locations'] ) ) { if ( isset( $options['add_search_to_menu_locations'][ $args->theme_location ] ) ) { if ( isset( $options['add_search_to_menu_gcse'] ) && $options['add_search_to_menu_gcse'] != '' ) { $items .= '
  • ' . $options['add_search_to_menu_gcse'] . '
  • '; } else { $search_class = isset( $options['add_search_to_menu_classes'] ) ? $options['add_search_to_menu_classes'].' astm-search-menu ' : 'astm-search-menu '; $search_class .= isset( $options['add_search_to_menu_style'] ) ? $options['add_search_to_menu_style'] : 'default'; $title = isset( $options['add_search_to_menu_title'] ) ? $options['add_search_to_menu_title'] : ''; $items .= '
  • '; if ( $options['add_search_to_menu_style'] != 'default' ){ $items .= ''; if ( '' == $title ) { $items .= ' '; } else { $items .= $title; } $items .= ''; } $items .= get_search_form( false ); if ( isset( $options['add_search_to_menu_close_icon'] ) && $options['add_search_to_menu_close_icon'] ) { $items .= '
    '; } $items .= '
  • '; } } } return $items; } /** * Displays search form in mobile header in the front end of site. */ function search_in_header() { $options = $this->options; $items = ''; if ( isset( $options['add_search_to_menu_gcse'] ) && $options['add_search_to_menu_gcse'] != '' ) { $items .= '
  • ' . $options['add_search_to_menu_gcse'] . '
  • '; } else { $search_class = isset( $options['add_search_to_menu_classes'] ) ? $options['add_search_to_menu_classes'].' astm-search-menu ' : 'astm-search-menu '; $search_class .= isset( $options['add_search_to_menu_style'] ) ? $options['add_search_to_menu_style'] : 'default'; $title = isset( $options['add_search_to_menu_title'] ) ? $options['add_search_to_menu_title'] : ''; $items .= '
    '; $items .= ''; if ( $options['add_search_to_menu_style'] != 'default' ){ $items .= ''; if ( '' == $title ) { $items .= ' '; } else { $items .= $title; } $items .= ''; } $items .= get_search_form( false ); if ( isset( $options['add_search_to_menu_close_icon'] ) && $options['add_search_to_menu_close_icon'] ) { $items .= '
    '; } $items .= '
    '; } echo $items; } /** * Filters search results. */ function search_filter( $query ) { $options = $this->options; if ( ! is_admin() && $query->is_main_query() && $query->is_search() ) { $query->set( 'post_type', $options['add_search_to_menu_posts'] ); } } /** * Adds custom CSS code in the site front end. */ function custom_css() { $options = $this->options; if ( isset( $options['add_search_to_menu_css'] ) && $options['add_search_to_menu_css'] != '' ) { echo ''; } } } }