コード例 #1
0
ファイル: type.attachment.php プロジェクト: pcuervo/odc
 function axiom_attachment_view_compat($form_fields, $post = null)
 {
     static $terms = null, $id = 0;
     if (isset($form_fields['media_folder'])) {
         $field = $form_fields['media_folder'];
         if (!$terms) {
             $terms = axiom_get_terms_by_taxonomy('media_folder', array('hide_empty' => false));
             $terms = axiom_get_terms_hierarchical_list($terms, array('prefix_key' => 'media_folder.', 'prefix_level' => '-'));
         }
         $values = array_map('trim', explode(',', $field['value']));
         $readonly = '';
         //! $user_can_edit && ! empty( $field['taxonomy'] ) ? " readonly='readonly' " : '';
         $required = !empty($field['required']) ? '<span class="alignright"><abbr title="required" class="required">*</abbr></span>' : '';
         $aria_required = !empty($field['required']) ? " aria-required='true' " : '';
         $html = '';
         if (count($terms) > 0) {
             foreach ($terms as $slug => $name) {
                 $id++;
                 $slug = axiom_substr($slug, 13);
                 $html .= ($html ? '<br />' : '') . '<input type="checkbox" class="text" id="media_folder_' . esc_attr($id) . '" name="media_folder_' . esc_attr($slug) . '" value="' . esc_attr($slug) . '"' . (in_array($slug, $values) ? ' checked="checked"' : '') . ' ' . $readonly . ' ' . $aria_required . ' /><label for="media_folder_' . esc_attr($id) . '"> ' . $name . '</label>';
             }
         }
         $form_fields['media_folder']['input'] = 'media_folder_input';
         $form_fields['media_folder']['media_folder_input'] = '<div class="media_folder_selector">' . $html . '</div>';
     }
     return $form_fields;
 }
コード例 #2
0
ファイル: core.wp.php プロジェクト: pcuervo/odc
 function axiom_get_terms_hierarchical_list($terms, $opt = array())
 {
     $opt = array_merge(array('prefix_key' => '', 'prefix_level' => '&nbsp;', 'parent' => 0, 'level' => ''), $opt);
     $rez = array();
     if (count($terms) > 0) {
         foreach ($terms as $term) {
             if ((is_object($term) ? $term->parent : $term['parent']) != $opt['parent']) {
                 continue;
             }
             $slug = is_object($term) ? $term->slug : $term['slug'];
             $name = is_object($term) ? $term->name : $term['name'];
             $count = is_object($term) ? $term->count : $term['count'];
             $rez[$opt['prefix_key'] . $slug] = ($opt['level'] ? $opt['level'] . ' ' : '') . $name . ($count ? ' (' . $count . ')' : '');
             $rez = array_merge($rez, axiom_get_terms_hierarchical_list($terms, array('prefix_key' => $opt['prefix_key'], 'prefix_level' => $opt['prefix_level'], 'parent' => is_object($term) ? $term->term_id : $term['term_id'], 'level' => $opt['level'] . $opt['prefix_level'])));
         }
     }
     return $rez;
 }