WordPressİ图像上传和删除错误

时间:2015-09-26 作者:M.UNLU

当我在管理面板中为代码列表时,我收到了这个错误,beneathi将发送一个错误截图enter image description here我需要做的删除操作除了清单,我在等待你的帮助

function aksesuar_resim_deletes()

{

    $directory = get_home_path(). \'/wp-content/aksesuar/\';
    $files = glob($directory .\'*\');

    if ( ! isset( $_REQUEST[\'settings-updated\'] ) ) $_REQUEST[\'settings-updated\'] = false;


    ?>
    <div class="wrap">
        <?php screen_icon(); echo "<h2>". __( \'Resim Silme Servisi\', \'aksesuar_resim_deletes\' ) . "</h2>"; ?>
        <?php if ( false !== $_REQUEST[\'settings-updated\'] ) : ?>
            <p><strong><?php _e( \'Options saved\', \'aksesuar_resim_deletes\' ); ?></strong></p>
        <?php endif; ?>
        <form method="post" action="<?php $_SERVER[\'PHP_SELF\']; ?>" enctype="multipart/form-data">
            <?php settings_fields( \'aksesuar_resim_uploads\' ); ?>
            <?php $options = get_option( \'aksesuar_resim_uploads\' ); ?>
            <div id="wp-theme-file-uploader">
                <p>
                    <label for="folders">Resim Klasörü Seç:</label>
                    <select name="folder">
                        <?php foreach($files as $file): ?>
                            <?php if(is_dir($file)): ?>
                                <option value="<?php echo basename($file); ?>"><?php echo basename($file); ?></option>
                            <?php endif; ?>
                        <?php endforeach; ?>
                    </select>
                </p>
                <input class="button-primary" type="submit" name="submit" value="Resimleri getir">
            </div>
        </form>
    </div>

    <?php
    $imageFiles = array();
    $extensions = array(\'.JPG\',\'.PNG\',\'.JPEG\');
    $dir =home_url().\'/wp-content/aksesuar/\'.$_POST[\'folder\'];
    $openDir = opendir($dir);

    while ($imgFile = readdir($openDir))
    {
        if ($imgFile <> \'.\' and $imgFile <> \'..\')
        {
            $extension = strtoupper(substr($imgFile, strrpos($imgFile, \'.\')));
            if (in_array($extension, $extensions))
            {
                $imageFiles[] = $imgFile;
            }
        }
    }

    closedir($openDir);
    echo \'<ul>\';
    foreach ($imageFiles as $k => $v)
    {

        echo \'<li style="float: left;padding-right: 10px;"><img src="\'.$dir.\'/\'.$v.\'" width="238" height="238" alt=""/></li>\';

    }
    echo \'</ul>\';
}

1 个回复
SO网友:ndlakhs

opendir 操作文件系统上的目录,而不是HTTP URI。

虽然一些HTTP URI返回目录列表(您使用的那个没有,这是404错误),但这些列表是由Web服务器生成的HTML文档,不是实际的目录。

所以请更改$directory 变量

例如:

中的当前值$directory = "http:/localhost/WP/wp-content";

需要正确,如:$directory =\'<wwwroot>/WP/wp-content\';

NOTE: [opendir()][1] 用于打开本地目录,因为PHP 5.0.0位于ftp目录上。

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请