Organiza campos personalizados com arrastar e soltar?

3

Eu estou fazendo tema para hotel e fiz metabox personalizado com lista de vários campos personalizados que eu precisaria em posts.

O que eu fiz é fazer uma lista de campos como

  • reserva
  • wifienabled
  • café
  • pool
  • spa

e assim por diante ...

O problema é que atualmente eu posso mostrar esses campos personalizados no frontend site apenas por ordem como eu os adicionei na matriz, se eu mudar de lugar na minha lista de campos personalizados vai mudar de lugar na interface do site.

É possível que os campos personalizados tenham um pedido específico? Algum tipo de arrastar e soltar para reorganizar esses campos e alterar a ordem de exibição no frontend?

    
por Aleksandar Đorđević 05.02.2013 / 00:21

1 resposta

2

Neste exemplo de campos personalizados que podem ser repetidos , podemos ver que a seguinte jQuery é necessária:

$('#repeatable-fieldset-one tbody').sortable({
    opacity: 0.6,
    revert: true,
    cursor: 'move',
    handle: '.sort'
});

E o HTML que ele controla é (simplificado):

<table id="repeatable-fieldset-one" width="100%">
<thead>
    <tr>
        <th width="2%"></th>
        <th width="30%">Name</th>
        <th width="60%">URL</th>
        <th width="2%"></th>
    </tr>
</thead>
<tbody>
<?php
if ( $repeatable_fields ) :
    foreach ( $repeatable_fields as $field ) {
    ?>
        <tr>
            <td><a class="button remove-row" href="#">-</a></td>
            <td>NAME FIELD</td>
            <td>URL FIELD</td>
            <td><a class="sort">|||</a></td>
        </tr>
    <?php
    }
endif;
    
por brasofilo 06.02.2013 / 19:45