最新公告
  • 欢迎您光临牛品源码,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • 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 class=\"t\">
    		<input type=\"hidden\" value=\"send\" name=\"tougao_form\" />
    		<button class=\"button\" type=\"submit\" value=\"提交\" >提交申请</button>
    		<button class=\"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、最后新建页面,页面属性选择刚才创建的网址提交即可。

    结束

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

    WordPress建站交流群:8424781
    WordPress从入门到放弃
    

     

    发表评论

    售后服务:

    • 售后服务范围 1、商业模板使用范围内问题免费咨询
      2、源码安装、模板安装(一般 ¥50-500)服务答疑仅限SVIP用户
      3、单价超过200元的模板免费一次安装,需提供服务器信息。
      付费增值服务 1、提供dedecms模板、WordPress主题、discuz模板优化等服务请详询在线客服
      2、承接 WordPress、DedeCMS、Discuz 等系统建站、仿站、开发、定制等服务
      3、服务器环境配置(一般 ¥50-500)
      4、网站中毒处理(需额外付费,1000元/次/质保三个月)
      售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
      免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: niupinyuanma@foxmail.com),我们会及时删除,给您带来的不便,我们深表歉意!