CSS-storing na migratie (WordPress)

Uit De Vliegende Brigade
Ga naar: navigatie, zoeken

Casus

In mei 2019 een site (die niet door mij is gebouwd) verhuisd naar m'n ontwikkelomgeving (m'n laptop). De site doet het (na flink hacken ivm https → http), maar het beheergedeelte niet: CSS-lijkt te ontbreken.

Mogelijke oorzaken

  • Ergens een verwijzing naar https ipv. http?
  • Ergens een redirect van http naar https actief?
  • De site maakt gebruik van CSS-aggregatie, maar kan niet schrijven naar de betreffende map or bestanden?
  • Caching actief? - Ik kan niets vinden, en alle plugins staan uit. Er waren trouwens geen caching-plugins actief
  • Custom css-code die de boel in de war schopt?
  • Er is nog steeds ergens een redirect actief, want op het externe subdomein, springt-ie over naar het oorspronkelijke domein
  • Case-sensitief? Misschien is de oorspronkelijke server geen Linux, maar bv. Windows of Apple?

Aanvullende gegevens - Eliminatie

  • Alle plugins uitgezet, teruggeschakeld naar het standaard-theme - Geen verschil.
  • Truukje [1] toegepast - Geen verschil.
  • Het probleem treedt ook op, via https op een subdomein

Aanvullende gegevens - Aanwijzingen

  • Inlogscherm: Als ik safe site to disk kies, ontbreekt er een CSS-bestand: login.min.css. Dit bestand ontbreekt ook in de backup. Zijn bepaalde bestanden niet meegekomen? Vanwege rechtenproblemen? Omdat ze in gebruik waren? Storing?

Oplossing

SCRIPT_DEBUG & WP_DEBUG: True

Voeg define( 'SCRIPT_DEBUG', true ); aan wp-config.php, vóór require_once(ABSPATH . 'wp-settings.php');.

De laatste regels van m'n wp-config.php-bestand:

/**
 * For developers: WordPress debugging mode.
 *
 * Change this to true to enable the display of notices during development.
 * It is strongly recommended that plugin and theme developers use WP_DEBUG
 * in their development environments.
 */
# define('WP_DEBUG', false);

/* That's all, stop editing! Happy blogging. */

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
	define('ABSPATH', dirname(__FILE__) . '/');

##########################################################################
# Strompf - Before require_once
##########################################################################
#
define( 'CONCATENATE_SCRIPTS', false );
define('FORCE_SSL_ADMIN', false);
define( 'SCRIPT_DEBUG', true );
define('WP_DEBUG', true);

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

Hiermee waren een groot deel van de problemen verholpen, maar niet allemaal.

Update de site

Want daar struikelde wp_debug nogal over: Veel oude zooi.

WP_DEBUG: False

Nadat ik deze parameter weer op false zette, verdwenen de meldingen én was de interface normaal.

Bronnen