id ) && ( $screen->id === 'nav-menus' ) ) {
$isNav = true;
}
return $isNav;
}
/**
* Add custom nav meta box.
*
* Adapted from http://www.johnmorrisonline.com/how-to-add-a-fully-functional-custom-meta-box-to-wordpress-navigation-menus/.
*
* @return void
*/
public function addNavMenuMetaBoxes() {
add_meta_box( 'dgwt_wcas_endpoints_nav_link', __( 'FiboSearch bar', 'ajax-search-for-woocommerce' ), array( $this, 'navMenuLinks' ), 'nav-menus', 'side',
'low' );
}
/**
* Add custom fields to own menu item
*/
public function addNavMenuItemCustomFields( $item_id, $item ) {
if ( $item->post_title !== self::SEARCH_PLACEHOLDER ) {
return;
}
$layout = get_post_meta( $item_id, '_menu_item_dgwt_wcas_layout', true );
if ( empty( $layout ) ) {
$layout = 'default';
}
$searchIconColor = get_post_meta( $item_id, '_menu_item_dgwt_wcas_search_icon_color', true );
?>
ID, '_menu_item_dgwt_wcas_layout', true );
if ( in_array( $layout, array( 'classic', 'icon', 'icon-flexible', 'icon-flexible-inv' ) ) ) {
$args .= 'layout="' . $layout . '" ';
}
$searchIconColor = get_post_meta( $item->ID, '_menu_item_dgwt_wcas_search_icon_color', true );
if ( in_array( $layout, array( 'icon', 'icon-flexible', 'icon-flexible-inv' ) ) && ! empty( $searchIconColor ) ) {
$args .= 'class="dgwt-wcas-menu-item-' . $item->ID . ' " ';
$style = sprintf( '', $item->ID, esc_attr( $searchIconColor ) );
}
$itemOutput = do_shortcode( sprintf( '[fibosearch %s]', $args ) ) . $style;
}
return $itemOutput;
}
/**
* Output menu links.
*
* @return void
*/
public function navMenuLinks() {
?>
';
$html .= '
';
$html .= '' . __( 'FiboSearch bar will be displayed here.', 'ajax-search-for-woocommerce' ) . '';
$html .= '';
return $html;
}
public function getLayoutOptions() {
return array(
'default' => __( 'Default', 'ajax-search-for-woocommerce' ),
'classic' => __( 'Search bar', 'ajax-search-for-woocommerce' ),
'icon' => __( 'Search icon', 'ajax-search-for-woocommerce' ),
'icon-flexible' => __( 'Icon on mobile, search bar on desktop', 'ajax-search-for-woocommerce' ),
'icon-flexible-inv' => __( 'Icon on desktop, search bar on mobile', 'ajax-search-for-woocommerce' ),
);
}
public function navMenuStyle() {
if ( ! $this->isNavMenuScreen() ) {
return;
}
wp_enqueue_style( 'wp-color-picker' );
wp_enqueue_script( 'wp-color-picker' );
?>
isNavMenuScreen() ) {
return;
}
?>