Un utente ha chiesto informazioni su Advanced Custom Fields di Wordpress

Come aggiorno il campo della revisione del post?

Un utente ha chiesto 👇

Buon pomeriggio, ho davvero bisogno di aiuto, ho fatto una versione del post tramite il plugin ACF e se il post viene aggiornato tramite il pannello di amministrazione di wrodpress, allora tutto viene aggiornato (il valore viene aggiornato nel post e nella versione precedente del post va alla revisione del lavoro), per aggiornare la versione che uso action


add_action( 'save_post', 'update_after_acf_version', 10, 2 );
function update_after_acf_version( $post_ID, $post ) {
	if( 'draft' != $post->post_status ){
	
		if( get_field('field_5f048595367db') == 0){
			update_field('field_5f048595367db', 0.1);
		} else {
			// получаем текущее значение поля
			$count = get_field('field_5f048595367db');	

			// увеличиваем
			$count = $count + 0.1;

			// обновляем
			update_field('field_5f048595367db', $count);
		}
	
	}
}

Ma il problema è che devo aggiornare il post dall’inizio utilizzando l’API REST per questo inviando una richiesta POST http: // localhost / wp-json / wp / v2 / posts / id_post

con tali dati, la variabile js ver viene moltiplicata per 0,1 e sostituita da:


'title': 'title',
                'content': 'content',
                'status': 'publish',
                'fields': {
                    'version': ver,
                },

successiva, nel post principale, è la versione corretta (quella che mancava), ma nella revisione post, il campo della versione ha un valore falso

per mostrare la versione ACF della revisione del lavoro, ho filtrato:


add_filter( 'rest_prepare_revision', function( $response, $post ) {
	$data = $response->get_data();
	
    $data['acf'] = get_fields( $post->ID );
	
    return rest_ensure_response( $data );
}, 10, 2 );

dimmi come implementarlo?

Lanciatore di thread

(@ pecha2070)

6 mesi, 3 settimane fa

Ho trovato il motivo, il motivo era che era necessario spostare il campo “_acf_nonce” durante la richiesta POST, questo valore può essere integrato nel pannello di amministrazione di WordPress durante la creazione di un post nella console POST. Browser.

ma ecco il problema per qualche motivo, la prima versione della revisione del lavoro non matura: (la ignora

Lanciatore di thread

(@ pecha2070)

6 mesi, 3 settimane fa

ragazzi mi dicono come ottenere i valori?

_acf_nonce

questi campi vengono creati in wp-admin / post.php


<div id="acf-form-data" class="acf-hidden">
<input type="hidden" id="_acf_screen" name="_acf_screen" value="post"><input type="hidden" id="_acf_post_id" name="_acf_post_id" value="691">
<input type="hidden" id="_acf_validation" name="_acf_validation" value="1">
<input type="hidden" id="_acf_nonce" name="_acf_nonce" value="0135d4e496">
<input type="hidden" id="_acf_changed" name="_acf_changed" value="0">	
</div>

come posso ottenere lo stesso diritto davanti alla mia uniforme?

Questa risposta è stata modificata 6 mesi, 3 settimane fa da. Questa risposta è stata modificata 6 mesi, 3 settimane fa da. Questa risposta è stata modificata 6 mesi, 3 settimane fa da. Questa risposta è stata modificata 6 mesi, 3 settimane fa da. Questa risposta è stata modificata 6 mesi, 3 settimane fa da.

Was this helpful?

0 / 0

Lascia un commento 0

Your email address will not be published. Required fields are marked *