Home › Forums › General Issues › Order of fields in ACF get_fields(); › Reply To: Order of fields in ACF get_fields();
Hi vandelay,
the problem you describe is excactly what I stumbled on as well. While looking for a solution I came across your post.
I tried to adapt your code from above, but I think I don´t get it.
Here is code I am using right now, where the sorting order of the field is still wrong:
$lifestyle_data_fields = get_fields($post->ID);
// Here I need to get the fields and order them like they are ordered in the WP-Backend for a lifestyle_data post (or like they are ordered in the field-group, which is the same)
foreach ($lifestyle_data_fields as $name => $values) {
if ($values) {
foreach ($values as $value) {
...
Now I tried to adapt your code to match mine:
$lifestyle_data_fields = get_fields($post->ID);
function array_orderby()
{
$args = func_get_args();
$data = array_shift($args);
foreach ($args as $n => $field) {
if (is_string($field)) {
$tmp = array();
foreach ($data as $key => $row)
$tmp[$key] = $row[$field];
$args[$n] = $tmp;
}
}
$args[] = &$data;
call_user_func_array('array_multisort', $args);
return array_pop($args);
}
$lifestyle_data_fields = array_orderby( $lifestyle_data_fields, 'menu_order', SORT_ASC);
foreach ($lifestyle_data_fields as $name => $values) {
if ($values) {
foreach ($values as $value) {
...
But I get an error message “Warning: Illegal string offset ‘menu_order’ ” and the sorting order is not changed.
Can you or somebody else help me to get this sorted?
Thanks in advance for any input,
Hendrik
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users
Helping others is a great way to earn karma, gain badges and help ACF development!
We use cookies to offer you a better browsing experience, analyze site traffic and personalize content. Read about how we use cookies and how you can control them in our Privacy Policy. If you continue to use this site, you consent to our use of cookies.