| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- <?php
- function get_ids_from_gallery_block($blocks){
- $parsed_blocks = array();
- foreach ($blocks as $block) {
- if($block[blockName] === "core/gallery") {
- if(count($block[attrs][ids]) < 1) {
- $gallery_imgs_ids = [];
- foreach($block[innerBlocks] as $inner) {
- $inner_id = $inner[attrs][id];
- array_push($gallery_imgs_ids, $inner_id);
- }
- $block[attrs]['zzz'] = $gallery_imgs_ids;
- $block[attrs][ids] = $gallery_imgs_ids;
- }
- array_push($parsed_blocks, $block[attrs]);
- } elseif ($block[blockName] === "core/image") {
- $ids = [];
- $galleryFormat = [];
- array_push($ids, $block[attrs][id]);
- $galleryFormat[ids] = $ids;
- $galleryFormat[columns] = 1;
- $galleryFormat[linkTo] = 'none';
- array_push($parsed_blocks, $galleryFormat);
- }
- }
- return $parsed_blocks;
- }
- function get_images_from_content($content) {
- $parse_images = array();
-
- $dom = new DOMDocument();
- @ $dom->loadHTML($content);
- $images = $dom->getElementsByTagName('img');
-
- foreach ($images as $image) {
- if($image->getAttribute('data-id')) {
- $parse_images[$image->getAttribute('data-id')] = $image->getAttribute('src');
- } else {
- $class_pieces = explode("-", $image->getAttribute('class'));
- $parse_images[end($class_pieces)] = $image->getAttribute('src');
- }
- }
- return $parse_images;
- }
- ?>
|