CSS-storing na migratie (WordPress)

Uit De Vliegende Brigade
Versie door Jeroen Strompf (overleg | bijdragen) op 1 jun 2019 om 11:19 (→‎Oplossing)
(wijz) ← Oudere versie | Huidige versie (wijz) | Nieuwere versie → (wijz)
Naar navigatie springen Naar zoeken springen

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