在WordPress页面中从MySQL插入和查询数据

我正在设计一个WordPress网站, 我对设计部分进行了深入研究, 现在下一阶段是与数据库相关的事情。

1. 将数据插入数据库。 2. 查询数据并将其显示在页面中。 3. 如果我不想安装widget,我需要创建一个php页面。我需要在哪里放置代码?

我用谷歌搜索了一些插件, 然后得到了php代码小部件插件, 并以小部件的形式插入了我的页面之一
我尝试安装insert_php插件, 但无法正常工作, 因此我继续使用php_code_widget
页面-> 所有页面-> 主页-> 添加行-> 添加小部件-> Php代码小部件。
现在在我的MySQL数据库中, 我有一个名为Rituals的简单表, 该表具有三列
Ritual ID-> Int -> Auto Increament. Ritual_Name-> varchar Ritual_Active-> varchar.

现在, 我需要将仪式名称插入数据库中, 并通过一些参考获得了此代码, 并将其放置在php代码小部件窗口中。
< ?php require_once('../../../wp-load.php'); function insertuser(){ if(isset($_POST['submit']){ global $wpdb; $rname=$_POST['rname']; $ractive=$_POST['ractive']; $table_name = $wpdb-> prefix . "mahathiwp"; $wpdb-> insert($table_name, array ('Ritual_Name' => $rname, 'Ritual_Active' => $ractive) ); } ?> < form action="" method="post"> Ritual Name: < input type="text" name="rname" /> < br> < br> Ritual Active: < input type="text" name="ractive" /> < br> < br> < input type="submit" name="submit"/> < /form> < ?php }insertuser(); ?>

没有插入数据。
你能建议一种将数据插入数据库中以及检索数据并将其显示在我的WordPress页面中的正确且快速的方法。任何帮助表示赞赏。
#1你必须自定义主题,
添加代码以在提交表单时执行操作。
functions.php
function childtheme_style_andscripts(){ //wp_enqueue_style('parent-style', get_template_directory_uri() . '/style.css' ); wp_enqueue_script('ajax-function', get_stylesheet_directory_uri() . '/js/ajaxfunction.js', array('jquery'), '1.0', true ); wp_localize_script( 'ajax-function', 'usersubmitform', array( 'url'=> admin_url('admin-ajax.php'), 'security'=> wp_create_nonce('our-nonce') ) ); }add_action('wp_enqueue_scripts', 'childtheme_style_andscripts'); function form_action_function(){ require_once(dirname( __FILE__ ).'/../../../wp-load.php'); $data = http://www.srcmini.com/$_POST['data']; global $wpdb; if( !check_ajax_referer('our-nonce', 'security' ) ){wp_send_json_error('security failed'); return; } //var_dump($data); $rname=$data['rname']; $ractive=$data['ractive']; $table_name = "rituals"; $wpdb-> insert($table_name, array ('rname' => $rname, 'ractive' => $ractive) ); $wpdb-> show_errors(); $wpdb-> print_error(); echo 'From Submitted Successfully'; die(); } add_action('wp_ajax_nopriv_form_action_function', 'form_action_function'); add_action('wp_ajax_form_action_function', 'form_action_function');

自定义页面模板
< ?php /** Template Name: Form For User */get_header(); ?> < div id="main-content" class="main-content"> < ?php if ( is_front_page() & & twentyfourteen_has_featured_posts() ) { // Include the featured content template. get_template_part( 'featured-content' ); } ?> < div id="primary" class="content-area"> < div id="content" class="site-content" role="main"> < h1 class="headingform"> User Form< /h1> < div class="msg"> < /div> < formclass="userform"> Ritual Name: < input type="text" id="rname" name="rname" /> < br> < br> Ritual Active: < input type="text" id="ractive" name="ractive" /> < br> < br> < inputid="usersubmit"type="submit" Value="http://www.srcmini.com/Submit" /> < /form> < /div> < !-- #content --> < /div> < !-- #primary --> < ?php get_sidebar( 'content' ); ?> < /div> < !-- #main-content --> < ?php get_sidebar(); get_footer();

【在WordPress页面中从MySQL插入和查询数据】ajax-admin.js
在这里我使用ajax来说明为什么要创建此文件。将此文件放入主题js文件夹中。
jQuery(document).ready(function($){var submitButton = document.getElementById('usersubmit'); var ajaxFunctionformprocess = function(fromdata, action){ $.ajax({ type:'post', url: usersubmitform.url, data:{ action:action, data:fromdata, security:usersubmitform.security, }, success:function(reponse){ $('div.msg').html(reponse); }, error:function(response){ alert(response); }}); }submitButton.addEventListener('click', function(event){ event.preventDefault(); var fromdata = http://www.srcmini.com/{'rname':document.getElementById('rname').value, 'ractive':document.getElementById('ractive').value, }; ajaxFunctionformprocess(fromdata, 'form_action_function'); }); });

    推荐阅读