• Resuelto frantronic2021

    (@frantronic2021)


    Hola amigos, tengo un problemilla con mi web y me gustaría saber si alguien me puede echar un cable, llevo poco en esto y no me aclaro demasiado.
    Resulta que durante mucho tiempo no ha habido nadie que haya mantenido wordpress, ni actualizado plugins y menos wordpress. He visto en la web un error al entrar cómo un usuario normal y cuando intento entrar al panel de administración para ver que ocurre, no puedo.

    Intentando entrar en el panel de administrador ocurre lo siquiente:

    Warning: «continue» targeting switch is equivalent to «break». Did you mean to use «continue 2»? in /homepages/18/d686480843/htdocs/clickandbuilds/peluqueria/wp-includes/pomo/plural-forms.php on line 210

    Warning: Cannot modify header information – headers already sent by (output started at /homepages/18/d686480843/htdocs/clickandbuilds/peluqueria/wp-includes/pomo/plural-forms.php:210) in /homepages/18/d686480843/htdocs/clickandbuilds/peluqueria/wp-includes/pluggable.php on line 1216

    Entro al administrador de archivos por FTP y veo que las carpetas y las rutas existen. He intentado entrar renombrando la carpeta, pero nada. También renombré la carpeta de plugins, por si fuera debido a un plugin, pero tampoco.
    Si entro en (wp-includes/pomo/mo.php) línea 102 sale esto:

    $size_of_hash = 0;

    Os pongo el código completo de esa ruta:

    <?php
    /**
     * Class for working with MO files
     *
     * @version $Id: mo.php 1157 2015-11-20 04:30:11Z dd32 $
     * @package pomo
     * @subpackage mo
     */
    
    require_once dirname(__FILE__) . '/translations.php';
    require_once dirname(__FILE__) . '/streams.php';
    
    if ( ! class_exists( 'MO', false ) ):
    class MO extends Gettext_Translations {
    
    	var $_nplurals = 2;
    
    	/**
    	 * Loaded MO file.
    	 *
    	 * @var string
    	 */
    	private $filename = '';
    
    	/**
    	 * Returns the loaded MO file.
    	 *
    	 * @return string The loaded MO file.
    	 */
    	public function get_filename() {
    		return $this->filename;
    	}
    
    	/**
    	 * Fills up with the entries from MO file $filename
    	 *
    	 * @param string $filename MO file to load
    	 */
    	function import_from_file($filename) {
    		$reader = new POMO_FileReader( $filename );
    
    		if ( ! $reader->is_resource() ) {
    			return false;
    		}
    
    		$this->filename = (string) $filename;
    
    		return $this->import_from_reader( $reader );
    	}
    
    	/**
    	 * @param string $filename
    	 * @return bool
    	 */
    	function export_to_file($filename) {
    		$fh = fopen($filename, 'wb');
    		if ( !$fh ) return false;
    		$res = $this->export_to_file_handle( $fh );
    		fclose($fh);
    		return $res;
    	}
    
    	/**
    	 * @return string|false
    	 */
    	function export() {
    		$tmp_fh = fopen("php://temp", 'r+');
    		if ( !$tmp_fh ) return false;
    		$this->export_to_file_handle( $tmp_fh );
    		rewind( $tmp_fh );
    		return stream_get_contents( $tmp_fh );
    	}
    
    	/**
    	 * @param Translation_Entry $entry
    	 * @return bool
    	 */
    	function is_entry_good_for_export( $entry ) {
    		if ( empty( $entry->translations ) ) {
    			return false;
    		}
    
    		if ( !array_filter( $entry->translations ) ) {
    			return false;
    		}
    
    		return true;
    	}
    
    	/**
    	 * @param resource $fh
    	 * @return true
    	 */
    	function export_to_file_handle($fh) {
    		$entries = array_filter( $this->entries, array( $this, 'is_entry_good_for_export' ) );
    		ksort($entries);
    		$magic = 0x950412de;
    		$revision = 0;
    		$total = count($entries) + 1; // all the headers are one entry
    		$originals_lenghts_addr = 28;
    		$translations_lenghts_addr = $originals_lenghts_addr + 8 * $total;
    		$size_of_hash = 0;
    		$hash_addr = $translations_lenghts_addr + 8 * $total;
    		$current_addr = $hash_addr;
    		fwrite($fh, pack('V*', $magic, $revision, $total, $originals_lenghts_addr,
    			$translations_lenghts_addr, $size_of_hash, $hash_addr));
    		fseek($fh, $originals_lenghts_addr);
    
    		// headers' msgid is an empty string
    		fwrite($fh, pack('VV', 0, $current_addr));
    		$current_addr++;
    		$originals_table = chr(0);
    
    		$reader = new POMO_Reader();
    
    		foreach($entries as $entry) {
    			$originals_table .= $this->export_original($entry) . chr(0);
    			$length = $reader->strlen($this->export_original($entry));
    			fwrite($fh, pack('VV', $length, $current_addr));
    			$current_addr += $length + 1; // account for the NULL byte after
    		}
    
    		$exported_headers = $this->export_headers();
    		fwrite($fh, pack('VV', $reader->strlen($exported_headers), $current_addr));
    		$current_addr += strlen($exported_headers) + 1;
    		$translations_table = $exported_headers . chr(0);
    
    		foreach($entries as $entry) {
    			$translations_table .= $this->export_translations($entry) . chr(0);
    			$length = $reader->strlen($this->export_translations($entry));
    			fwrite($fh, pack('VV', $length, $current_addr));
    			$current_addr += $length + 1;
    		}
    
    		fwrite($fh, $originals_table);
    		fwrite($fh, $translations_table);
    		return true;
    	}
    
    	/**
    	 * @param Translation_Entry $entry
    	 * @return string
    	 */
    	function export_original($entry) {
    		//TODO: warnings for control characters
    		$exported = $entry->singular;
    		if ($entry->is_plural) $exported .= chr(0).$entry->plural;
    		if ($entry->context) $exported = $entry->context . chr(4) . $exported;
    		return $exported;
    	}
    
    	/**
    	 * @param Translation_Entry $entry
    	 * @return string
    	 */
    	function export_translations($entry) {
    		//TODO: warnings for control characters
    		return $entry->is_plural ? implode(chr(0), $entry->translations) : $entry->translations[0];
    	}
    
    	/**
    	 * @return string
    	 */
    	function export_headers() {
    		$exported = '';
    		foreach($this->headers as $header => $value) {
    			$exported.= "$header: $value\n";
    		}
    		return $exported;
    	}
    
    	/**
    	 * @param int $magic
    	 * @return string|false
    	 */
    	function get_byteorder($magic) {
    		// The magic is 0x950412de
    
    		// bug in PHP 5.0.2, see https://savannah.nongnu.org/bugs/?func=detailitem&item_id=10565
    		$magic_little = (int) - 1794895138;
    		$magic_little_64 = (int) 2500072158;
    		// 0xde120495
    		$magic_big = ((int) - 569244523) & 0xFFFFFFFF;
    		if ($magic_little == $magic || $magic_little_64 == $magic) {
    			return 'little';
    		} else if ($magic_big == $magic) {
    			return 'big';
    		} else {
    			return false;
    		}
    	}
    
    	/**
    	 * @param POMO_FileReader $reader
    	 */
    	function import_from_reader($reader) {
    		$endian_string = MO::get_byteorder($reader->readint32());
    		if (false === $endian_string) {
    			return false;
    		}
    		$reader->setEndian($endian_string);
    
    		$endian = ('big' == $endian_string)? 'N' : 'V';
    
    		$header = $reader->read(24);
    		if ($reader->strlen($header) != 24)
    			return false;
    
    		// parse header
    		$header = unpack("{$endian}revision/{$endian}total/{$endian}originals_lenghts_addr/{$endian}translations_lenghts_addr/{$endian}hash_length/{$endian}hash_addr", $header);
    		if (!is_array($header))
    			return false;
    
    		// support revision 0 of MO format specs, only
    		if ( $header['revision'] != 0 ) {
    			return false;
    		}
    
    		// seek to data blocks
    		$reader->seekto( $header['originals_lenghts_addr'] );
    
    		// read originals' indices
    		$originals_lengths_length = $header['translations_lenghts_addr'] - $header['originals_lenghts_addr'];
    		if ( $originals_lengths_length != $header['total'] * 8 ) {
    			return false;
    		}
    
    		$originals = $reader->read($originals_lengths_length);
    		if ( $reader->strlen( $originals ) != $originals_lengths_length ) {
    			return false;
    		}
    
    		// read translations' indices
    		$translations_lenghts_length = $header['hash_addr'] - $header['translations_lenghts_addr'];
    		if ( $translations_lenghts_length != $header['total'] * 8 ) {
    			return false;
    		}
    
    		$translations = $reader->read($translations_lenghts_length);
    		if ( $reader->strlen( $translations ) != $translations_lenghts_length ) {
    			return false;
    		}
    
    		// transform raw data into set of indices
    		$originals    = $reader->str_split( $originals, 8 );
    		$translations = $reader->str_split( $translations, 8 );
    
    		// skip hash table
    		$strings_addr = $header['hash_addr'] + $header['hash_length'] * 4;
    
    		$reader->seekto($strings_addr);
    
    		$strings = $reader->read_all();
    		$reader->close();
    
    		for ( $i = 0; $i < $header['total']; $i++ ) {
    			$o = unpack( "{$endian}length/{$endian}pos", $originals[$i] );
    			$t = unpack( "{$endian}length/{$endian}pos", $translations[$i] );
    			if ( !$o || !$t ) return false;
    
    			// adjust offset due to reading strings to separate space before
    			$o['pos'] -= $strings_addr;
    			$t['pos'] -= $strings_addr;
    
    			$original    = $reader->substr( $strings, $o['pos'], $o['length'] );
    			$translation = $reader->substr( $strings, $t['pos'], $t['length'] );
    
    			if ('' === $original) {
    				$this->set_headers($this->make_headers($translation));
    			} else {
    				$entry = &$this->make_entry($original, $translation);
    				$this->entries[$entry->key()] = &$entry;
    			}
    		}
    		return true;
    	}
    
    	/**
    	 * Build a Translation_Entry from original string and translation strings,
    	 * found in a MO file
    	 *
    	 * @static
    	 * @param string $original original string to translate from MO file. Might contain
    	 * 	0x04 as context separator or 0x00 as singular/plural separator
    	 * @param string $translation translation string from MO file. Might contain
    	 * 	0x00 as a plural translations separator
    	 */
    	function &make_entry($original, $translation) {
    		$entry = new Translation_Entry();
    		// look for context
    		$parts = explode(chr(4), $original);
    		if (isset($parts[1])) {
    			$original = $parts[1];
    			$entry->context = $parts[0];
    		}
    		// look for plural original
    		$parts = explode(chr(0), $original);
    		$entry->singular = $parts[0];
    		if (isset($parts[1])) {
    			$entry->is_plural = true;
    			$entry->plural = $parts[1];
    		}
    		// plural translations are also separated by \0
    		$entry->translations = explode(chr(0), $translation);
    		return $entry;
    	}
    
    	/**
    	 * @param int $count
    	 * @return string
    	 */
    	function select_plural_form($count) {
    		return $this->gettext_select_plural_form($count);
    	}
    
    	/**
    	 * @return int
    	 */
    	function get_plural_forms_count() {
    		return $this->_nplurals;
    	}
    }
    endif;

    Si entro en wp-settings.php línea 102 sale esto:

    require( ABSPATH . WPINC . ‘/pomo/mo.php’ );

    Os pongo código completo del archivo:

    <?php
    /**
     * Used to set up and fix common variables and include
     * the WordPress procedural and class library.
     *
     * Allows for some configuration in wp-config.php (see default-constants.php)
     *
     * @package WordPress
     */
    
    /**
     * Stores the location of the WordPress directory of functions, classes, and core content.
     *
     * @since 1.0.0
     */
    define( 'WPINC', 'wp-includes' );
    
    // Include files required for initialization.
    require( ABSPATH . WPINC . '/load.php' );
    require( ABSPATH . WPINC . '/default-constants.php' );
    require_once( ABSPATH . WPINC . '/plugin.php' );
    
    /*
     * These can't be directly globalized in version.php. When updating,
     * we're including version.php from another installation and don't want
     * these values to be overridden if already set.
     */
    global $wp_version, $wp_db_version, $tinymce_version, $required_php_version, $required_mysql_version, $wp_local_package;
    require( ABSPATH . WPINC . '/version.php' );
    
    /**
     * If not already configured, <code>$blog_id</code> will default to 1 in a single site
     * configuration. In multisite, it will be overridden by default in ms-settings.php.
     *
     * @global int $blog_id
     * @since 2.0.0
     */
    global $blog_id;
    
    // Set initial default constants including WP_MEMORY_LIMIT, WP_MAX_MEMORY_LIMIT, WP_DEBUG, SCRIPT_DEBUG, WP_CONTENT_DIR and WP_CACHE.
    wp_initial_constants();
    
    // Check for the required PHP version and for the MySQL extension or a database drop-in.
    wp_check_php_mysql_versions();
    
    // Disable magic quotes at runtime. Magic quotes are added using wpdb later in wp-settings.php.
    @ini_set( 'magic_quotes_runtime', 0 );
    @ini_set( 'magic_quotes_sybase',  0 );
    
    // WordPress calculates offsets from UTC.
    date_default_timezone_set( 'UTC' );
    
    // Turn register_globals off.
    wp_unregister_GLOBALS();
    
    // Standardize $_SERVER variables across setups.
    wp_fix_server_vars();
    
    // Check if we have received a request due to missing favicon.ico
    wp_favicon_request();
    
    // Check if we're in maintenance mode.
    wp_maintenance();
    
    // Start loading timer.
    timer_start();
    
    // Check if we're in WP_DEBUG mode.
    wp_debug_mode();
    
    /**
     * Filters whether to enable loading of the advanced-cache.php drop-in.
     *
     * This filter runs before it can be used by plugins. It is designed for non-web
     * run-times. If false is returned, advanced-cache.php will never be loaded.
     *
     * @since 4.6.0
     *
     * @param bool $enable_advanced_cache Whether to enable loading advanced-cache.php (if present).
     *                                    Default true.
     */
    if ( WP_CACHE && apply_filters( 'enable_loading_advanced_cache_dropin', true ) ) {
    	// For an advanced caching plugin to use. Uses a static drop-in because you would only want one.
    	WP_DEBUG ? include( WP_CONTENT_DIR . '/advanced-cache.php' ) : @include( WP_CONTENT_DIR . '/advanced-cache.php' );
    
    	// Re-initialize any hooks added manually by advanced-cache.php
    	if ( $wp_filter ) {
    		$wp_filter = WP_Hook::build_preinitialized_hooks( $wp_filter );
    	}
    }
    
    // Define WP_LANG_DIR if not set.
    wp_set_lang_dir();
    
    // Load early WordPress files.
    require( ABSPATH . WPINC . '/compat.php' );
    require( ABSPATH . WPINC . '/class-wp-list-util.php' );
    require( ABSPATH . WPINC . '/functions.php' );
    require( ABSPATH . WPINC . '/class-wp-matchesmapregex.php' );
    require( ABSPATH . WPINC . '/class-wp.php' );
    require( ABSPATH . WPINC . '/class-wp-error.php' );
    require( ABSPATH . WPINC . '/pomo/mo.php' );
    
    // Include the wpdb class and, if present, a db.php database drop-in.
    global $wpdb;
    require_wp_db();
    
    // Set the database table prefix and the format specifiers for database table columns.
    $GLOBALS['table_prefix'] = $table_prefix;
    wp_set_wpdb_vars();
    
    // Start the WordPress object cache, or an external object cache if the drop-in is present.
    wp_start_object_cache();
    
    // Attach the default filters.
    require( ABSPATH . WPINC . '/default-filters.php' );
    
    // Initialize multisite if enabled.
    if ( is_multisite() ) {
    	require( ABSPATH . WPINC . '/class-wp-site-query.php' );
    	require( ABSPATH . WPINC . '/class-wp-network-query.php' );
    	require( ABSPATH . WPINC . '/ms-blogs.php' );
    	require( ABSPATH . WPINC . '/ms-settings.php' );
    } elseif ( ! defined( 'MULTISITE' ) ) {
    	define( 'MULTISITE', false );
    }
    
    register_shutdown_function( 'shutdown_action_hook' );
    
    // Stop most of WordPress from being loaded if we just want the basics.
    if ( SHORTINIT )
    	return false;
    
    // Load the L10n library.
    require_once( ABSPATH . WPINC . '/l10n.php' );
    require_once( ABSPATH . WPINC . '/class-wp-locale.php' );
    require_once( ABSPATH . WPINC . '/class-wp-locale-switcher.php' );
    
    // Run the installer if WordPress is not installed.
    wp_not_installed();
    
    // Load most of WordPress.
    require( ABSPATH . WPINC . '/class-wp-walker.php' );
    require( ABSPATH . WPINC . '/class-wp-ajax-response.php' );
    require( ABSPATH . WPINC . '/formatting.php' );
    require( ABSPATH . WPINC . '/capabilities.php' );
    require( ABSPATH . WPINC . '/class-wp-roles.php' );
    require( ABSPATH . WPINC . '/class-wp-role.php' );
    require( ABSPATH . WPINC . '/class-wp-user.php' );
    require( ABSPATH . WPINC . '/class-wp-query.php' );
    require( ABSPATH . WPINC . '/query.php' );
    require( ABSPATH . WPINC . '/date.php' );
    require( ABSPATH . WPINC . '/theme.php' );
    require( ABSPATH . WPINC . '/class-wp-theme.php' );
    require( ABSPATH . WPINC . '/template.php' );
    require( ABSPATH . WPINC . '/user.php' );
    require( ABSPATH . WPINC . '/class-wp-user-query.php' );
    require( ABSPATH . WPINC . '/class-wp-session-tokens.php' );
    require( ABSPATH . WPINC . '/class-wp-user-meta-session-tokens.php' );
    require( ABSPATH . WPINC . '/meta.php' );
    require( ABSPATH . WPINC . '/class-wp-meta-query.php' );
    require( ABSPATH . WPINC . '/class-wp-metadata-lazyloader.php' );
    require( ABSPATH . WPINC . '/general-template.php' );
    require( ABSPATH . WPINC . '/link-template.php' );
    require( ABSPATH . WPINC . '/author-template.php' );
    require( ABSPATH . WPINC . '/post.php' );
    require( ABSPATH . WPINC . '/class-walker-page.php' );
    require( ABSPATH . WPINC . '/class-walker-page-dropdown.php' );
    require( ABSPATH . WPINC . '/class-wp-post-type.php' );
    require( ABSPATH . WPINC . '/class-wp-post.php' );
    require( ABSPATH . WPINC . '/post-template.php' );
    require( ABSPATH . WPINC . '/revision.php' );
    require( ABSPATH . WPINC . '/post-formats.php' );
    require( ABSPATH . WPINC . '/post-thumbnail-template.php' );
    require( ABSPATH . WPINC . '/category.php' );
    require( ABSPATH . WPINC . '/class-walker-category.php' );
    require( ABSPATH . WPINC . '/class-walker-category-dropdown.php' );
    require( ABSPATH . WPINC . '/category-template.php' );
    require( ABSPATH . WPINC . '/comment.php' );
    require( ABSPATH . WPINC . '/class-wp-comment.php' );
    require( ABSPATH . WPINC . '/class-wp-comment-query.php' );
    require( ABSPATH . WPINC . '/class-walker-comment.php' );
    require( ABSPATH . WPINC . '/comment-template.php' );
    require( ABSPATH . WPINC . '/rewrite.php' );
    require( ABSPATH . WPINC . '/class-wp-rewrite.php' );
    require( ABSPATH . WPINC . '/feed.php' );
    require( ABSPATH . WPINC . '/bookmark.php' );
    require( ABSPATH . WPINC . '/bookmark-template.php' );
    require( ABSPATH . WPINC . '/kses.php' );
    require( ABSPATH . WPINC . '/cron.php' );
    require( ABSPATH . WPINC . '/deprecated.php' );
    require( ABSPATH . WPINC . '/script-loader.php' );
    require( ABSPATH . WPINC . '/taxonomy.php' );
    require( ABSPATH . WPINC . '/class-wp-taxonomy.php' );
    require( ABSPATH . WPINC . '/class-wp-term.php' );
    require( ABSPATH . WPINC . '/class-wp-term-query.php' );
    require( ABSPATH . WPINC . '/class-wp-tax-query.php' );
    require( ABSPATH . WPINC . '/update.php' );
    require( ABSPATH . WPINC . '/canonical.php' );
    require( ABSPATH . WPINC . '/shortcodes.php' );
    require( ABSPATH . WPINC . '/embed.php' );
    require( ABSPATH . WPINC . '/class-wp-embed.php' );
    require( ABSPATH . WPINC . '/class-oembed.php' );
    require( ABSPATH . WPINC . '/class-wp-oembed-controller.php' );
    require( ABSPATH . WPINC . '/media.php' );
    require( ABSPATH . WPINC . '/http.php' );
    require( ABSPATH . WPINC . '/class-http.php' );
    require( ABSPATH . WPINC . '/class-wp-http-streams.php' );
    require( ABSPATH . WPINC . '/class-wp-http-curl.php' );
    require( ABSPATH . WPINC . '/class-wp-http-proxy.php' );
    require( ABSPATH . WPINC . '/class-wp-http-cookie.php' );
    require( ABSPATH . WPINC . '/class-wp-http-encoding.php' );
    require( ABSPATH . WPINC . '/class-wp-http-response.php' );
    require( ABSPATH . WPINC . '/class-wp-http-requests-response.php' );
    require( ABSPATH . WPINC . '/class-wp-http-requests-hooks.php' );
    require( ABSPATH . WPINC . '/widgets.php' );
    require( ABSPATH . WPINC . '/class-wp-widget.php' );
    require( ABSPATH . WPINC . '/class-wp-widget-factory.php' );
    require( ABSPATH . WPINC . '/nav-menu.php' );
    require( ABSPATH . WPINC . '/nav-menu-template.php' );
    require( ABSPATH . WPINC . '/admin-bar.php' );
    require( ABSPATH . WPINC . '/rest-api.php' );
    require( ABSPATH . WPINC . '/rest-api/class-wp-rest-server.php' );
    require( ABSPATH . WPINC . '/rest-api/class-wp-rest-response.php' );
    require( ABSPATH . WPINC . '/rest-api/class-wp-rest-request.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-posts-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-attachments-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-types-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-statuses-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-revisions-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-taxonomies-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-terms-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-users-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-comments-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-settings-controller.php' );
    require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-meta-fields.php' );
    require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-comment-meta-fields.php' );
    require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-post-meta-fields.php' );
    require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-term-meta-fields.php' );
    require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-user-meta-fields.php' );
    
    $GLOBALS['wp_embed'] = new WP_Embed();
    
    // Load multisite-specific files.
    if ( is_multisite() ) {
    	require( ABSPATH . WPINC . '/ms-functions.php' );
    	require( ABSPATH . WPINC . '/ms-default-filters.php' );
    	require( ABSPATH . WPINC . '/ms-deprecated.php' );
    }
    
    // Define constants that rely on the API to obtain the default value.
    // Define must-use plugin directory constants, which may be overridden in the sunrise.php drop-in.
    wp_plugin_directory_constants();
    
    $GLOBALS['wp_plugin_paths'] = array();
    
    // Load must-use plugins.
    foreach ( wp_get_mu_plugins() as $mu_plugin ) {
    	include_once( $mu_plugin );
    }
    unset( $mu_plugin );
    
    // Load network activated plugins.
    if ( is_multisite() ) {
    	foreach ( wp_get_active_network_plugins() as $network_plugin ) {
    		wp_register_plugin_realpath( $network_plugin );
    		include_once( $network_plugin );
    	}
    	unset( $network_plugin );
    }
    
    /**
     * Fires once all must-use and network-activated plugins have loaded.
     *
     * @since 2.8.0
     */
    do_action( 'muplugins_loaded' );
    
    if ( is_multisite() )
    	ms_cookie_constants(  );
    
    // Define constants after multisite is loaded.
    wp_cookie_constants();
    
    // Define and enforce our SSL constants
    wp_ssl_constants();
    
    // Create common globals.
    require( ABSPATH . WPINC . '/vars.php' );
    
    // Make taxonomies and posts available to plugins and themes.
    // @plugin authors: warning: these get registered again on the init hook.
    create_initial_taxonomies();
    create_initial_post_types();
    
    wp_start_scraping_edited_file_errors();
    
    // Register the default theme directory root
    register_theme_directory( get_theme_root() );
    
    // Load active plugins.
    foreach ( wp_get_active_and_valid_plugins() as $plugin ) {
    	wp_register_plugin_realpath( $plugin );
    	include_once( $plugin );
    }
    unset( $plugin );
    
    // Load pluggable functions.
    require( ABSPATH . WPINC . '/pluggable.php' );
    require( ABSPATH . WPINC . '/pluggable-deprecated.php' );
    
    // Set internal encoding.
    wp_set_internal_encoding();
    
    // Run wp_cache_postload() if object cache is enabled and the function exists.
    if ( WP_CACHE && function_exists( 'wp_cache_postload' ) )
    	wp_cache_postload();
    
    /**
     * Fires once activated plugins have loaded.
     *
     * Pluggable functions are also available at this point in the loading order.
     *
     * @since 1.5.0
     */
    do_action( 'plugins_loaded' );
    
    // Define constants which affect functionality if not already defined.
    wp_functionality_constants();
    
    // Add magic quotes and set up $_REQUEST ( $_GET + $_POST )
    wp_magic_quotes();
    
    /**
     * Fires when comment cookies are sanitized.
     *
     * @since 2.0.11
     */
    do_action( 'sanitize_comment_cookies' );
    
    /**
     * WordPress Query object
     * @global WP_Query $wp_the_query
     * @since 2.0.0
     */
    $GLOBALS['wp_the_query'] = new WP_Query();
    
    /**
     * Holds the reference to @see $wp_the_query
     * Use this global for WordPress queries
     * @global WP_Query $wp_query
     * @since 1.5.0
     */
    $GLOBALS['wp_query'] = $GLOBALS['wp_the_query'];
    
    /**
     * Holds the WordPress Rewrite object for creating pretty URLs
     * @global WP_Rewrite $wp_rewrite
     * @since 1.5.0
     */
    $GLOBALS['wp_rewrite'] = new WP_Rewrite();
    
    /**
     * WordPress Object
     * @global WP $wp
     * @since 2.0.0
     */
    $GLOBALS['wp'] = new WP();
    
    /**
     * WordPress Widget Factory Object
     * @global WP_Widget_Factory $wp_widget_factory
     * @since 2.8.0
     */
    $GLOBALS['wp_widget_factory'] = new WP_Widget_Factory();
    
    /**
     * WordPress User Roles
     * @global WP_Roles $wp_roles
     * @since 2.0.0
     */
    $GLOBALS['wp_roles'] = new WP_Roles();
    
    /**
     * Fires before the theme is loaded.
     *
     * @since 2.6.0
     */
    do_action( 'setup_theme' );
    
    // Define the template related constants.
    wp_templating_constants(  );
    
    // Load the default text localization domain.
    load_default_textdomain();
    
    $locale = get_locale();
    $locale_file = WP_LANG_DIR . "/$locale.php";
    if ( ( 0 === validate_file( $locale ) ) && is_readable( $locale_file ) )
    	require( $locale_file );
    unset( $locale_file );
    
    /**
     * WordPress Locale object for loading locale domain date and various strings.
     * @global WP_Locale $wp_locale
     * @since 2.1.0
     */
    $GLOBALS['wp_locale'] = new WP_Locale();
    
    /**
     *  WordPress Locale Switcher object for switching locales.
     *
     * @since 4.7.0
     *
     * @global WP_Locale_Switcher $wp_locale_switcher WordPress locale switcher object.
     */
    $GLOBALS['wp_locale_switcher'] = new WP_Locale_Switcher();
    $GLOBALS['wp_locale_switcher']->init();
    
    // Load the functions for the active theme, for both parent and child theme if applicable.
    if ( ! wp_installing() || 'wp-activate.php' === $pagenow ) {
    	if ( TEMPLATEPATH !== STYLESHEETPATH && file_exists( STYLESHEETPATH . '/functions.php' ) )
    		include( STYLESHEETPATH . '/functions.php' );
    	if ( file_exists( TEMPLATEPATH . '/functions.php' ) )
    		include( TEMPLATEPATH . '/functions.php' );
    }
    
    /**
     * Fires after the theme is loaded.
     *
     * @since 3.0.0
     */
    do_action( 'after_setup_theme' );
    
    // Set up current user.
    $GLOBALS['wp']->init();
    
    /**
     * Fires after WordPress has finished loading but before any headers are sent.
     *
     * Most of WP is loaded at this stage, and the user is authenticated. WP continues
     * to load on the {@see 'init'} hook that follows (e.g. widgets), and many plugins instantiate
     * themselves on it for all sorts of reasons (e.g. they need a user, a taxonomy, etc.).
     *
     * If you wish to plug an action once WP is loaded, use the {@see 'wp_loaded'} hook below.
     *
     * @since 1.5.0
     */
    do_action( 'init' );
    
    // Check site status
    if ( is_multisite() ) {
    	if ( true !== ( $file = ms_site_check() ) ) {
    		require( $file );
    		die();
    	}
    	unset($file);
    }
    
    /**
     * This hook is fired once WP, all plugins, and the theme are fully loaded and instantiated.
     *
     * Ajax requests should use wp-admin/admin-ajax.php. admin-ajax.php can handle requests for
     * users not logged in.
     *
     * @link https://codex.wordpress.org/AJAX_in_Plugins
     *
     * @since 3.0.0
     */
    do_action( 'wp_loaded' );

    Alguien me puede ayudar sobre qué debo hacer para solucionarlo, gracias

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • Moderador almendron

    (@almendron)

    Tienes una versión de WordPress del 2018.

    Dado que han pasado tres años, lo primero que tienes que hacer es comprobar que tu sitio cumple con los requisitos:

    Lo mínimo es PHP 5.6.20 o superior y MySQL 5.0 o superior, pero se recomienda PHP versión 7.4 o superior, MySQL versión 5.6 o superior (o MariaDB versión 10.1 o superior) y compatible con HTTPS.

    Una vez lo hayas comprobado y corregido si corresponde, tendrás que actualizar de forma manual WordPress.

    Iniciador del debate frantronic2021

    (@frantronic2021)

    Mil gracias por tu respuesta, me ha ayudado mucho. Ya he realizado las comprobaciones pertinentes y actualizado manualmente WordPress con acceso FTP a través de filezilla. Tema solucionado!!!

    Cierro el hilo.

    Moderador almendron

    (@almendron)

    De nada. Un saludo.

Viendo 3 respuestas - de la 1 a la 3 (de un total de 3)
  • El debate ‘Error en mi web wordpress’ está cerrado a nuevas respuestas.