使用高级自定义字段在file_download上请求密码

时间:2013-11-07 15:00:06

标签: php wordpress password-protection advanced-custom-fields

所以我想要的是在下载通过wordPress-plugin高级自定义字段动态上传的文件时请求密码。 我无法让它工作,这是我的代码:

HTML:

<div class="documentWrap">
                <?php while ( have_posts() ) : the_post(); ?>
                <?php get_template_part( 'content', 'page'); ?>
                <?php if(get_field('dokumentgrupp')): ?>
                <?php while(has_sub_field('dokumentgrupp')): ?>
                    <div class="docGroup clearfix">
                        <h2><?php the_sub_field('gruppnamn'); ?></h2>
                        <?php if(get_sub_field('filer')): ?>
                        <?php while(has_sub_field('filer')): ?>
                        <ul>
                            <li>
                                <h3><?php the_sub_field('filnamn'); ?></h3>
                                <a href="<?php the_sub_field('fil_url'); ?>">ladda ner</a>
                                <!div id="passWrap">
                                    <div id="passBox">  
                                    <?php // if( get_field('password') ): ?>
                                        <form method="post">
                                            <input name="pass" type="password" action="download_pw.php">
                                            <input type="submit" name="submit" value="ladda ner">

                                        </form>
                                    </div>

                                    <?php //endif; ?>
                                </div>
                            </li>
                        </ul>

                    <?php endwhile; ?>
                    <?php endif; ?>
                </div>
                <?php endwhile; ?>
                <?php endif; ?>
            </div>
        <?php endwhile; ?>
        </div>

download_pw.php:

<?php 
                                                $pw = md5($_POST['pass']);
                                                $valid_pw = md5(get_sub_field('password'););
                                                $file_url = get_sub_field("fil_url");
                                                if {$pw != $valid_pw) {
                                                echo 'Tyv&auml;rr har du inte tillg&aring;ng till denna fil';
                                                }else{
                                                    header('Location: $file_url');
                                                }
?>

1 个答案:

答案 0 :(得分:0)

如果您在前端使用此HTML,那么在显示该文件的页面/帖子上使用内置密码保护怎么样?

Wordpress Codex:Using Password Protection

如果这不是一个选项,尝试这样的事情怎么样:https://wordpress.stackexchange.com/questions/37144/how-to-protect-uploads-if-user-is-not-logged-in