Копирование изображений из одной папки в другую папку в проблеме WordPress

#php #wordpress

#php #wordpress

Вопрос:

Я хочу переместить папку с файлами и изображениями из папки плагина в папку темы. Я успешно перемещаю свои файлы в другую папку и также успешно создаю папку с изображениями, но когда я перемещаю свои изображения в папку темы «изображения», это не работает, я понятия не имею, почему это не работает.

Я также даю разрешение на все файлы = 777

Вот мой код:

 //========= Move files from Plugin to Current Theme
$foo_theme_directory = get_option('foo_theme_directory');
if($foo_theme_directory == 'on'){
    $foo_theme_dir = get_template_directory()."/foo";
    define('FOO_THEME_DIR', $foo_theme_dir);

    if(file_exists(FOO_THEME_DIR)){

        $foo_plugin_dir = plugin_dir_path( __FILE__ );

        $foo_image_dir = get_template_directory()."/foo/images";
        define('FOO_IMAGE_DIR', $foo_image_dir);
        if(!file_exists(FOO_IMAGE_DIR)){
            mkdir(FOO_THEME_DIR.'/images', 0777, true);
        }

    // Move Images to images folder
        copy($foo_plugin_dir.'foo/images/foo_icon_arrow.png', $foo_images_dir.'/foo_icon_arrow.png');
        copy($foo_plugin_dir.'foo/images/foo_article_icon_img.png', 

$foo_images_dir.'/foo_article_icon_img.png');
        copy($foo_plugin_dir.'foo/images/foo_bg_reply.png', $foo_images_dir.'/foo_bg_reply.png');
        copy($foo_plugin_dir.'foo/images/foo_breadcrum_sep.png', $foo_images_dir.'/foo_breadcrum_sep.png');
        copy($foo_plugin_dir.'foo/images/foo_large.png', $foo_images_dir.'/foo_large.png');
        copy($foo_plugin_dir.'foo/images/foo_med.png', $foo_images_dir.'/foo_med.png');
        copy($foo_plugin_dir.'foo/images/foo_search_btn.png', $foo_images_dir.'/foo_search_btn.png');

    // Move files to foo folder
        copy($foo_plugin_dir.'foo/foo_artilces_list.php', FOO_THEME_DIR.'/foo_artilces_list.php');
        copy($foo_plugin_dir.'foo/foo_style.css', FOO_THEME_DIR.'/foo_style.css');
        copy($foo_plugin_dir.'foo/single-foo_articles.php', FOO_THEME_DIR.'/single-

foo_articles.php');
    }
    else{
        //echo "No";
    }
}
 

Я не получаю сообщение об ошибке, почему изображения не копируются. Есть идеи

Ответ №1:

хорошо, я получил решение

Я использую этот код:

 //  Move Images from plugin folder to theme/foo/images folder
$foo_images = opendir($foo_plugin_img_dir);
while($foo_read_image = readdir($foo_images)){
     if($foo_read_image != '.' amp;amp; $foo_read_image != '..'){
        if (!file_exists($foo_read_image)){
           copy($foo_plugin_img_dir.$foo_read_image, FOO_IMAGE_THEME_DIR.'/'.$foo_read_image);
        }
     }
}
 

Вместо этого кода:

 // Move Images to images folder
        copy($foo_plugin_dir.'foo/images/foo_icon_arrow.png', $foo_images_dir.'/foo_icon_arrow.png');
        copy($foo_plugin_dir.'foo/images/foo_article_icon_img.png', 

$foo_images_dir.'/foo_article_icon_img.png');
        copy($foo_plugin_dir.'foo/images/foo_bg_reply.png', $foo_images_dir.'/foo_bg_reply.png');
        copy($foo_plugin_dir.'foo/images/foo_breadcrum_sep.png', $foo_images_dir.'/foo_breadcrum_sep.png');
        copy($foo_plugin_dir.'foo/images/foo_large.png', $foo_images_dir.'/foo_large.png');
        copy($foo_plugin_dir.'foo/images/foo_med.png', $foo_images_dir.'/foo_med.png');
        copy($foo_plugin_dir.'foo/images/foo_search_btn.png', $foo_images_dir.'/foo_search_btn.png');
 

Это решение работает для меня отлично