自从用上了微博,就觉得Wordpress的文章发布功能好麻烦,为什么不能在首页发布文章呢?找来找去,找到了P2主题,可是个性化需要修改CSS,弄了一半因为工作太忙无法进行了。
 WordPress博客实现前台快捷发布文章的界面
能不能有一种简单的方法,可以直接在wordpress首页发布文章,免去繁琐的后台登陆呢。记得原来有一款quick-press插件可以在widget区域发布文章。于是参考了下,把有关代码扣了出来,并实现前台发文。添加代码的方式很简单[适用于所有wordpress主题],如下(需要添加的代码):
1、找到你所用主题的index.php文件,在代码最前面加上:
if( ‘POST’ == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['action'] ) && $_POST['action'] == ‘post’ ) {
if ( ! is_user_logged_in() )
auth_redirect();
if( !current_user_can( ‘publish_posts’ ) ) {
wp_redirect( get_bloginfo( ‘url’ ) . ‘/’ );
exit;
}
check_admin_referer( ‘new-post’ );
$user_id = $current_user->user_id;
$post_content = $_POST['posttext'];
$tags = $_POST['tags'];
$char_limit = 40;
$post_title = $_POST['title'];
$post_name = $_POST['name'];
$post_id = wp_insert_post( array(
‘post_author’ => $user_id,
‘post_title’ => $post_title,
‘post_content’ => $post_content,
‘tags_input’ => $tags,
‘post_status’ => ‘publish’
) );
wp_redirect( get_bloginfo( ‘url’ ) . ‘/’ );
exit;
}
2、 还是在你的index.php文件里面,在显示文章列表代码之前加上以下代码(比如我的文章列表是:
<?php
get_template_part( ‘loop’, ‘index’ );
?>
我就在这段代码之前加的):
<?php
/* 首页发文代码
*/
if( current_user_can( ‘publish_posts’ ) ) {
require_once dirname( __FILE__ ) . ‘/post-form.php’;
}
?>
3、在你所用主题文件夹根目录下新建post-form.php文件,其代码如下:
<?php
$user = get_userdata( $current_user->ID );
?>
<div id=”postbox” style=” padding: 15px; margin: 5px 0px; -moz-border-radius: 10px; -khtml-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px;” >
<form id=”new_post” name=”new_post” method=”post” action=”<?php bloginfo( ‘url’ ); ?>/”>
<input type=”hidden” name=”action” value=”post” />
<?php wp_nonce_field( ‘new-post’ ); ?>
<label for=”title”> 博文标题:</label>
<br />
<input type=”text” name=”title” id=”title” style=”width:60%; height: 25px; border: 1px solid #99afbc; margin: 5px 0 10px 0;” />
<br />
<label for=”posttext”>扯蛋的内容:</label>
<br />
<textarea name=”posttext” id=”posttext” rows=”3″ style=”width:95%; height: 80px; border: 1px solid #99afbc; margin: 5px 0 10px 0;” ></textarea>
<br />
<label for=”tags”>标签:</label>
<br />
<input type=”text” name=”tags” id=”tags” style=”width:60%; height: 25px; border: 1px solid #99afbc; margin: 5px 0 10px 0;” />
<br />
<input id=”submit” type=”submit” value=”Post it” style=”background-color: #DDD; border: 1px solid #333; color: #333; font-weight: bold; padding: 5px 8px;” />
</form>
</div> <!– // postbox –>
做完以上修改后,保存,上传并替换服务器上原有文件(最好先备份index.php文件)。刷新一下看看?是不是可以在首页发布文章了?
|