Dr. Nutmeg’s Steps for Critical Thinking

This week we are going to diagnose several mysterious ailments on our client’s Drupal Web site:

  • A right sidebar block has suddenly dropped down to the bottom content area
  • Locating all the pieces of a dynamically generated table  in order to delete them from a View

Day 1

Upon superficial perusal of the page (which is constructed by a Drupal View), I decided to switch the width of the image from 240 to 180 pixels to see if this was causing the right nav to bump down to the bottom. Nope. That’s not the problem. I also went to the Blocks section to see if the block had been set to display in the “content bottom” section, but that didn’t seem to be the problem either.

I am wondering if it’s a style sheet issue…but it might be something more straightforward that I’m not seeing right now. This one is definitely a challenge! Since no one is dying, I will come back to this with a fresh head in the morning!

Total time spent so far: 1.5 hours

Day 2

Consider all the elements that make up the page: Views? Blocks? Panels? Stylesheets? Images? Content Types? Theme?
But the developer of this particular Web site did not draw up strategic blueprints, so these elements were not put together in a sound, structural way.

So, let’s do what any good holistic doctor would do! Google it!

Google Search #1: “right sidebar drupal drops to content bottom” yields:
Right column drops to the bottom in IE

This discussion forum refers to Drupal’s themes. Maybe the theme might be causing the problem.

According to its description, “the right column is disabled by default in admin section, as sometimes the content of admin section is wider than central column, and the content is cut. You can turn on/off right (or left) column for admin section in theme configuration.”

Hmm. Sounds somewhat related. But I don’t really know what to do from here…

Google Search #2: “right sidebar drupal dropping down” yields:
Left sidebar menu disappears and right sidebar menu drops down

In the comments, someone wrote: Do you have the Weight.module installed?

Hmm. I did see a lot of different weights applied to different elements on this Drupal Web site. Maybe this is what is causing the problem. But where? And it’s not the individual links that are not appearing in the correct order; it’s the elements of the page, which includes the “main body” (i.e., job listings) and the right sidebar “block.” And upon careful observation of the content of these two elements, it looks like they are redundant. No need for this block. Perhaps a simple solution is deleting it completely from this View. Moreover, clicking on any of the job listings in the sidebar block in this view does not take a user to the full job detail page. The URL changes, but the full job detail page does not display.


Delete the dangling block from the view since its links aren’t working anyway. I hid the block from public view and made it so only logged in admin users can see it.
I went ahead and hid the block from public view and made it so only logged in admin users can see it.
I also removed the random image block from appearing on the jobs pages by removing the php code from the block.

Total Time spent: 1.5 + 1.5 (yesterday) = 2.75 hours

Day 3

On to diagnosing the next symptom! Our client’s sick Web site has a gaggle of pages with dynamically generated tables, pulling from multiple sources which are unwieldy to update. They have decided it’s much easier to have ol-skule style tables embedded directly in the pages, and I must delete the dynamically generated tables.

  • 15 resources need to be moved from the dynamic table starting at pages 4-5
  • The client recommends deleting all the content that has already been moved from pages 1-3 into the new tables with the one exception of the January 2009 data he missed. Be very careful that you aren’t deleting content that hasn’t already been copied. If you come across any just copy it into the appropriate place in the table. Remember the data is in chronological date order.
  • once you are done copying all the data ensure that all of the data driven content is removed.

First issue is to find the different pieces.

First, I checked the Content Type. I thought I could disable one of the fields in order to hide the content from the public facing site. While this successfully deleted that row from the dynamically generated table on the page, the link to this page from another page disappears. I don’t think this is the intended effect.

Perhaps I should tackle this from the View level?

Whew! This is not a simple View. It has several displays within the View. If I delete the table display, then ALL tables on ALL 15 pages will be deleted, and not all of their content has been migrated to the new embedded tables on each page.

This is confusing stuff to read, so I don’t expect you to follow. Apparently this post is just for me to write out my thoughts as I think critically. It seems to me that the client does not understand how the tables on these pages are generated. Or maybe I am not understanding how they are generated. Time to T-A-L-K it out!

Good thing I am writing out my thoughts. I was en pointe with this step of talking out the issues with the client. Turns out the pages were linked incorrectly and I have to completely delete the content in order to make the dynamically generated tables disappear. Here we go!

Got everything done in a little less than 2 hours. Woo woo! Do doctors say Woo woo??? Hmmm.