Risultati della ricerca per 'Wordpress php'

Stai vedendo 15 risultati - da 31 a 45 (di 1.668 totali)
  • ciao,

    ho lo stesso problema del thread. Nel sito di Staging (con Debug Attivo) ho questo messaggio:

    Notice: Function _load_textdomain_just_in_time was called incorrectly. Translation loading for the td-cloud-library domain was triggered too early. This is usually an indicator for some code in the plugin or theme running too early. Translations should be loaded at the init action or later. Please see Debugging in WordPress for more information. (This message was added in version 6.7.0.) in /home/dnwsiupx/public_html/staging/wp-includes/functions.php on line 6121

    Ho re-installato l’ultima versione di WordPress 6.8.1 ed il messaggio persiste.

    Avevo capito che il problema si sarebbe risolto con la 6.8 di WP.

    Potete indicarmi come risolvere questo problema?

    Grazie MIlle

    Francesco

    • Salve,
      il mio sito WordPress deve connettersi al servizio esterno Passcreator tramite API HTTPS (https://api.passcreator.com).

      Tuttavia, ricevo questo errore da wp_remote_post():

      cURL error 56: CONNECT tunnel failed, response 500

      Mi chiedo se ci sono restrizioni firewall/proxy in uscita verso https://api.passcreator.com (porta 443), e se si, come risolvere, nonché se il server ha cURL abilitato e configurato per connessioni HTTPS dirette.

        Grazie mille per il supporto.

      • Ciao a tutti, lavoro da anni con WordPress ma non riesco a districarmi dal problema che vi sottopongo. Oltretutto non sono una sistemista e conosco poco gli arcani dell’uso delle risorse lato server.

        Il problemaè il seguente: ho un’intsallazione di WP aggiornata 6.8.1 con una serie di plugin, anche’essi aggiornati e quasi tutti registrati (tranne toolset blocks che ancora non ha rilasciato indicazioni di compatinilità con l’ultima versione di WP). Il sito è appena stato messo online e funziona correttamente finché non si accede all’editor temi del back-end.

        A quel punto (anche se non sempre e questo complica il debug) il sito inizia a rallentare fino a generare errori 500. Poi si riprende e si riesce anche a eseguire aggiornamenti e modifiche.

        Ho fatto eseguire una serie di controlli e nei log di errori risulta che esiste uno script nella pagina site-editor che impiega più di 45 sec nell’esecuzione e (credo) questo causa il successivo errore del “output before headers”:

        [Wed Jun 04 14:31:05.794107 2025] [fcgid:warn] [pid 4151244:tid 4151267] [client 94.95.234.18:0] mod_fcgid: read data timeout in 45 seconds, referer: https://xxxxxxxxx.it/wp-admin/site-editor.php?p=%2Ftemplate
        [Wed Jun 04 14:31:05.990736 2025] [core:error] [pid 4151244:tid 4151268] [client 94.95.234.18:0] End of script output before headers: index.php, referer: https://xxxxxxxxx.it/wp-admin/site-editor.php?p=%2Ftemplate

        Mi chiedo se ci sia un numero di template che una volta superati crea “instabilità”, perché noi ne abbiamo poco meno di 60 (sono 3 pagine nella sezione dell’editor).

        La cosa curiosa è che in fase di sviluppo il problema non si è mai presentato, anche navigando il frontend durante la creazione dei template non si generava alcun rallentamento o errore.

        L’assistenza che gestisce l’hosting, a cui avevo chiesto se era il caso alzare il time out di esecuzione script per la variabile coinvolta in buona sostanza mi ha detto che no, non aveva senso e che dovevo capire dove stava il problema perché 45 sec sono troppi.

        Qualcuno è in grado di aiutarmi a capire meglio per poter risolvere il problema?

        Grazie a chi vorrà farlo.

        La pagina su cui ho bisogno di aiuto: [devi essere connesso per vedere il link]

      • luca19671968

        (@luca19671968)


        Buongiorno a tutti e a tutte,

        ho esportato da staging a online il mio sito dopo aver inserto l’ecommerce. Da quel momento, nonostante l’esportazione sia andata (sembrerebbe) bene, wordpress non funziona più. Non posso aggiungere pagine, modificare con elementor e quant’altro. L’errore riscontrato è questo:

        PHP Fatal error:  Uncaught TypeError: Elementor\\TemplateLibrary\\Source_Local::post_row_actions(): Argument #2 ($post) must be of type WP_Post, null given, called in /www/MW_qycGcayPG/temporitrovatolibri.it/wp-includes/class-wp-hook.php on line 324 and defined in /www/MW_qycGcayPG/temporitrovatolibri.it/wp-content/plugins/elementor/includes/template-library/sources/local.php:971\nStack trace:\n#0 /www/MW_qycGcayPG/temporitrovatolibri.it/wp-includes/class-wp-hook.php(324): Elementor\\TemplateLibrary\\Source_Local->post_row_actions()\n#1 /www/MW_qycGcayPG/temporitrovatolibri.it/wp-includes/plugin.php(205): WP_Hook->apply_filters()\n#2 /www/MW_qycGcayPG/temporitrovatolibri.it/wp-admin/includes/class-wp-posts-list-table.php(1607): apply_filters()\n#3 /www/MW_qycGcayPG/temporitrovatolibri.it/wp-admin/includes/class-wp-list-table.php(1803): WP_Posts_List_Table->handle_row_actions()\n#4 /www/MW_qycGcayPG/temporitrovatolibri.it/wp-admin/includes/class-wp-posts-list-table.php(1444): WP_List_Table->sing…’,

        Tengo a precisare che ho aggiornato tutti i plugin e wordpress. Ho provato a disattivare e poi a riattivare tutti i plugin, ma il risultato non è mutato.

        La pagina su cui ho bisogno di aiuto: [devi essere connesso per vedere il link]

      • Buongiorno, questa notte WordPress si è aggiornato da solo, come sempre son stato avvisato dall’email. Nell’email è scritto che l’aggiornamento era andato a buon fine.

        Se visualizzo il sito peró mi viene scritto Si è verificato un errore critico sul tuo sito web.

        Ho cercato online, e qualche soluzione l’avevo anche letta ma non é andata a bion fine, tipo aggiornare la versione del php. Quindi creo un nuovo post per avere supporto diretto.

        Non mi apre nemmeno il wp admin.

        Come posso risolvere?

        Grazie

        La pagina su cui ho bisogno di aiuto: [devi essere connesso per vedere il link]

      Moderator Cristiano Zanca

      (@cristianozanca)

      Salve @dalailama96 ,

      Il consiglio è di leggere le impostazioni raccomandate per i permessi in una installazione di WordPress illustrati qui:
      https://developer.wordpress.org/advanced-administration/server/file-permissions/

      Questi permessi aiutano a bilanciare la funzionalità (WordPress deve poter scrivere su determinate directory come “uploads”) con le misure di sicurezza, riducendo il rischio di modifiche indesiderate o accessi non autorizzati. Tuttavia, è importante ricordare che le configurazioni potrebbero variare in base al server e alle esigenze specifiche, quindi potrebbero essere necessari aggiustamenti in base al contesto del proprio ambiente di hosting.

      Bloccare l’accesso diretto a tutta la cartella /wp-content/plugins/ non è consigliato, perché molti plugin hanno bisogno di rendere pubblici alcuni file. Meglio, quindi, proteggere solo i file PHP sensibili, mantenendo accessibili gli asset statici. Questa strategia garantisce sicurezza senza compromettere il funzionamento dei plugin.

      Cordiali Saluti

      • alecimi02

        (@alecimi02)


        Quando provo ad accedere al mio sito web mi da il seguente errore:

        /** * WordPress environment setup class. * * @package WordPress * @since 2.0.0 */ #[AllowDynamicProperties] class WP { /** * Public query variables. * * Long list of public query variables. * * @since 2.0.0 * @var string[] */ public $public_query_vars = array( ‘m’, ‘p’, ‘posts’, ‘w’, ‘cat’, ‘withcomments’, ‘withoutcomments’, ‘s’, ‘search’, ‘exact’, ‘sentence’, ‘calendar’, ‘page’, ‘paged’, ‘more’, ‘tb’, ‘pb’, ‘author’, ‘order’, ‘orderby’, ‘year’, ‘monthnum’, ‘day’, ‘hour’, ‘minute’, ‘second’, ‘name’, ‘category_name’, ‘tag’, ‘feed’, ‘author_name’, ‘pagename’, ‘page_id’, ‘error’, ‘attachment’, ‘attachment_id’, ‘subpost’, ‘subpost_id’, ‘preview’, ‘robots’, ‘favicon’, ‘taxonomy’, ‘term’, ‘cpage’, ‘post_type’, ‘embed’ ); /** * Private query variables. * * Long list of private query variables. * * @since 2.0.0 * @var string[] */ public $private_query_vars = array( ‘offset’, ‘posts_per_page’, ‘posts_per_archive_page’, ‘showposts’, ‘nopaging’, ‘post_type’, ‘post_status’, ‘category__in’, ‘category__not_in’, ‘category__and’, ‘tag__in’, ‘tag__not_in’, ‘tag__and’, ‘tag_slug__in’, ‘tag_slug__and’, ‘tag_id’, ‘post_mime_type’, ‘perm’, ‘comments_per_page’, ‘post__in’, ‘post__not_in’, ‘post_parent’, ‘post_parent__in’, ‘post_parent__not_in’, ‘title’, ‘fields’ ); /** * Extra query variables set by the user. * * @since 2.1.0 * @var array */ public $extra_query_vars = array(); /** * Query variables for setting up the WordPress Query Loop. * * @since 2.0.0 * @var array */ public $query_vars = array(); /** * String parsed to set the query variables. * * @since 2.0.0 * @var string */ public $query_string = ”; /** * The request path, e.g. 2015/05/06. * * @since 2.0.0 * @var string */ public $request = ”; /** * Rewrite rule the request matched. * * @since 2.0.0 * @var string */ public $matched_rule = ”; /** * Rewrite query the request matched. * * @since 2.0.0 * @var string */ public $matched_query = ”; /** * Whether already did the permalink. * * @since 2.0.0 * @var bool */ public $did_permalink = false; /** * Adds a query variable to the list of public query variables. * * @since 2.1.0 * * @param string $qv Query variable name. */ public function add_query_var( $qv ) { if ( ! in_array( $qv, $this->public_query_vars, true ) ) { $this->public_query_vars[] = $qv; } } /** * Removes a query variable from a list of public query variables. * * @since 4.5.0 * * @param string $name Query variable name. */ public function remove_query_var( $name ) { $this->public_query_vars = array_diff( $this->public_query_vars, array( $name ) ); } /** * Sets the value of a query variable. * * @since 2.3.0 * * @param string $key Query variable name. * @param mixed $value Query variable value. */ public function set_query_var( $key, $value ) { $this->query_vars[ $key ] = $value; } /** * Parses the request to find the correct WordPress query. * * Sets up the query variables based on the request. There are also many * filters and actions that can be used to further manipulate the result. * * @since 2.0.0 * @since 6.0.0 A return value was added. * * @global WP_Rewrite $wp_rewrite WordPress rewrite component. * * @param array|string $extra_query_vars Set the extra query variables. * @return bool Whether the request was parsed. */ public function parse_request( $extra_query_vars = ” ) { global $wp_rewrite; /** * Filters whether to parse the request. * * @since 3.5.0 * * @param bool $bool Whether or not to parse the request. Default true. * @param WP $wp Current WordPress environment instance. * @param array|string $extra_query_vars Extra passed query variables. */ if ( ! apply_filters( ‘do_parse_request’, true, $this, $extra_query_vars ) ) { return false; } $this->query_vars = array(); $post_type_query_vars = array(); if ( is_array( $extra_query_vars ) ) { $this->extra_query_vars = & $extra_query_vars; } elseif ( ! empty( $extra_query_vars ) ) { parse_str( $extra_query_vars, $this->extra_query_vars ); } // Process PATH_INFO, REQUEST_URI, and 404 for permalinks. // Fetch the rewrite rules. $rewrite = $wp_rewrite->wp_rewrite_rules(); if ( ! empty( $rewrite ) ) { // If we match a rewrite rule, this will be cleared. $error = ‘404’; $this->did_permalink = true; $pathinfo = isset( $_SERVER[‘PATH_INFO’] ) ? $_SERVER[‘PATH_INFO’] : ”; list( $pathinfo ) = explode( ‘?’, $pathinfo ); $pathinfo = str_replace( ‘%’, ‘%25’, $pathinfo ); list( $req_uri ) = explode( ‘?’, $_SERVER[‘REQUEST_URI’] ); $self = $_SERVER[‘PHP_SELF’]; $home_path = parse_url( home_url(), PHP_URL_PATH ); $home_path_regex = ”; if ( is_string( $home_path ) && ” !== $home_path ) { $home_path = trim( $home_path, ‘/’ ); $home_path_regex = sprintf( ‘|^%s|i’, preg_quote( $home_path, ‘|’ ) ); } /* * Trim path info from the end and the leading home path from the front. * For path info requests, this leaves us with the requesting filename, if any. * For 404 requests, this leaves us with the requested permalink. */ $req_uri = str_replace( $pathinfo, ”, $req_uri ); $req_uri = trim( $req_uri, ‘/’ ); $pathinfo = trim( $pathinfo, ‘/’ ); $self = trim( $self, ‘/’ ); if ( ! empty( $home_path_regex ) ) { $req_uri = preg_replace( $home_path_regex, ”, $req_uri ); $req_uri = trim( $req_uri, ‘/’ ); $pathinfo = preg_replace( $home_path_regex, ”, $pathinfo ); $pathinfo = trim( $pathinfo, ‘/’ ); $self = preg_replace( $home_path_regex, ”, $self ); $self = trim( $self, ‘/’ ); } // The requested permalink is in $pathinfo for path info requests and $req_uri for other requests. if ( ! empty( $pathinfo ) && ! preg_match( ‘|^.*’ . $wp_rewrite->index . ‘$|’, $pathinfo ) ) { $requested_path = $pathinfo; } else { // If the request uri is the index, blank it out so that we don’t try to match it against a rule. if ( $req_uri === $wp_rewrite->index ) { $req_uri = ”; } $requested_path = $req_uri; } $requested_file = $req_uri; $this->request = $requested_path; // Look for matches. $request_match = $requested_path; if ( empty( $request_match ) ) { // An empty request could only match against ^$ regex. if ( isset( $rewrite[‘$’] ) ) { $this->matched_rule = ‘$’; $query = $rewrite[‘$’]; $matches = array( ” ); } } else { foreach ( (array) $rewrite as $match => $query ) { // If the requested file is the anchor of the match, prepend it to the path info. if ( ! empty( $requested_file ) && str_starts_with( $match, $requested_file ) && $requested_file !== $requested_path ) { $request_match = $requested_file . ‘/’ . $requested_path; } if ( preg_match( “#^$match#”, $request_match, $matches ) || preg_match( “#^$match#”, urldecode( $request_match ), $matches ) ) { if ( $wp_rewrite->use_verbose_page_rules && preg_match( ‘/pagename=\$matches\[([0-9]+)\]/’, $query, $varmatch ) ) { // This is a verbose page match, let’s check to be sure about it. $page = get_page_by_path( $matches[ $varmatch[1] ] ); if ( ! $page ) { continue; } $post_status_obj = get_post_status_object( $page->post_status ); if ( ! $post_status_obj->public && ! $post_status_obj->protected && ! $post_status_obj->private && $post_status_obj->exclude_from_search ) { continue; } } // Got a match. $this->matched_rule = $match; break; } } } if ( ! empty( $this->matched_rule ) ) { // Trim the query of everything up to the ‘?’. $query = preg_replace( ‘!^.+\?!’, ”, $query ); // Substitute the substring matches into the query. $query = addslashes( WP_MatchesMapRegex::apply( $query, $matches ) ); $this->matched_query = $query; // Parse the query. parse_str( $query, $perma_query_vars ); // If we’re processing a 404 request, clear the error var since we found something. if ( ‘404’ === $error ) { unset( $error, $_GET[‘error’] ); } } // If req_uri is empty or if it is a request for ourself, unset error. if ( empty( $requested_path ) || $requested_file === $self || str_contains( $_SERVER[‘PHP_SELF’], ‘wp-admin/’ ) ) { unset( $error, $_GET[‘error’] ); if ( isset( $perma_query_vars ) && str_contains( $_SERVER[‘PHP_SELF’], ‘wp-admin/’ ) ) { unset( $perma_query_vars ); } $this->did_permalink = false; } } /** * Filters the query variables allowed before processing. * * Allows (publicly allowed) query vars to be added, removed, or changed prior * to executing the query. Needed to allow custom rewrite rules using your own arguments * to work, or any other custom query variables you want to be publicly available. * * @since 1.5.0 * * @param string[] $public_query_vars The array of allowed query variable names. */ $this->public_query_vars = apply_filters( ‘query_vars’, $this->public_query_vars ); foreach ( get_post_types( array(), ‘objects’ ) as $post_type => $t ) { if ( is_post_type_viewable( $t ) && $t->query_var ) { $post_type_query_vars[ $t->query_var ] = $post_type; } } foreach ( $this->public_query_vars as $wpvar ) { if ( isset( $this->extra_query_vars[ $wpvar ] ) ) { $this->query_vars[ $wpvar ] = $this->extra_query_vars[ $wpvar ]; } elseif ( isset( $_GET[ $wpvar ] ) && isset( $_POST[ $wpvar ] ) && $_GET[ $wpvar ] !== $_POST[ $wpvar ] ) { wp_die( __( ‘A variable mismatch has been detected.’ ), __( ‘Sorry, you are not allowed to view this item.’ ), 400 ); } elseif ( isset( $_POST[ $wpvar ] ) ) { $this->query_vars[ $wpvar ] = $_POST[ $wpvar ]; } elseif ( isset( $_GET[ $wpvar ] ) ) { $this->query_vars[ $wpvar ] = $_GET[ $wpvar ]; } elseif ( isset( $perma_query_vars[ $wpvar ] ) ) { $this->query_vars[ $wpvar ] = $perma_query_vars[ $wpvar ]; } if ( ! empty( $this->query_vars[ $wpvar ] ) ) { if ( ! is_array( $this->query_vars[ $wpvar ] ) ) { $this->query_vars[ $wpvar ] = (string) $this->query_vars[ $wpvar ]; } else { foreach ( $this->query_vars[ $wpvar ] as $vkey => $v ) { if ( is_scalar( $v ) ) { $this->query_vars[ $wpvar ][ $vkey ] = (string) $v; } } } if ( isset( $post_type_query_vars[ $wpvar ] ) ) { $this->query_vars[‘post_type’] = $post_type_query_vars[ $wpvar ]; $this->query_vars[‘name’] = $this->query_vars[ $wpvar ]; } } } // Convert urldecoded spaces back into ‘+’. foreach ( get_taxonomies( array(), ‘objects’ ) as $taxonomy => $t ) { if ( $t->query_var && isset( $this->query_vars[ $t->query_var ] ) ) { $this->query_vars[ $t->query_var ] = str_replace( ‘ ‘, ‘+’, $this->query_vars[ $t->query_var ] ); } } // Don’t allow non-publicly queryable taxonomies to be queried from the front end. if ( ! is_admin() ) { foreach ( get_taxonomies( array( ‘publicly_queryable’ => false ), ‘objects’ ) as $taxonomy => $t ) { /* * Disallow when set to the ‘taxonomy’ query var. * Non-publicly queryable taxonomies cannot register custom query vars. See register_taxonomy(). */ if ( isset( $this->query_vars[‘taxonomy’] ) && $taxonomy === $this->query_vars[‘taxonomy’] ) { unset( $this->query_vars[‘taxonomy’], $this->query_vars[‘term’] ); } } } // Limit publicly queried post_types to those that are ‘publicly_queryable’. if ( isset( $this->query_vars[‘post_type’] ) ) { $queryable_post_types = get_post_types( array( ‘publicly_queryable’ => true ) ); if ( ! is_array( $this->query_vars[‘post_type’] ) ) { if ( ! in_array( $this->query_vars[‘post_type’], $queryable_post_types, true ) ) { unset( $this->query_vars[‘post_type’] ); } } else { $this->query_vars[‘post_type’] = array_intersect( $this->query_vars[‘post_type’], $queryable_post_types ); } } // Resolve conflicts between posts with numeric slugs and date archive queries. $this->query_vars = wp_resolve_numeric_slug_conflicts( $this->query_vars ); foreach ( (array) $this->private_query_vars as $var ) { if ( isset( $this->extra_query_vars[ $var ] ) ) { $this->query_vars[ $var ] = $this->extra_query_vars[ $var ]; } } if ( isset( $error ) ) { $this->query_vars[‘error’] = $error; } /** * Filters the array of parsed query variables. * * @since 2.1.0 * * @param array $query_vars The array of requested query variables. */ $this->query_vars = apply_filters( ‘request’, $this->query_vars ); /** * Fires once all query variables for the current request have been parsed. * * @since 2.1.0 * * @param WP $wp Current WordPress environment instance (passed by reference). */ do_action_ref_array( ‘parse_request’, array( &$this ) ); return true; } /** * Sends additional HTTP headers for caching, content type, etc. * * Sets the Content-Type header. Sets the ‘error’ status (if passed) and optionally exits. * If showing a feed, it will also send Last-Modified, ETag, and 304 status if needed. * * @since 2.0.0 * @since 4.4.0 X-Pingback header is added conditionally for single posts that allow pings. * @since 6.1.0 Runs after posts have been queried. * * @global WP_Query $wp_query WordPress Query object. */ public function send_headers() { global $wp_query; $headers = array(); $status = null; $exit_required = false; $date_format = ‘D, d M Y H:i:s’; if ( is_user_logged_in() ) { $headers = array_merge( $headers, wp_get_nocache_headers() ); } elseif ( ! empty( $_GET[‘unapproved’] ) && ! empty( $_GET[‘moderation-hash’] ) ) { // Unmoderated comments are only visible for 10 minutes via the moderation hash. $expires = 10 * MINUTE_IN_SECONDS; $headers[‘Expires’] = gmdate( $date_format, time() + $expires ); $headers[‘Cache-Control’] = sprintf( ‘max-age=%d, must-revalidate’, $expires ); } if ( ! empty( $this->query_vars[‘error’] ) ) { $status = (int) $this->query_vars[‘error’]; if ( 404 === $status ) { if ( ! is_user_logged_in() ) { $headers = array_merge( $headers, wp_get_nocache_headers() ); } $headers[‘Content-Type’] = get_option( ‘html_type’ ) . ‘; charset=’ . get_option( ‘blog_charset’ ); } elseif ( in_array( $status, array( 403, 500, 502, 503 ), true ) ) { $exit_required = true; } } elseif ( empty( $this->query_vars[‘feed’] ) ) { $headers[‘Content-Type’] = get_option( ‘html_type’ ) . ‘; charset=’ . get_option( ‘blog_charset’ ); } else { // Set the correct content type for feeds. $type = $this->query_vars[‘feed’]; if ( ‘feed’ === $this->query_vars[‘feed’] ) { $type = get_default_feed(); } $headers[‘Content-Type’] = feed_content_type( $type ) . ‘; charset=’ . get_option( ‘blog_charset’ ); // We’re showing a feed, so WP is indeed the only thing that last changed. if ( ! empty( $this->query_vars[‘withcomments’] ) || str_contains( $this->query_vars[‘feed’], ‘comments-‘ ) || ( empty( $this->query_vars[‘withoutcomments’] ) && ( ! empty( $this->query_vars[‘p’] ) || ! empty( $this->query_vars[‘name’] ) || ! empty( $this->query_vars[‘page_id’] ) || ! empty( $this->query_vars[‘pagename’] ) || ! empty( $this->query_vars[‘attachment’] ) || ! empty( $this->query_vars[‘attachment_id’] ) ) ) ) { $wp_last_modified_post = mysql2date( $date_format, get_lastpostmodified( ‘GMT’ ), false ); $wp_last_modified_comment = mysql2date( $date_format, get_lastcommentmodified( ‘GMT’ ), false ); if ( strtotime( $wp_last_modified_post ) > strtotime( $wp_last_modified_comment ) ) { $wp_last_modified = $wp_last_modified_post; } else { $wp_last_modified = $wp_last_modified_comment; } } else { $wp_last_modified = mysql2date( $date_format, get_lastpostmodified( ‘GMT’ ), false ); } if ( ! $wp_last_modified ) { $wp_last_modified = gmdate( $date_format ); } $wp_last_modified .= ‘ GMT’; $wp_etag = ‘”‘ . md5( $wp_last_modified ) . ‘”‘; $headers[‘Last-Modified’] = $wp_last_modified; $headers[‘ETag’] = $wp_etag; // Support for conditional GET. if ( isset( $_SERVER[‘HTTP_IF_NONE_MATCH’] ) ) { $client_etag = wp_unslash( $_SERVER[‘HTTP_IF_NONE_MATCH’] ); } else { $client_etag = ”; } if ( isset( $_SERVER[‘HTTP_IF_MODIFIED_SINCE’] ) ) { $client_last_modified = trim( $_SERVER[‘HTTP_IF_MODIFIED_SINCE’] ); } else { $client_last_modified = ”; } // If string is empty, return 0. If not, attempt to parse into a timestamp. $client_modified_timestamp = $client_last_modified ? strtotime( $client_last_modified ) : 0; // Make a timestamp for our most recent modification. $wp_modified_timestamp = strtotime( $wp_last_modified ); if ( ( $client_last_modified && $client_etag ) ? ( ( $client_modified_timestamp >= $wp_modified_timestamp ) && ( $client_etag === $wp_etag ) ) : ( ( $client_modified_timestamp >= $wp_modified_timestamp ) || ( $client_etag === $wp_etag ) ) ) { $status = 304; $exit_required = true; } } if ( is_singular() ) { $post = isset( $wp_query->post ) ? $wp_query->post : null; // Only set X-Pingback for single posts that allow pings. if ( $post && pings_open( $post ) ) { $headers[‘X-Pingback’] = get_bloginfo( ‘pingback_url’, ‘display’ ); } } /** * Filters the HTTP headers before they’re sent to the browser. * * @since 2.8.0 * * @param string[] $headers Associative array of headers to be sent. * @param WP $wp Current WordPress environment instance. */ $headers = apply_filters( ‘wp_headers’, $headers, $this ); if ( ! empty( $status ) ) { status_header( $status ); } // If Last-Modified is set to false, it should not be sent (no-cache situation). if ( isset( $headers[‘Last-Modified’] ) && false === $headers[‘Last-Modified’] ) { unset( $headers[‘Last-Modified’] ); if ( ! headers_sent() ) { header_remove( ‘Last-Modified’ ); } } if ( ! headers_sent() ) { foreach ( (array) $headers as $name => $field_value ) { header( “{$name}: {$field_value}” ); } } if ( $exit_required ) { exit; } /** * Fires once the requested HTTP headers for caching, content type, etc. have been sent. * * @since 2.1.0 * * @param WP $wp Current WordPress environment instance (passed by reference). */ do_action_ref_array( ‘send_headers’, array( &$this ) ); } /** * Sets the query string property based off of the query variable property. * * The {@see ‘query_string’} filter is deprecated, but still works. Plugins should * use the {@see ‘request’} filter instead. * * @since 2.0.0 */ public function build_query_string() { $this->query_string = ”; foreach ( (array) array_keys( $this->query_vars ) as $wpvar ) { if ( ” !== $this->query_vars[ $wpvar ] ) { $this->query_string .= ( strlen( $this->query_string ) < 1 ) ? ” : ‘&’; if ( ! is_scalar( $this->query_vars[ $wpvar ] ) ) { // Discard non-scalars. continue; } $this->query_string .= $wpvar . ‘=’ . rawurlencode( $this->query_vars[ $wpvar ] ); } } if ( has_filter( ‘query_string’ ) ) { // Don’t bother filtering and parsing if no plugins are hooked in. /** * Filters the query string before parsing. * * @since 1.5.0 * @deprecated 2.1.0 Use {@see ‘query_vars’} or {@see ‘request’} filters instead. * * @param string $query_string The query string to modify. */ $this->query_string = apply_filters_deprecated( ‘query_string’, array( $this->query_string ), ‘2.1.0’, ‘query_vars, request’ ); parse_str( $this->query_string, $this->query_vars ); } } /** * Set up the WordPress Globals. * * The query_vars property will be extracted to the GLOBALS. So care should * be taken when naming global variables that might interfere with the * WordPress environment. * * @since 2.0.0 * * @global WP_Query $wp_query WordPress Query object. * @global string $query_string Query string for the loop. * @global array $posts The found posts. * @global WP_Post|null $post The current post, if available. * @global string $request The SQL statement for the request. * @global int $more Only set, if single page or post. * @global int $single If single page or post. Only set, if single page or post. * @global WP_User $authordata Only set, if author archive. */ public function register_globals() { global $wp_query; // Extract updated query vars back into global namespace. foreach ( (array) $wp_query->query_vars as $key => $value ) { $GLOBALS[ $key ] = $value; } $GLOBALS[‘query_string’] = $this->query_string; $GLOBALS[‘posts’] = & $wp_query->posts; $GLOBALS[‘post’] = isset( $wp_query->post ) ? $wp_query->post : null; $GLOBALS[‘request’] = $wp_query->request; if ( $wp_query->is_single() || $wp_query->is_page() ) { $GLOBALS[‘more’] = 1; $GLOBALS[‘single’] = 1; } if ( $wp_query->is_author() ) { $GLOBALS[‘authordata’] = get_userdata( get_queried_object_id() ); } } /** * Set up the current user. * * @since 2.0.0 */ public function init() { wp_get_current_user(); } /** * Set up the Loop based on the query variables. * * @since 2.0.0 * * @global WP_Query $wp_the_query WordPress Query object. */ public function query_posts() { global $wp_the_query; $this->build_query_string(); $wp_the_query->query( $this->query_vars ); } /** * Set the Headers for 404, if nothing is found for requested URL. * * Issue a 404 if a request doesn’t match any posts and doesn’t match any object * (e.g. an existing-but-empty category, tag, author) and a 404 was not already issued, * and if the request was not a search or the homepage. * * Otherwise, issue a 200. * * This sets headers after posts have been queried. handle_404() really means “handle status”. * By inspecting the result of querying posts, seemingly successful requests can be switched to * a 404 so that canonical redirection logic can kick in. * * @since 2.0.0 * * @global WP_Query $wp_query WordPress Query object. */ public function handle_404() { global $wp_query; /** * Filters whether to short-circuit default header status handling. * * Returning a non-false value from the filter will short-circuit the handling * and return early. * * @since 4.5.0 * * @param bool $preempt Whether to short-circuit default header status handling. Default false. * @param WP_Query $wp_query WordPress Query object. */ if ( false !== apply_filters( ‘pre_handle_404’, false, $wp_query ) ) { return; } // If we’ve already issued a 404, bail. if ( is_404() ) { return; } $set_404 = true; // Never 404 for the admin, robots, or favicon. if ( is_admin() || is_robots() || is_favicon() ) { $set_404 = false; // If posts were found, check for paged content. } elseif ( $wp_query->posts ) { $content_found = true; if ( is_singular() ) { $post = isset( $wp_query->post ) ? $wp_query->post : null; $next = ”; // Check for paged content that exceeds the max number of pages. if ( $post && ! empty( $this->query_vars[‘page’] ) ) { // Check if content is actually intended to be paged. if ( str_contains( $post->post_content, $next ) ) { $page = trim( $this->query_vars[‘page’], ‘/’ ); $content_found = (int) $page <= ( substr_count( $post->post_content, $next ) + 1 ); } else { $content_found = false; } } } // The posts page does not support the pagination. if ( $wp_query->is_posts_page && ! empty( $this->query_vars[‘page’] ) ) { $content_found = false; } if ( $content_found ) { $set_404 = false; } // We will 404 for paged queries, as no posts were found. } elseif ( ! is_paged() ) { $author = get_query_var( ‘author’ ); // Don’t 404 for authors without posts as long as they matched an author on this site. if ( is_author() && is_numeric( $author ) && $author > 0 && is_user_member_of_blog( $author ) // Don’t 404 for these queries if they matched an object. || ( is_tag() || is_category() || is_tax() || is_post_type_archive() ) && get_queried_object() // Don’t 404 for these queries either. || is_home() || is_search() || is_feed() ) { $set_404 = false; } } if ( $set_404 ) { // Guess it’s time to 404. $wp_query->set_404(); status_header( 404 ); nocache_headers(); } else { status_header( 200 ); } } /** * Sets up all of the variables required by the WordPress environment. * * The action {@see ‘wp’} has one parameter that references the WP object. It * allows for accessing the properties and methods to further manipulate the * object. * * @since 2.0.0 * * @param string|array $query_args Passed to parse_request(). */ public function main( $query_args = ” ) { $this->init(); $parsed = $this->parse_request( $query_args ); if ( $parsed ) { $this->query_posts(); $this->handle_404(); $this->register_globals(); } $this->send_headers(); /** * Fires once the WordPress environment has been set up. * * @since 2.1.0 * * @param WP $wp Current WordPress environment instance (passed by reference). */ do_action_ref_array( ‘wp’, array( &$this ) ); } }

      Chi ha creato la discussione andryonline

      (@andryonline)

      Il supporto di Aruba ha risposto:

      Gentile cliente,

      per WordPress il problema dipende dal tema Hueman che ha come ultimo aggiornamento l’anno 2024.

      Tale problematica dipende da una incompatibilità delle versione mysql 8 con la parte di codice php.

      Stessa cosa è indicata per 

      CMS Simple Machines Forum

      Un backup non risolverebbe la problematica. Dovrà capire se il tema e gli altri componenti siano aggiornabili a versioni piu recenti.

      Resto a disposizione.

      Cordiali saluti

      Aruba.it

      Che fare? Potrei provare come suggerisce Massimo, che ringrazio… Ma resterebbe comunque il problema delle impostazioni del tema…
      Oppure un downgrade del database, ammesso e concesso sia fattibile.

      • thetechnocrate

        (@thetechnocrate)


        Ho appena installato su server windows 2019 server XAMPP versione 8.2.12, lanciato correttamente mysql e apache, creato il database ed eseguita l’installazione di WP ver 6.7.2 it. La pagina iniziale si apre regolarmente, chiaramente utilizzo il tema di base fornito alla prima istallazione, sono andato dunque a premere il link nel sotto menu “PlugIn” -> “Aggiungi un nuovo plugin“, ma non apriva nulla, sono pertanto andatoa cliccare il link superiore “Plugin” per la pagina che mostra i plugin installati di default (inattivi). Da lì ho premuto il tasto “Aggiungi un nuovo plugin” e finalmente ha aperto la pagina dove si effettua l’installazione dei plugin. Qui appaiono due messaggi identici uno a metà pagina ed un altro alla base che recitano:

        Si è verificato un errore inaspettato. C’è qualche cosa di sbagliato con WordPress.org o con la configurazione di questo server. Se continui ad avere problemi, chiedi aiuto sul forum di supporto.

        Riprova
        Tag più popolari

        Puoi anche sfogliare in base ai tag più popolari nella directory dei plugin:

        Si è verificato un errore inaspettato. C’è qualche cosa di sbagliato con WordPress.org o con la configurazione di questo server. Se continui ad avere problemi, chiedi aiuto sul forum di supporto.


        Questo è chiaramente accaduto al primissimo tentativo di installazione che non è stato eseguito.

        WordPress ha la possibilità di vedere la rete esterna tramite un proxy che non blocca wordpress.org

        Non ho altri errori visibili che possano aiutarmi
        Altri dati:
        Apache/2.4.58 (Win64)
        OpenSSL/3.1.3
        PHP/8.2.12
        Versione del client del database:
        libmysql – mysqlnd 8.2.12
        Estensione PHP: mysqli, curl, mbstring
        Versione PHP: 8.2.12
        Codifica caratteri del server: UTF-8 Unicode (utf8mb4)
        Il server è interno ad una rete locale, non accessibile dall’esterno.

        La pagina su cui ho bisogno di aiuto: [devi essere connesso per vedere il link]

      • dandomix

        (@dandomix)


        Ciao,
        Ho aggiornato un mio sito a WordPress 6.7.2 ma da un problema, i post mantengono salvate le categorie solo quando salvo due volte.
        Ho provato a disattivare quasi tutti i plugin e usare il tema Twenty Twenty-Three per capire ma il problema persiste.
        Consigli?

      Forum: Aspetto = Temi
      In risposta a: TEMPLATE BY ARTISTEER
      Chi ha creato la discussione comimage2020

      (@comimage2020)

      Ti ringrazio per la risposta, però ho esaminato a fondo la questione e non c’è soluzione, o meglio c’è. ma non soddisfacente. Allora il problema è che il tema realizzato con artisteer non è più compatibile con gli ultimi Wp in quanto quest’ultimi hanno bisogno di Php abbastanza aggiornati. Quindi si crea un circolo vizioso. Posso risolvere utilizzando vecchie versioni di WordPress e vecchie versioni di ph, ma poi può succedere che un plugin si aggiorni automaticamente e la nuova versione non è compatibile col vecchio Wp e blocca tutto. In sintesi le ho provate tutte, ma c’è poco da fare, Artisteer non si può più usare.

      Per chi fosse interessato, sto usando Nicepage dove stanno lavorando dei tecnici ex Artisteer. Il sistema è completamente diverso, ha anche molte cose inutili per chi aveva bisogno solo di un Theme-builder, non è regalato, però funziona.

      Chi ha creato la discussione gzaffiro

      (@gzaffiro)

      Vi aggiorno in quanto ho risolto seguendo la procedura indicata qui https://wordpress.org/documentation/article/updating-wordpress/ di reinstallazione manuale di wordpress.

      Prima di procedere alla reinstallazione ho acquistato un servizio di backup dal mio host provider (non si sa mai). Inoltre ho provato a sostituire il file  wp-includes/functions.php sia con la versione 6.6.2 che era quella usata, che con la versione 6.7.2 ultima disponibile: queste azioni non hanno avuto successo e cercando di accedere alla pagina admin sono stati indicati nuove tipologie di fatal error.

      Ho quindi deciso di reinstallare il wordpress manualmente. Ho quindi prima disattivato i plugin usando PHPMyAdmin (si trovano online indicazioni su come fare), poi ho cercato di caricare i file di WP 6.7.2 tramite il file manager messo a disposizione dell’host ma la procedura dava errori. Ho quindi scaricato un client FTP (FileZilla) e caricato i file. Così facendo l’errore è stato risolto e ho potuto riaccedere alla pagina admin. Lì ho terminato l’installazione (dava qualche indicazione di errore non bloccante) e riattivato i plugin. Il sito non risulta danneggiato.

      Chi ha creato la discussione gzaffiro

      (@gzaffiro)

      Alessandro, grazie per il suggerimento. Sto cominciando a orientarmi un po’ è ho visto che l’ultima versione da me installata, aprendo il file version.php che trovo navigando con il file manager dell’host che utilizzo, è la 6.6.2. Quindi non sono ancora passato alla 6.7.x. Ho provato a sostituire il file functions.php con quello della 6.6.2 ma l’errore da me descritto permane. Presumo quindi di dover seguire la procedura di sostituzione di tutti i file del wordpress con quelli della versione installata la 6.6.2 e non con l’ultima disponibile che mi risulta essere la 6.7.2, corretto? Se avete altri suggerimenti sono benvenuti.

      • Questa risposta è stata modificata 1 anno, 1 mese fa da gzaffiro.
      • Buongiorno,
        presento il mio problema: nonostante stia usando l’ultima versione di wordpress e l’ultima versione php quando provo ad aggiornare i plugin il sito mi da questo errore ‘Momentaneamente non disponibile per manutenzione. Riprova fra un minuto.’
        Sto usando un tema e plugin ‘noti’.
        Dopo circa 10 minuti il sito torna funzionante ma di fatto non riesco più ad aggiornare i plugin.
        Ho svuotato la cache e provato anche ad aggiornare un plugin per volta ma succede sempre.
        Grazie a chi riesce a darmi qualche suggerimento.

      La funzione ‘ wp_get_wp_version(); ‘ non è presente nel tuo file functions.php (Call to undefined function). E’ una funzione introdotta di recente ma in che versione?

      Questo è un caso in cui ChatGPT può essere utile, infatti risponde: ” The wp_get_wp_version() function was introduced in WordPress version 6.7.0.

      This function returns the current WordPress version, providing an unmodified value of the $wp_version global variable.
      It was added to the wp-includes/functions.php file to ensure that plugins can retrieve the unaltered WordPress version,
      especially in cases where plugins might modify the global $wp_version variable for security purposes.
      This practice can cause errors in WordPress, so the ability to get an unmodified version is needed. “

      La cosa più probabile, penso, è che il tuo ultimo aggiornamento a WP sia stato fatto male, uno o più files sono rovinati.

      Se il file rovinato è uno solo credo che puoi provare a sostituire la tua copia di wp-includes/functions.php con una nuova, che recuperi facendo il download di WP e scompattandolo. La sostituzione si fa facilmente via ftp.

      Se non funziona allora i files rovinati possono essere parecchi e c’è molto da lavorare sul tuo sito per rimetterlo a posto.

      Bye!

    Stai vedendo 15 risultati - da 31 a 45 (di 1.668 totali)