xlthlx

I am not an early bird or a night owl. I am some form of permanently exhausted pigeon


Salvare automaticamente il riassunto dell’articolo in WordPress


10 Maggio 2016

Se per qualche motivo doveste aver bisogno di creare automaticamente il riassunto dell’articolo che state scrivendo, salvandolo nel database, non soltanto facendolo generare al volo da WordPress, basta usare il filtro wp_insert_post_data. Nell’esempio che segue, ogni volta che salvate il vostro articolo viene creato o aggiornato il riassunto in base al contenuto, lungo 50 parole, e in fondo al riassunto vengono aggiunti tre puntini.

function my_excerpt_save($data, $postarr) {
    $data['post_excerpt'] = wp_trim_words($postarr['post_content'], 50, '...');
    return $data;
}

add_filter('wp_insert_post_data', 'my_excerpt_save', '99', 2);

Attenzione pero’ che se modificate il riassunto nell’apposito campo sotto l’editor principale, appena salverete di nuovo l’articolo quelle modifiche verranno sovrascritte.

Se quindi volete successivamente modificare il contenuto del riassunto, basta aggiungere una condizione:

function my_excerpt_save($data, $postarr) {
    if (strlen($data['post_excerpt']) === 0) {
       $data['post_excerpt'] = wp_trim_words($postarr['post_content'], 50, '...');
    }
    return $data;
}

add_filter('wp_insert_post_data', 'my_excerpt_save', '99', 2);

In questo modo il riassunto viene creato solo se non è stato creato prima.

Automatically save the article summary in WordPress


10 May 2016

If for some reason you need to automatically create the summary of the article you are writing, saving it in the database, not only generating it on the fly from WordPress, just use the wp_insert_post_data filter. In the example below, each time you save your article, the summary is created or updated based on the content, 50 words long, and three dots are added to the bottom of the summary.

function my_excerpt_save ($ data, $ postarr) {
    $ data [‘post_excerpt’] = wp_trim_words ($ postarr [‘post_content’], 50, ‘…’);
    return $ data;
}

add_filter (‘wp_insert_post_data’, ‘my_excerpt_save’, ’99’, 2);

Beware, however, that if you change the summary in the appropriate field under the main editor, as soon as you save the article again, those changes will be overwritten.

So if you want to change the content of the summary afterwards, just add a condition:

function my_excerpt_save ($ data, $ postarr) {
    if (strlen ($ data [‘post_excerpt’]) === 0) {
       $ data [‘post_excerpt’] = wp_trim_words ($ postarr [‘post_content’], 50, ‘…’);
    }
    return $ data;
}

add_filter (‘wp_insert_post_data’, ‘my_excerpt_save’, ’99’, 2);

In this way the summary is created only if it has not been created before.

Commenta

Utilizzando questo blog, accetti l'utilizzo dei cookie. Maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi