首页 WordPress教程 WordPress纯代码添加文章投稿功能
正文 评论

WordPress纯代码添加文章投稿功能

很多WordPress博客上都有用户投稿的功能,这个功能用处还是比较大的,不仅适用于文章投稿,还适用于友链提交、网址提交等需要用到表单提交的地方。

就像本站网址导航页面的网址提交,也算是一种投稿功能,只不过是投稿给网址导航而不是文章。如下图:

要实现文章投稿功能其实也挺简单的,下面分享我自用的投稿功能代码:

1、首先在当前主题的目录下新建一个php文件,命名为submit.php。

2、将下面功能代码添加到 submit.php 文件中。

功能代码

<?php/* Template Name: 网址提交 */ get_header();$bloginfo = get_bloginfo(\'url\');if( isset($_POST[\'tougao_form\']) && $_POST[\'tougao_form\'] == \'send\') {global $wpdb;$current_url = $bloginfo.\'/site\';   // 注意修改此处的链接地址$last_post = $wpdb->get_var(\"SELECT `post_date` FROM `$wpdb->posts` ORDER BY `post_date` DESC LIMIT 1\");// 表单变量初始化$title =  isset( $_POST[\'tougao_title\'] ) ? trim(htmlspecialchars($_POST[\'tougao_title\'], ENT_QUOTES)) : \'\';$url = isset( $_POST[\'tougao_url\'] ) ? $_POST[\'tougao_url\'] : \'\';$description =  isset( $_POST[\'tougao_description\'] ) ? trim(htmlspecialchars($_POST[\'tougao_description\'], ENT_QUOTES)) : \'\';$icon = isset( $_POST[\'tougao_icon\'] ) ? $_POST[\'tougao_icon\'] : \'\';?><?php if ( empty($title) || mb_strlen($title) < 1 ) { ?><script>alert(\"网站标题不能为空!\");</script><meta http-equiv=\"refresh\" content=\"0;url=<?php $bloginfo ?>\"><?php die; } ?><?php if ( empty($url) || mb_strlen($url) < 1 ) { ?><script>alert(\"网站地址不能为空!\");</script><meta http-equiv=\"refresh\" content=\"0;url=<?php $bloginfo ?>\"><?php die; } ?><?php if ( empty($description) || mb_strlen($description) < 5 ) { ?><script>alert(\"网站描述不能为空,且不得少于5个字!\");</script><meta http-equiv=\"refresh\" content=\"0;url=<?php $bloginfo ?>\"><?php die; } ?><?php if ( empty($icon) || mb_strlen($icon) < 1 ) { ?><script>alert(\"网站icon图标不能为空!\");</script><meta http-equiv=\"refresh\" content=\"0;url=<?php $bloginfo ?>\"><?php die; } ?><?php$post_content = \'网站标题: \'.$title.\'<br />网站地址: \'.$url.\'<br />网站描述: \'.$description.\'<br />网站icon图标:\'.$icon;$tougao = array(\'post_title\' => $title, \'post_content\' => $post_content,\'post_status\' => \'publish\',//\'post_type\' => \'site\' //tougao_type是要保存到的自定义文章类型);// 将文章插入数据库$status = wp_insert_post( $tougao );if ($status != 0) { ?><script>alert(\"发布成功!\");</script><meta http-equiv=\"refresh\" content=\"0;url=<?php $bloginfo ?>\"><?php } else { ?><script>alert(\"发布失败,请重新填写!\");</script><meta http-equiv=\"refresh\" content=\"0;url=<?php $bloginfo ?>\"><?php } } ?>

3、将下面表单代码添加到功能代码下面

添加表单

<form method=\"post\" action=\"<?php echo $_SERVER[\"REQUEST_URI\"]; $current_user = wp_get_current_user(); ?>\"><input type=\"text\" id=\"tougao_title\" value=\"\" name=\"tougao_title\" placeholder=\"网站标题\"/><input type=\"text\" id=\"tougao_url\" value=\"\" name=\"tougao_url\" placeholder=\"网站地址\" /><input type=\"text\" id=\"tougao_url\" value=\"\" name=\"tougao_url\" placeholder=\"网站类别(请填写贵站类别)\"/><input type=\"text\" id=\"tougao_description\" name=\"tougao_description\" placeholder=\"网站描述\"><input type=\"text\" id=\"tougao_icon\" value=\"\" name=\"tougao_icon\" placeholder=\"网站icon图标\"/><div ><input type=\"hidden\" value=\"send\" name=\"tougao_form\" /><button  type=\"submit\" value=\"提交\" >提交申请</button><button  type=\"reset\" value=\"重填\" >清空</button></div></form>

4、添加页面内容代码

<div><?php while(have_posts()) : the_post(); ?><?php the_content(); ?><?php endwhile; ?></div>

5、添加底部代码

<?php get_footer(); ?>

6、最后新建页面,页面属性选择刚才创建的网址提交即可。

我们也可以给自定义分类投稿文章,具体方法可以查看下面这篇文章:

[xx_insert_post station_article=”1523″]

结束

一个简单的投稿功能就完成了,大家可以亲自上手试试,有什么问题可以加入我们的wordpress交流群,交流建站经验。

WordPress建站交流群:1038181019

扫码关注wp主题君

精选优质免费WordPress主题模板,分享最新WordPress实用建站教程!

记住我们的网址:ztJun.com

-=||=-收藏赞 (0)
更多主题
单栏极简文艺WordPress博客主题:Diaspora主题
¥ 0 关注:20,837
详情
简约黑白WordPress个人博客主题:Personal主题
¥ 0 关注:20,642
详情
v1.0.0
小程序收录免费WordPress主题:XCX主题
¥ 0 关注:20,566
详情
v1.0.0
一款简约单栏的免费WordPress博客主题:itheme主题
¥ 0 关注:18,499
详情
功能丰富切轻量的WordPress虚拟资源主题:Rizhuti主题
¥ 599 关注:18,414
详情
大气优雅免费WordPress博客主题:HONEY主题
¥ 0 关注:15,293
详情
回复
暂无评论

不要再留垃圾评论了,主题君整理资源不容易,留几句鼓励的话吧。