• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Помощь Вывод размера вложения

rev1

Постоялец
Регистрация
9 Янв 2014
Сообщения
50
Реакции
10
Здравствуйте.
Гуглил не нашел.
Как вывести размер вложенного файла в новости?
 
Насколько знаю у ВП нет своих функций для вывода объема файла. Зато у пхп есть.

А какой формат файлов? Как они вкладываются? есть специальное поле для указания ссылки или прям в контенте?

В принципе Для просмотра ссылки Войди или Зарегистрируйся, возможно поможет. Если нет, то нужны детали, о которых написал выше.
 
Не все так просто.
Тот скрипт - функция, ее инициализацию надо включить в шаблон. А в инициализацию вставить файл, для начала проверить если у поста вложенные файлы.
Я попробую уже завтра одолеть эту задачку.
 
В общем, вот решение, только что проверил - работает.

В functions.php
Код:
function getSize($file){
  $bytes = filesize($file);
  $s = array('b', 'Kb', 'Mb', 'Gb');
  $e = floor(log($bytes)/log(1024));
  return sprintf('%.2f '.$s[$e], ($bytes/pow(1024, floor($e))));
}

В файл шаблона записи (single.php или что там отвечает за вывод сингл поста, в котором надо выводить инфу о файле) в том месте где надо вывести инфу (после контента, до контента, как удобно.
Код:
<?php
     $attachments = get_posts( array(
       'post_type' => 'attachment',
       'posts_per_page' => -1,
       'post_parent' => $post->ID,
       'exclude'  => get_post_thumbnail_id()
     ) )
 
     if ( $attachments ) {
       echo '<ul>';
       foreach ( $attachments as $attachment ) {
         $url = wp_get_attachment_url( $attachment->ID );
         $title = get_the_title( $attachment->ID );
         $filesize = getSize( get_attached_file( $attachment->ID ) );
         echo '<li><a href="'.$url.'">' . $title . '</a> (' . $filesize . ')</li>';
       }
       echo '</ul>';
     }
?>
Соответственно скрипт проверяет есть ли аттачменты, если есть и не один - их выводит в цикле, так же выводит и инфу об их размере.
На выходе - список, далее его можно уже стилизовать как угодно. В принципе если такая структура не подходит, то можно отредактировать html теги в скрипте - ul, li, a
Скрипт из фанкшона можно вставить и в сам шаблон, чтоб туда сюда между файлами не скакать, если конечно функция будет использоваться только на этой странице.
 
Назад
Сверху