加载自定义wordpress插件的js和css文件

我必须

在我的wp-contents/pugins文件夹中,有program-registration在此插件中,我有js/registration.jscss/registration.css

为什么无法访问此js文件中定义的函数?

<?php

/*
*   Plugin Name: Program Registration
*   Plugin URI: http://www.test.com/
*   Description: Program Registration plugin for wordpress.
*   Version: 1.0.0
*   Author: Admin
*   Author URI: http://test.com/
*/

global $wpdb;
global $success;
global $error;

define('PROGRAM_REGISTRATION_TABLE', $wpdb->prefix . "program_registration");

/*
|--------------------------------
| Process Registration Form
|--------------------------------
*/

if( isset($_POST['program_register']) ) { 

    try {

        if ( !empty($_POST['candidate_name']) && !empty($_POST['candidate_address']) && !empty($_POST['candidate_phone']) && !empty($_POST['program']) ) {

            $rows_affected = $wpdb->insert(PROGRAM_REGISTRATION_TABLE, array('candidate_name' => $_POST['candidate_name'],'address' => $_POST['candidate_address'], 'email' => $_POST['candidate_email'], 'phone' => $_POST['candidate_phone'], 'program' => $_POST['program'], 'ip' => $_SERVER['REMOTE_ADDR']) );

            if($rows_affected == 1) {
                $success = "You are successfully registered, you will get informed!";
            } else {
                $error   = "Something went wrong!";
            }
//echo $wpdb->last_query;

        } else {

            if( empty($_POST['candidate_name']) ) {
                throw new Exception("Candidate Name cannot be empty!");
            } elseif ( empty($_POST['candidate_address']) ) {
                throw new Exception("Address cannot be empty!");
            } elseif( empty($_POST['candidate_phone']) ) {
                throw new Exception("Phone cannot be empty!");
            } else {
                throw new Exception("Program cannot be empty!");
            }

        }

    } catch (Exception $e) {
        $error = $e->getMessage();
    }

}

/*
|--------------------------------
| Activate Plugin
|--------------------------------
*/

function program_registration_activation() {

    $registration_table = "CREATE TABLE ".PROGRAM_REGISTRATION_TABLE."(
        id int not null auto_increment,
        candidate_name varchar(100),
        address varchar(250),
        email varchar(50),
        phone varchar(20),
        program varchar(250),
        ip varchar(100),
        request_time timestamp,
        primary key(id)
    );";

    require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
    dbDelta($registration_table);
}

register_activation_hook(__FILE__, 'program_registration_activation');

/*
|--------------------------------
| Deactivate Plugin
|--------------------------------
*/

function program_registration_deactivation() {

}

register_deactivation_hook(__FILE__, 'program_registration_deactivation');

/*
|--------------------------------
| Stylesheets
|--------------------------------
*/

add_action('wp_enqueue_scripts', 'registration_styles');

function registration_styles() {  
    wp_register_style('program_style', plugins_url('css/registration.css', __FILE__));  
    wp_enqueue_style('program_style');  
}

/*
|--------------------------------
| Scripts
|--------------------------------
*/

add_action('wp_enqueue_scripts', 'registration_scripts');

function registration_scripts() {  

    wp_register_script('registrationjs_init', plugins_url('js/registration.js', __FILE__));  
    wp_enqueue_script('registrationjs_init');

}

/*
|--------------------------------
| Shortcode
|--------------------------------
*/

add_shortcode('registration_form', 'registration_form_function');

function registration_form_function() {

    global $success;
    global $error;

    $form  = "";
    if(isset($success) && $success != '') {
        $form .= "<div class='alert alert-success'>
                    <button class='close' data-dismiss='alert' type='button'>×</button>
                    <strong>Well done! </strong>";
        $form .= $success."</div>";
    } elseif(isset($error) && $error != '') {
        $form .= "<div class='alert alert-danger'>
                    <button class='close' data-dismiss='alert' type='button'>×</button>
                    <strong>Error! </strong>";
        $form .= $error."</div>";
    }

    $form .= "<form method='POST' name='program_registration_form' action=''>
                <label for='candidate_name' class='registration_label'>Candidate Name:</label>
                <input type='text' name='candidate_name' class='txbx' required/> 
                <label for='candidate_address' class='registration_label'>Address:</label>
                <textarea name='candidate_address' class='txbx' required></textarea>
                <label for='candidate_email' class='registration_label'>E-mail:</label>
                <input type='email' name='candidate_email' class='txbx'/> 
                <label for='candidate_phone' class='registration_label'>Phone:</label>
                <input type='text' name='candidate_phone' class='txbx' required/> 
                <label for='program' class='registration_label'>Interested Program:</label>
                <input type='text' name='program' class='txbx' required/> 
                <input type='submit' name='program_register' value='Register' class='button blue small'/> 
            </form>";
    return $form;
}

/*
|--------------------------------
| Admin Settings Menu
|--------------------------------
*/

function program_plugin_settings() {
    // add_management_page
    add_menu_page( 'Program Registration', 'Program Registration', 'administrator', 'program_settings', 'program_settings_display');
}

add_action('admin_menu', 'program_plugin_settings');


/*
|--------------------------------
| Admin Settings Page
|--------------------------------
*/

function program_settings_display() {

    $html = '<h2>Program Registration Panel</h2>
            <table>
                <tr>
                    <th>S.No.</th>
                    <th >Candidate Name</th>
                    <th >Address</th>
                    <th >E-mail</th>
                    <th >Phone</th>
                    <th >Requested Program</th>
                    <th >Action</th>
                </tr>';
    $sql  = "SELECT * FROM ".PROGRAM_REGISTRATION_TABLE.""; 

    $result = mysql_query($sql);
    $i = 1;
    while($row = mysql_fetch_object($result)) {
        $html .= '<tr>
                    <td>'.$i.'</td>
                    <td>'.$row->candidate_name.'</td>
                    <td>'.$row->address.'</td>
                    <td>'.$row->email.'</td>
                    <td>'.$row->phone.'</td>
                    <td>'.$row->program.'</td>
                    <td><a href="javascript:void(null);" onclick="delete_registration('.$row->id.');">Delete</a></td>
                </tr>';
                $i++;
    }       

    $html .= '</table>';
    echo $html;
}
我必须

要在wordpress管理面板插件设置中加载js和css文件,我们需要这样调用admin_enqueue_scripts

这样就可以了

function registration_scripts() {  

    wp_register_script('registrationjs_init', plugins_url('js/registration.js', __FILE__));  
    wp_enqueue_script('registrationjs_init');

}

add_action( 'admin_enqueue_scripts', 'registration_scripts' );

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Wordpress插件中加载自定义JavaScript

来自分类Dev

自定义目录以包含JS和CSS文件

来自分类Dev

WordPress自定义CSS和其他插件不起作用

来自分类Dev

如何使自定义 Wordpress 插件知道 .po 和 .mo 文件?

来自分类Dev

自定义插件不会加载我的CSS

来自分类Dev

从自定义位置加载`.vimrc`主题和插件

来自分类Dev

自定义文件下载wordpress管理插件

来自分类Dev

WordPress插件自定义菜单和子菜单

来自分类Dev

在自定义 WordPress 插件中使用 $_GET 和 $_POST

来自分类Dev

Wordpress 自定义 css 无法在 iOS 上加载

来自分类Dev

WordPress的tinyMCE自定义插件

来自分类Dev

wordpress插件自定义激活消息

来自分类Dev

Wordpress - 自定义 Watson Assistant 插件

来自分类Dev

Wordpress中某些管理页面上的自定义CSS和JS

来自分类Dev

仅在几页上加载WordPress插件的CSS和JS脚本?

来自分类Dev

根据后端模块设置加载自定义JS文件

来自分类Dev

使用自定义HTML和预定义的基本URL将CSS文件从资产加载到WebView

来自分类Dev

Vim是否自动为自定义文件类型加载特定于文件类型的插件?

来自分类Dev

jQuery创建自定义插件CSS

来自分类Dev

WooCommerce从我的插件文件夹加载并自定义archive-product.php

来自分类Dev

WooCommerce从我的插件文件夹加载并自定义archive-product.php

来自分类Dev

如何在 WordPress 中使用 PHP headers() 从我的自定义插件页面下载文件?

来自分类Dev

ActiveAdmin和其他自定义CSS文件

来自分类Dev

WordPress自定义metabox,在帖子,页面和所有自定义帖子类型上加载?

来自分类Dev

在 Laravel 中添加自定义 css/js 文件

来自分类Dev

自定义node.js Web服务器未完成加载CSS和JavaScript

来自分类Dev

Wordpress 插件不加载 JS 文件

来自分类Dev

在自定义css文件之后加载原始文件时,如何覆盖CSS!important属性

来自分类Dev

在自定义css文件之后加载原始文件时,如何覆盖CSS!important属性

Related 相关文章

  1. 1

    在Wordpress插件中加载自定义JavaScript

  2. 2

    自定义目录以包含JS和CSS文件

  3. 3

    WordPress自定义CSS和其他插件不起作用

  4. 4

    如何使自定义 Wordpress 插件知道 .po 和 .mo 文件?

  5. 5

    自定义插件不会加载我的CSS

  6. 6

    从自定义位置加载`.vimrc`主题和插件

  7. 7

    自定义文件下载wordpress管理插件

  8. 8

    WordPress插件自定义菜单和子菜单

  9. 9

    在自定义 WordPress 插件中使用 $_GET 和 $_POST

  10. 10

    Wordpress 自定义 css 无法在 iOS 上加载

  11. 11

    WordPress的tinyMCE自定义插件

  12. 12

    wordpress插件自定义激活消息

  13. 13

    Wordpress - 自定义 Watson Assistant 插件

  14. 14

    Wordpress中某些管理页面上的自定义CSS和JS

  15. 15

    仅在几页上加载WordPress插件的CSS和JS脚本?

  16. 16

    根据后端模块设置加载自定义JS文件

  17. 17

    使用自定义HTML和预定义的基本URL将CSS文件从资产加载到WebView

  18. 18

    Vim是否自动为自定义文件类型加载特定于文件类型的插件?

  19. 19

    jQuery创建自定义插件CSS

  20. 20

    WooCommerce从我的插件文件夹加载并自定义archive-product.php

  21. 21

    WooCommerce从我的插件文件夹加载并自定义archive-product.php

  22. 22

    如何在 WordPress 中使用 PHP headers() 从我的自定义插件页面下载文件?

  23. 23

    ActiveAdmin和其他自定义CSS文件

  24. 24

    WordPress自定义metabox,在帖子,页面和所有自定义帖子类型上加载?

  25. 25

    在 Laravel 中添加自定义 css/js 文件

  26. 26

    自定义node.js Web服务器未完成加载CSS和JavaScript

  27. 27

    Wordpress 插件不加载 JS 文件

  28. 28

    在自定义css文件之后加载原始文件时,如何覆盖CSS!important属性

  29. 29

    在自定义css文件之后加载原始文件时,如何覆盖CSS!important属性

热门标签

归档