Wordpress Visual Composer边栏

时间:2016-09-01 18:17:56

标签: jquery css wordpress plugins

我有一些问题。我们必须在另一个机构的页面上工作。他们写了一些东西来展示补充工具栏。该网站使用Visual Composer。

我必须将菜单项类添加到

  • 标签(例如menu-item-112等)。

    以下是代码:

    <?php
    function sidenavi_func( $atts, $content = null ) {
      global $post;
    
      $walker = array();
      $complete = false;
    
      $the_post = $post;
    
      while(!$complete) {
        array_push($walker, $the_post->ID);
    
        if($the_post->post_parent == 0) {
          $complete = true;
        }
        else {
          $the_post = get_post($the_post->post_parent);
        }
      }
    
      $content = recursive_side_navi($walker, $walker[count($walker) - 1], false, true);
    
      return $content;
    }
    function recursive_side_navi($walker, $pid, $expand_all = false, $start = false) {
      $wp_query = new WP_Query();
      $pages = $wp_query->query(array('post_type' => 'page',
                                       'post_parent' => $pid,
                                       'orderby' => 'menu_order',
                                       'posts_per_page' => -1,
                                       'order' => 'ASC'));
    
      $content = '';
      if(count($pages)) {
        if($start) {
          $content = '<ul class="sidenav">';
          $the_post = get_post($walker[count($walker) - 1]);
          $pid = 
          $content.= '<li class="active"><a href="'.get_permalink($the_post->ID).'">'.$the_post->post_title.'</a></li><br />';
        }
        else {
          $content = '<ul>';
        }
    
        foreach($pages as $page) {
          $active = false;
          foreach($walker as $item) {
            if($item == $page->ID) $active = true;
          }
          $content.= '<li'.($active ? ' class="active"' : '').'><a href="'.get_permalink($page->ID).'">'.$page->post_title.'</a>';
          if($expand_all || $active) {
            $content.= recursive_side_navi($walker, $page->ID);
          }
          $content.= '</li>';
        }
        $content.= '</ul>';
      }
    
      return $content;
    }
    add_shortcode( 'sm_sidenavi', 'sidenavi_func' );
    
    vc_map( array(
       "name" => __("Sidebar Navigation"),
       "base" => "sm_sidenavi",
       "class" => "sidenavi",
       "category" => __('Content'),
       'admin_enqueue_js' => '',
       'admin_enqueue_css' => array(get_template_directory_uri().'/vc_extend/style.css'),
       'show_settings_on_create' => false,
       'custom_markup ' => '<div style="float: left; color: #d2e3ff; border: 1px solid #669fff; padding: 14px;"><p style="color: #669fff; padding: 30px 0; text-align: center;">Sidebar Navigation</p></div>'
       )
    );
    ?>
    
  • 0 个答案:

    没有答案