Poging 2.. excuses.
Ik probeer hier een x aantal images te saven naar Custom Fields. De rest van de input doet het (wat text inputs) maar de image niet.. of nouja half..
Ik ben hier al een tijdje mee bezig maar kom er gewoon echt niet uit. Heb wel een patroon kunnen ontdekken in de rare 'bugg' (?)
Eerste save: Plaatjes worden gesaved en attachment ID word geshowd in de front end. Bijvoorbeeld "807"
Tweede save: Image ID en/of link verdwijnen uit de backend, aan de voorkant is inmiddels een plaatje te zien (rara... hoe kan dat)..
Derde save: Alles van customfield Images is weg?! Dus de front end laat alleen nog maar de rest zien en niks meer van image..
Dit is de code voor 1 van de custom fields tabel.
(ik heb 3 tabellen. 1 is de standaard tabel die word geshowed als je boven in op "Add New" klikt, de 2e kun je editen in de backend dus "add image" en tekst invullen e.d.
en de 3e laad ie in als je op add another klikt (krijg je nog een rij met custom fields(word ook gesaved))).
Hier is het stuk dat ik alles save.
Hier moet het plaatje in komen : http://i.imgur.com/1MmnxhY.png en dan moet hij op de backend en front end weer naar voren komen..
Dit krijg ik met print_r(plaatje) op de EERSTE save:
Ik hoop dat iemand die dit leest in één opslag ziet wat hier de fout is. Ik ben student 2e jaars Applicatie Ontwikkelaar en kom er op het moment even niet meer uit.
Bvd,
Erwin
Ik probeer hier een x aantal images te saven naar Custom Fields. De rest van de input doet het (wat text inputs) maar de image niet.. of nouja half..
Ik ben hier al een tijdje mee bezig maar kom er gewoon echt niet uit. Heb wel een patroon kunnen ontdekken in de rare 'bugg' (?)
Eerste save: Plaatjes worden gesaved en attachment ID word geshowd in de front end. Bijvoorbeeld "807"
Tweede save: Image ID en/of link verdwijnen uit de backend, aan de voorkant is inmiddels een plaatje te zien (rara... hoe kan dat)..
Derde save: Alles van customfield Images is weg?! Dus de front end laat alleen nog maar de rest zien en niks meer van image..
Dit is de code voor 1 van de custom fields tabel.
(ik heb 3 tabellen. 1 is de standaard tabel die word geshowed als je boven in op "Add New" klikt, de 2e kun je editen in de backend dus "add image" en tekst invullen e.d.
en de 3e laad ie in als je op add another klikt (krijg je nog een rij met custom fields(word ook gesaved))).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
| <!-- FRONT - EDITABLE -->
<tr>
<td><input type="text" class="widefat" name="date[]"
value="<?php if ($field['date'] != '') echo esc_attr($field['date']); ?>"/></td>
<td><input type="text" class="widefat" name="name[]"
value="<?php if ($field['name'] != '') echo esc_attr($field['name']); ?>"/></td>
<td><input type="text" class="widefat" name="text[]"
value="<?php if ($field['text'] != '') echo esc_attr($field['text']); ?>"/></td>
<td>
<?php
// $image = get_template_directory_uri().'/images/image.png';
$image = wp_get_attachment_image_src($field['image'], 'medium'); $image = $image[0];
echo $image;
?>
<input type="hidden" class="custom_upload_image" name="image[]"
value="<img src=' <?php echo $image ?> ' class='custom_preview_image' alt='' /><br />"/>
<input class="custom_upload_image_button button" type="button" value="Choose Image"/>
<small><a href="#" class="custom_clear_image_button">Remove Image</a></small>
</td>
<td><a class="button remove-row" href="#">Remove</a></td>
</tr> |
Hier is het stuk dat ik alles save.
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
| add_action('save_post', 'hhs_repeatable_meta_box_save'); function hhs_repeatable_meta_box_save($post_id) { if (!isset($_POST['hhs_repeatable_meta_box_nonce']) || !wp_verify_nonce($_POST['hhs_repeatable_meta_box_nonce'], 'hhs_repeatable_meta_box_nonce') ) return; if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; if (!current_user_can('edit_post', $post_id)) return; $old = get_post_meta($post_id, 'repeatable_fields'); $new = array(); $dates = $_POST['date']; $names = $_POST['name']; $texts = $_POST['text']; $images = $_POST['image']; $count = count($names); for ($i = 0; $i < $count; $i++) { if (!empty($names[$i])) : $new[$i]['name'] = $names[$i]; if (!empty($dates[$i])) { $new[$i]['date'] = $dates[$i]; }; if (!empty($texts[$i])) { $new[$i]['text'] = $texts[$i]; }; if (!empty($images[$i])) { $new[$i]['image'] = $images[$i]; }; endif; if (!empty($new) && $new != $old) update_post_meta($post_id, 'repeatable_fields', $new); elseif (empty($new) && $old) delete_post_meta($post_id, 'repeatable_fields', $old); } } |
Hier moet het plaatje in komen : http://i.imgur.com/1MmnxhY.png en dan moet hij op de backend en front end weer naar voren komen..
Dit krijg ik met print_r(plaatje) op de EERSTE save:
code:
1
| Array ( [name] => 3123 [date] => 12 [text] => 123 [image] => 807 ) |
Ik hoop dat iemand die dit leest in één opslag ziet wat hier de fout is. Ik ben student 2e jaars Applicatie Ontwikkelaar en kom er op het moment even niet meer uit.
Bvd,
Erwin