Changed default featured image. Dropdown img coded.
authorLaury GvR <laury@gaslightmedia.com>
Wed, 24 Jan 2018 15:32:38 +0000 (10:32 -0500)
committerLaury GvR <laury@gaslightmedia.com>
Wed, 24 Jan 2018 15:32:38 +0000 (10:32 -0500)
- Using a different default featured image. This is now also used
for the default dropdown featured image.
- Given time constraints we decided to implement the dropdown image
as it currently is; use the image, title and excerpt from the top-
level item, instead of changing it to the data from the respective
sub-item on hover.

assets/default-featured.jpg
assets/default-featured_BAK.jpg [new file with mode: 0644]
parts/top-bar.php

index d7e89f6..35d068f 100644 (file)
Binary files a/assets/default-featured.jpg and b/assets/default-featured.jpg differ
diff --git a/assets/default-featured_BAK.jpg b/assets/default-featured_BAK.jpg
new file mode 100644 (file)
index 0000000..d7e89f6
Binary files /dev/null and b/assets/default-featured_BAK.jpg differ
index 67952a8..0e272d6 100644 (file)
 $theme_locations = get_nav_menu_locations();
 $menu_obj = get_term( $theme_locations['top-bar'], 'nav_menu' );
 $menu_name = $menu_obj->slug;
-
 $topbar = wp_get_nav_menu_items($menu_name);
-//nice_print($topbar);
+
 foreach($topbar as $tb=>$data){
-    //if($data->menu_item_parent === '0'){
+    if($data->menu_item_parent === '0'){
         $post_ids['menu-item-'.$data->ID] = get_post_meta( $data->ID, '_menu_item_object_id', true );
-    //}
+    }
 }
-
 foreach($post_ids as $p=>$value){
     $post_data[$p] = get_post($value);
 }
 foreach($post_data as $pd=>$value){
-    echo "START STUFF" . print_r($value) . "END STUFF";
     if(has_post_thumbnail($value->ID) ){
-        $dropdown_image = wp_get_attachment_image_src( get_post_thumbnail_id( $value->ID ), "dropdown-image" );
+        $dropdown_image = wp_get_attachment_image_src( get_post_thumbnail_id( $value->ID ), 'dropdown-image' );
         $dropdown[$value->ID]['image'] = $dropdown_image[0];
     } else {
-        $dropdown_image = false;
+        $dropdown[$value->ID]['image'] = esc_url( get_template_directory_uri() ) . "/assets/default-featured.jpg";
     }
-
     if (has_excerpt($value->ID) ){
         $dropdown[$value->ID]['excerpt'] = get_the_excerpt($value->ID);
     } else {
         $dropdown[$value->ID]['excerpt'] = " ";
     }
-    $dropdown[$value->ID]['title'] = get_the_title($value->ID);
-    
+    $dropdown[$value->ID]['title'] = $value->post_title;
     $dropdown[$value->ID]['menu'] = $pd;
-    
 }
+
 $dropdown = json_encode($dropdown);
 ?>
 <script>
     jQuery(document).ready(function(){
         var page = $('body');
-        var image = '';
         var topbar = page.find('.top-bar-section > ul');
         var dropdown = <?php echo $dropdown ?>;
         
-        //console.log(dropdown);
-        
         $.each(dropdown, function(i, value){
+            console.log(i);
+            console.log(value.menu);
             var menu      = value.menu;
             var excerpt   = value.excerpt;
             var title     = value.title;
+            var image     = value.image;
+            page.find('#'+value.menu).children('ul.dropdown').append('<div class="dropdown-content"> <div class="dropdown-image"></div><div class="dropdown-title">'+ value.title +'</div><div class="dropdown-excerpt">'+ value.excerpt + '</div></div>');
+            page.find('#'+value.menu +' .dropdown-image').css("background","url("+ image +") no-repeat center center / cover");
+            page.find('#'+value.menu).children('ul').css('cssText', 'min-height: 400px !important');
             
-            if (value.image){
-                image = value.image;
-                page.find('#'+value.menu).children('ul.dropdown').append('<div class="dropdown-content"> <div class="dropdown-image"></div><div class="dropdown-title">'+ value.title +'</div><div class="dropdown-excerpt">'+ value.excerpt + '</div></div>');
-                page.find('#'+value.menu +' .dropdown-image').css("background","url("+ image +") no-repeat center center");
-                page.find('#'+value.menu).children('ul').css('cssText', 'min-height: 400px !important');
-            } else {
-                page.find('#'+value.menu).children('ul.dropdown').append('<div class="dropdown-content"> <div class="dropdown-image"></div><div class="dropdown-title">'+ value.title +'</div><div class="dropdown-excerpt">'+ value.excerpt + '</div></div>');
-                page.find('#'+value.menu +' .dropdown-image').css("background","url("+ image +") no-repeat center center");
-                page.find('#'+value.menu).children('ul').css('cssText', "padding-right: 0px");
-            }
         });
-        
-        
-        $(".dropdown .menu-item").hover(function() {
-//            console.log(this.id);
-            var the_element_id = this.id
-            //console.log(the_element_id);
-            var the_menu_id = the_element_id.split("menu-item-")[1]; // 14->28, 58->47
-            // Find which index has a 'menu' value corresponding to that item's id, as listed in the dropdown var
-            var index = dropdown.findIndex(v => v.menu == the_menu_id);// dropdown is not an array or this'd work.. maybe something with indexOf
-            console.log(index);
-            console.log(dropdown[14]);
-            // Conceptual pseudocode
-//            this.parent.$(".dropdown-image").css("background","url("+ dropdown[index]['image'] + ") no-repeat center center");
-//            this.parent.$(".dropdown-title").css("background","url("+ dropdown[index]['title'] + ") no-repeat center center");
-//            this.parent.$(".dropdown-excerpt").css("background","url("+ dropdown[index]['excerpt'] + ") no-repeat center center");
-        });
-        
     });
-</script>
\ No newline at end of file
+</script>