Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  2 529
Hei folkens.


Jeg har et skjema der det man fyller inn skal opprettes i en CPT i Wordpress.
Alt fungerer bortsett fra Checkbox og true/false feltene i ACF.



I følge dokumentasjonen skal man da bruke navnet på feltet til å oppdatere dette. F.eks

Kode

field_630c9cc60008a
Jeg har prøvd dette:

Kode

if(isset($_POST['sToOrder'])) {
        if(in_array('external', $_POST['sToOrder'])) {
            update_field('field_630c9c8100089', 'External', $postID);
        }
        if(in_array('graphical', $_POST['sToOrder'])) {
            update_field('field_630c9c8100089', 'Graphical', $postID);
        }
        if(in_array('Web', $_POST['sToOrder'])) {
            update_field('field_630c9c8100089', 'Web', $postID);
        }
        if(in_array('tracking', $_POST['sToOrder'])) {
            update_field('field_630c9c8100089', 'Tracking', $postID);
        }
        if(in_array('SEO', $_POST['sToOrder'])) {
            update_field('field_630c9c8100089', 'SEO', $postID);
        }
    }
Problemet her er at hvis jeg f.eks huker av External, Web og Tracking i skjema, så vil feltet i back-end kun huke av Tracking. Altså alltid det siste alternativet som er huket av.
Jeg finner ingen dokumentasjon for ACF på akkurat dette, så her er jeg litt usikker på hvordan dette skal fungere.



True/False felter i ACF.
Her har jeg prøvd mange ting, men i følge dokumentasjon og som fungerer på alt annet er at jeg bruker navnet på feltet for å vise til hvilket felt som skal oppdateres.
Her er for eksempel koden til True/False feltet i back-end i Wordpress:

Kode

<input type="checkbox" id="acf-field_630c9cc60008a-field_630c9fcb225c0" name="acf[field_630c9cc60008a][field_630c9fcb225c0]" value="1" class="" autocomplete="off">
Her har vi 2 forskjellige navn. field_630c9cc60008a og field_630c9fcb225c0. Har prøvd på begge, men ingen gir noen resultater.
Dette er det jeg har prøvd.

Kode

update_field('field_630c9cc60008a', 1, $postID);
update_field('field_630c9cc60008a', "1", $postID);
update_field('field_630c9cc60008a', true, $postID);
Ingen av disse fungerte. I følge noen forum så skulle dette fungere:

Kode

update_field('field_630c9cc60008a', 1, $postID);
Men det gjør det ikke.
Jeg har prøvd alle navnene jeg finner under feltet, men kan ikke se at noen av de fungerer.

Noen som har erfaring med ACF her til å kunne gi en pekepinn på hva det er som er feil her?
Nå kan jeg ikke ACF så veldig godt, men i eksemplene deres ser det ut som du må bruke et array for checkboxer og selects:

Kode

// Save a checkbox or select value.
$field_key = "field_1234567";
$value = array("red", "blue", "yellow");
update_field( $field_key, $value, $post_id );
https://www.advancedcustomfields.com.../update_field/
Sitat av Yochi Vis innlegg
Nå kan jeg ikke ACF så veldig godt, men i eksemplene deres ser det ut som du må bruke et array for checkboxer og selects:

Kode

// Save a checkbox or select value.
$field_key = "field_1234567";
$value = array("red", "blue", "yellow");
update_field( $field_key, $value, $post_id );
https://www.advancedcustomfields.com.../update_field/
Vis hele sitatet...
Ok.
Jeg skal teste dette og håpe at det går. Takk, Yochi!

Sitat av Yochi Vis innlegg
Nå kan jeg ikke ACF så veldig godt, men i eksemplene deres ser det ut som du må bruke et array for checkboxer og selects:

Kode

// Save a checkbox or select value.
$field_key = "field_1234567";
$value = array("red", "blue", "yellow");
update_field( $field_key, $value, $post_id );
https://www.advancedcustomfields.com.../update_field/
Vis hele sitatet...
Fungerte utmerket.
Da mangler jeg bare å få fiksa True/False feltene.
Sist endret av Nilseputa; 30. september 2022 kl. 13:58. Grunn: Automatisk sammenslåing med etterfølgende innlegg.