Pojawiają się komunikaty PHP uniemożliwiające korzystanie ze strony

Przyczyny

wiele możliwości:

w katalogach z modułami (np. modules, sites/all/modules, sites/default/modules, sites//modules) albo skórkami (themes, sites/all/themes, itd.) znajdują się 2 razy te same moduły bądź skórki. Częsta sytuacja przy wrzucaniu updateów modułów, np. pomyłka i wrzucenie nowej wersji do innego katalogu a nawet do podkatalogu (np. sites/all/modules/views/views).

w plikach drupala brak jakiegoś katalogu lub pliku, względnie jest ale uszkodzony (urwany, z innym kodowaniem), albo z błędnymi uprawnieniami (np. serwer www nie może go odczytać z powodu błędnych uprawnień katalogu wyższego poziomu)

Rozwiązania

Rozwiązanie 0, od którego powinniśmy zacząć

1) wrzucamy w google komunikat błędu, dodajemy słówko drupal dla pewności, usuwamy wszystkie specyficzne dla naszego serwisu zmienne (np. ścieżka do katalogu, ilość bajtów, mail) i szukamy rozwiązania.
2) zastanawiamy się co ostatnio zmieniliśmy i próbujemy przywrócić serwis do stanu sprzed zmiany (wrzucamy kopię zapasową bazy danych, usuwamy dograne pliki, usuwamy zmiany z htaccesss, settings itp.)

Rozwiązanie 1, które zapewni nam bezkompromisową pewność, że to nie powielony/brakujący katalog bądź plik:

1) robimy kopię zapasową wszystkich plików i bazy danych
2) usuwamy wszystkie pliki z katalogu naszej strony
3) wrzucamy tam czystą instalację drupala (pliki pobrane z drupal.org)
4) wrzucamy z naszej kopii zapasowej plik settings.php do katalogu sites/default
5) dorzucamy pobrane z drupal.org pliki z poszczególnymi modułami

W ten sposób otrzymujemy "pewny" zestaw plików, napędzany naszą "starą" bazą danych.

Rozwiązanie 2, które zapewni nam trochę mniej "rewolucyjne" podejście, ale może całą zabawę wydłużyć,

1) zmieniamy nazwę katalogu sites/all/modules na sites/all/nie_modules (albo dowolna inna nazwa)
2) sprawdzamy czy błąd ustąpił. Jeśli tak to problem jest w jednym z podkatalogów sites/all/modules,
3) teraz możemy stworzyć katalog modules i wrzucać do niego po kolei moduły z katalogu nie_modules, każdorazowo sprawdzając czy błąd się nie pojawi. Jeśli pojawi się po wrzuceniu jednego z katalogów to mamy sprawcę

Przykładowe komunikaty, jakie mogą się pojawić to:

warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, 'page_node_form' was given in ...