Home  ›  Troubleshooting  ›  Theme Conflicts

Theme Conflicts

Being able to create themes so easily for WordPress is just another major strength of the system but can also lead to major problems when theme authors do not follow a few simple rules. Sadly, many do not as repeated support questions can testify.

WordPress dictates that at least three php functions are present in any theme page – one on the header – wp_head(), one in the footer – wp_footer() and one in the body or page template itself – the_content(). Simple:Press also requires these mandatory calls to operate correctly. if you are coming up with blank pages, or certain buttons/links show but do nothing – like Add Topic or Reply to Post etc., then you may have one of these items missing from your theme.

To determine this and to add these mandatory components in, please go to this wiki article

JavaScript Conflicts

The most common conflicts are caused by the use of JavaScript. This is no surprise as JavaScript is a complex programmng language that can be hard to debug and is becoming more prevalent as users demand richer user interfaces. Like WordPress itself, Simple:Press Forum utilises a lot of JavaScript and while we will not claim our code is perfect, we do attempt at all times to abide by the structure that WordPress gives us. The main reasons conflicts arise are given below.

However, as repeated forum questions show, many theme authors do not follow the simple rules for including JavaScript in their themes. These conflicts can not be resolved by us and really need to be taken up with theme authors.

At the bottom of this wiki article – Plugin Conflicts, in the section ‘Finding Your Errors’, is a simple method for listing any script errors you may have on your site

if you find conflicts and need to discuss them with your theme author, and we strongly recommend doing so as this is the only way theme authors will correct these errors, the following points are the main causes of serious problems:

  • No theme or plugin should load ANY JavaScript library or file from ANY other source IF that library or file is supplied with WordPress.
  • Only by using the jQuery library (etc) supplied with WordPress can a theme or plugin guarantee it is using a version that is fully compatible with the rest of the installation.
  • No theme or plugin should directly load jQuery (etc) in the header with a ‘script’ statement. WordPress provides functions to load JavaScript files that ensures no file is loaded more than once. Themes and plugins should use the wp_enqueue() functions at ALL times.
  • The use of jQuery and other jQuery plugins or jQuery code MUST be in the ‘no_conflict’ mode. This can not be guaranteed if the files are sourced externally.

Article written by Yellow Swordfish on September 16, 2010 and last modified by Yellow Swordfish on September 16, 2010