blog/
Порядок файлов при загрузке в пост WordPress
Идут годы, а в WP всё так и не сделали нормальный инструмент для сортировки загруженных изображений в посте (конечно, он был ещё хуже 7 лет назад, и много чего изменилось в лучшую сторону, но тем не менее), а всё почему?
А потому, что они предполагают, что вы будете использовать средства самой ОС для этого. Хотя могли бы и в ВП сделать эту функцию, ёлки. А иначе, если вы ещё подгружаете потом что-то, придётся заново всё рассортировывать 🤬.
Короче говоря, смысл в том, что при загрузке он загружает сначала первую, потом вторую → и так далее. А потом первая становится последней. И это неудобно, особенно когда их много. Поэтому надо просто инвертировать порядок в самой ОС, и всё будет ок — оно присвоит правильные ID загружаемым вложениям.
И можно будет писать что-то вроде этого, и оно будет в нормальном порядке выводиться, как и было задумано. Этот код просто выводит все загрузки поста в виде галереи, например:
<?php if ($images = get_posts(array( 'order' => 'ASC', 'orderby' => 'menu_order', 'post_parent' => $post->ID, 'post_type' => 'attachment', 'numberposts' => - 1, 'post_mime_type' => 'image', ))) { $it = 0; foreach ($images as $image) { $it++; $attachmenturl = wp_get_attachment_image_src($image->ID, large); $attachmentfull = wp_get_attachment_image_src($image->ID, full); $attachmentimage = wp_get_attachment_image_src($image->ID, portfolio_small); $imageDescription = apply_filters('the_link', $image->post_content); $imageTitle = apply_filters('the_title', $image->post_title); echo '... тут вывод в том формате, который нужен в конкретном случае: например, <a href="..."><img sre="" ... /></a>... '; } } else { echo "No Image"; } ?>
UPD: И фиг там оно работает. 😡 Оно загружается как надо, но именно menu_order не отрабатывает, всё равно приходится рассортировывать вручную, чтобы он прописал им порядок. Я догадываюсь, в чём причина, но как решить это, пока не совсем ясно.
Из справки по wp_query ясно, что:
‘
menu_order
‘ – Order by Page Order. Used most often for pages (Order field in the Edit Page Attributes box) and for attachments (the integer fields in the Insert / Upload Media Gallery dialog), but could be used for any post type with distinct ‘menu_order
‘ values (they all default to 0).
Но что-то от этого совсем не легче.
Similar Posts:
- Урок — Буквы от больших к маленьким в InDesign
- Поменять картинки местами в InDesign
- Копировать и отразить направляющие в InDesign
- Script for choosing a winner on Instagram (JavaScript Instagram comment picker)
- Interview: KooZA/rch on architecture and presentation