Kliver Max
Kliver Max

Reputation: 5299

How to get access to jquery in wordpress?

In my theme header.php i added:

<?php wp_enqueue_script("jquery"); ?>

And try to use jquery in functions.php:

function remove_xprofile_links() {
    remove_filter( 'bp_get_the_profile_field_value', 'xprofile_filter_link_profile_data', 9, 2 );

    global $current_user;
    get_currentuserinfo();
    $user_id = $current_user->ID;
    $field = xprofile_get_field_data(3, $user_id);

    if($field="Покупатель")
    {
    ?>
        <script type="text/javascript">
            jQuery(document).ready(function( $ ){
                 $("#nickname,#display_name").parent().parent().hide();
                });
        </script>
    <?php
    }
}
add_action( 'bp_init', 'remove_xprofile_links' );

But in console still ReferenceError: jQuery is not defined

How to use jquery correctly?

Upvotes: 0

Views: 205

Answers (1)

d79
d79

Reputation: 3848

Probably you added the wp_enqueue_script line in your header.php after the wp_head() function has already been executed, but that's not the real issue.

The problem is that you shouldn't enqueue your scripts in header.php, but in your theme's functions.php file, adding an action to the wp_enqueue_scripts hook, like explained in this example:

/**
 * Proper way to enqueue scripts and styles
 */
function theme_name_scripts() {
    wp_enqueue_style( 'style-name', get_stylesheet_uri() );
    wp_enqueue_script( 'script-name', get_template_directory_uri() . '/js/example.js', array(), '1.0.0', true );
}

add_action( 'wp_enqueue_scripts', 'theme_name_scripts' );

In your case this should be enough:

add_action( 'wp_enqueue_scripts', function() {
    wp_enqueue_script('jquery');
} );

Upvotes: 1

Related Questions