建站经验 experience
当前位置:首页 > 网站建设专题 > 建站经验
WordPress实现投稿功能
发布日期:2010-10-11 阅读次数:660 字体大小:

很多网站都想开放读者的投稿功能,接受读者的投稿,不仅可以丰富博客的内容,还可以增加与读者之间的沟通,可以说是一举多得的事情,何乐不为呢?WordPress本身并不提供投稿功能,但是WordPress拥有强大的扩展能力,我们可以自己来添加这个功能。

实现用户投稿,有两种方法,一种是开放后台的注册功能,普通用户注册进去默认为投稿者,登陆进去即可添加文章(默认为草稿);另一种方法是在前台提供投稿表单,用户填写相应的表格即可。前一种方法实现起来比较简单,基本不需要博主配置太多东西,只是有些博主可能会觉得别扭,不愿让他人看到自己的博客后台;而后一种方法对投稿者来说方便了很多,博主也不用担心自己博客的后台隐私,只是该方法实现起来比较麻烦,需要配置的东西很多。本文也只将介绍后一种方法,希望对你有所帮助。

一、添加投稿表单

1、首先在当前主题的目录下新建一个php文件,命名为tougao-page.php,然后将page.php中的所有代码复制到tougao-page.php中;

2、删除tougao-page.php开头的所有注释,即 /* 与 */ ,以及它们之间的所有内容;

3、将 <?php the_content(); ?> 改成以下代码:

<?php the_content(); ?>

<form method="post" action="<?php echo $_SERVER"REQUEST_URI"; ?>">
    <div style="text-align: left; padding-top: 10px;">
        <label>昵称:*</label>
    </div>
    <div>
        <input type="text" size="40" value="" name="tougao_authorname" />
    </div>

    <div style="text-align: left; padding-top: 10px;">
        <label>E-Mail:*</label>
    </div>
    <div>
        <input type="text" size="40" value="" name="tougao_authoremail" />
    </div>
                   
    <div style="text-align: left; padding-top: 10px;">
        <label>您的博客:</label>
    </div>
    <div>
        <input type="text" size="40" value="" name="tougao_authorblog" />
    </div>
                    
    <div style="text-align: left; padding-top: 10px;">
        <label>文章标题:*</label>
    </div>
    <div>
        <input type="text" size="40" value="" name="tougao_title" />
    </div>

    <div style="text-align: left; padding-top: 10px;">
        <label>分类:*</label>
    </div>
    <div style="text-align: left;">
        <?php wp_dropdown_categories('show_count=1&hierarchical=1'); ?>
    </div>
                   
    <div style="text-align: left; padding-top: 10px;">
        <label>文章内容:*</label>
    </div>
    <div>
        <textarea rows="15" cols="55" name="tougao_content"></textarea>
    </div>
                   
    <br clear="all">
    <div style="text-align: center; padding-top: 10px;">
        <input type="hidden" value="send" name="tougao_form" />
        <input type="submit" value="提交" />
        <input type="reset" value="重填" />
    </div>
</form>