Visualizzazione risultati 1 fino 3 di 3

Discussione: WordPress: error 500 causato da get_the_excerpt()

  1. #1
    Guest

    Question [Risolto] WordPress: error 500 causato da loop get_the_excerpt / the_content

    Buongiorno, sono uno sviluppatore e ho riscontrato uno strano problema durante la modifica di un tema.

    Inserendo il codice seguente in functions.php, il sito va in error 500:

    Codice PHP:
    add_filter( 'the_content', 'trimmed_post_content' );

    function
    trimmed_post_content( $content ) {
    return
    '<p>' . get_the_excerpt() . '</p><p class="uk-text-right uk-margin-bottom-remove">' . beans_post_more_link() . '</p>';
    }
    Se all'interno della funzione aggiungo all'inizio

    Codice PHP:
    remove_filter('the_content', 'trimmed_post_content');
    il problema non si pone. Facendo ulteriore debug ho notato anche che succede solo se ci sono post che non hanno il riassunto.

    Sembra quindi che ci sia qualcosa che aggiunge un add_filter( 'get_the_excerpt', 'funzione' ); e poi all'interno della 'funzione' viene richiamato un the_content(), generando un loop in wordpress e quindi l'errore.

    Solo che al momento non ho trovato riscontro in nessuno dei plugin che sto usando sul sito (tra l'altro via ftp ci vuole molto tempo aprendo un file alla volta) e mi chiedevo se il codice errato può essere stato inserito per sbaglio nei plugin aggiuntivi che carica Altervista. Il problema si è presentato improvvisamente circa una settimana fa senza che modificassi nulla al sito, prima funzionava correttamente get_the_excerpt() senza workaround.

    Qualcuno mi sa illuminare? Grazie
    Ultima modifica di chiavepsicologica : 25-11-2015 alle ore 12.00.25

  2. #2
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,745

    Predefinito

    Non è un problema di AlterVista, su WordPress non puoi chiamare get_the_excerpt dentro al filtro per the_content: questa applicherà a sua volta il filtro get_the_excerpt, per cui è registrata la funzione wp_trim_excerpt, che a sua volta applica nuovamente i filtri the_content.

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da karl94 Visualizza messaggio
    Non è un problema di AlterVista, su WordPress non puoi chiamare get_the_excerpt dentro al filtro per the_content: questa applicherà a sua volta il filtro get_the_excerpt, per cui è registrata la funzione wp_trim_excerpt, che a sua volta applica nuovamente i filtri the_content.
    Grazie 1000, non avevo notato che ci fosse il filtro wp_trim_excerpt.
    Questo spiega perché succede quando il riassunto è assente, ma non capisco però perché fino a qualche giorno fa quel codice funzionasse. Non credo di aver aperto casualmente soltanto pagine con articoli che avevano l'excerpt, ma può darsi ;)
    Ultima modifica di chiavepsicologica : 25-11-2015 alle ore 12.03.28

Tags for this Thread

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •