Расширенные настраиваемые поля WordPress: извлекайте вложения только из настраиваемого поля, а не всего сообщения

Я использую 2 настраиваемых поля... left_column и right_column, которые являются WYSIWYG... поэтому могу добавлять изображения... Я хочу проверить, что "ЕСЛИ есть изображения, затем добавьте класс" image_box"...

Дело в том, что я могу идентифицировать изображения... но применение логики к обоим столбцам... вытягивает 2 набора изображений... независимо от того, в какой столбец (левый или правый) они были добавлены.

Мой код:

if(get_sub_field('extra_left_column')){
            if(get_sub_field('extra_left_column', $attachemnt['ID'])) {
                $extra_column_right.= '<div class="col6 right_column image_box">'.wpautop(apply_filters('the_content',get_sub_field('extra_right_column'))).'</div>';
            } else {
                $extra_column_right.= '<div class="col6 right_column">'.wpautop(apply_filters('the_content',get_sub_field('extra_right_column'))).'</div>';
            }
        }

        if(get_sub_field('extra_right_column')){

            if(get_sub_field('extra_right_column', $attachemnt['ID'])) {
                $extra_column_right.= '<div class="col6 margin_left right_column image_box">'.wpautop(apply_filters('the_content',get_sub_field('extra_right_column'))).'</div>';
            } else {
                $extra_column_right.= '<div class="col6 margin_left right_column">'.wpautop(apply_filters('the_content',get_sub_field('extra_right_column'))).'</div>';
            }
        }

Я думал, что мой код будет «конкретным для столбца», но это не так… если я добавлю изображения только в поля «Правый столбец» в сообщении… он также перетащит те же изображения в «левый столбец» в прямом эфире. сайт... так что у меня есть дубликаты... нехорошо.


person user2736203    schedule 03.12.2015    source источник


Ответы (1)


Прежде всего, выгрузите значения обоих подполей, чтобы увидеть, какие данные возвращаются. Если это просто пустое поле, вы можете проверить !empty() или !== ''.

Если вы используете версию 3.3.4 или более позднюю, вы также можете использовать функцию под названием has_sub_field, чтобы проверить, установлено ли поле.

person omer Farooq    schedule 03.12.2015