tags:

views:

27

answers:

2

Hello

Please advice: where drupal stores info about current active themes? Which table?

I upgraded Drupal, and when I enter admin area I have white screen of death. IMHO custom theme is causing that issue, could somebody help me?

Regards

A: 

If you think the problem is being caused by a custom theme, you can just move it out from the themes or sites/all/themes directory.

abhaga
Thanks a lot for you answer. I found the source of problem, when I checked index.php, theme() returns empty string. elseif (isset($return)) { $theme = theme('page', $return); var_dump($theme); echo 'dadasdsad';}$theme is empty string, not my home page:/Could somebody give me advice?
Marek
`$theme` being empty may be for many reasons including a problem with the theme. May be `page.tpl.php` is bad. Try to print `$return` and make sure that it contains the right data.
abhaga
A: 

The current theme globally set a Drupal site is saved in the variable theme_default. If users are then allowed to change theme, the theme they chose is saved in the users table; in that case, if you have selected a theme that is different from the default one for your account, you need to change the user data for your account directly in the database.

Looking at the reply you have given in the other answers, I wonder if the problem is really the theme. Did you try to change the default to a different one, to check if you still see the WSOD?

kiamlaluno
Thanks, but in my users table I have theme field which is empty. Could you tell me where is theme_default?
Marek
Drupal variables are saved in the table `variables`. If you can execute PHP code (using devel.module, which implements a block that contains a link to a page that allows to insert arbitrary PHP to execute, in example), you can get the value of that variable calling `variable_get('theme_default')`. As alternative to execute PHP code, you can enable the PHP filter, create a node where you use that input format to execute PHP code.
kiamlaluno
Thanks, now I am sure that problem is in custom theme.Theme is in themes folder, variable_get shows that this theme is set, so what else can causing that theme() return ''
Marek
When I change value of table field to ex 'garland' wsod is still apperaring everywhere
Marek
@Marek: To be use the custom theme is not used, you should remove its files from the Drupal installation. This will force Drupal to use Garland as theme. If even in that case you are still getting a WSOD, then the cause is not the theme (if you didn't alter the Garland theme, of course). Check the error_log file, or the log used by Apache to report any error. If you cannot see any errors that make you understand what the problem is, try disabling the third-party modules you enabled; the table that contains the list of enabled module is `system`.
kiamlaluno
@Marek: Set the field status to 0, to disable a module. In the case that doesn't resolve your problem, you can only re-install Drupal, and then re-add all the third-party modules you had, one by one. Every time you install a new module, verify the site is still working; if it doesn't work, then the last module you installed is not working correctly, or it is causing interferences with other modules.
kiamlaluno
Thanks again. Reinstallation 'one by one' is only solution probably.
Marek