This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

Easy Footnotes


Easy Footnotes lets you add footnotes throughout your WordPress posts by using the shortcode [efn_note]Footnote content.[/efn_note]. Easy Footnotes will automatically add the number of the footnote where the shortcode was entered and add the full footnote text to the bottom of your post in an ordered list with a corresponding number.

Hovering the footnote label will show the user the full text of the footnote using the jQuery Qtip2 plugin. Clicking on the footnote label will take the user down the page to the corresponding footnote at the bottom of the WordPress post. Each footnote at the bottom of the post has a icon that can be clicked to return to that particular footnote within the post copy.

That’s all it takes to start adding footnotes to your WordPress blog!


  • Displaying a footnote on hover.
  • Several footnotes (feetnote?) at the bottom of the post.


  1. Upload the ‘easy-footnotes’ folder to the ‘/wp-content/plugins/’ directory.
  2. Activate the plugin through the ‘Plugins’ menu in WordPress.
  3. That’s it! Now simply start using the [efn_note]Footnote content goes here.[/efn_note] shortcode within your posts.


How do I insert a footnote into my post.

Simply use the shortcode [efn_note]Footnote content goes here[/efn_note] and Easy Footnotes will enter numeric footnotes into your post that open on hover and take the user to the footnote at the bottom of the page on click.

That’s awesome!

I know, but that’s not really a question.

Oh right, why is that so awesome?

Because it’s easy. And it’s integrated with the qTip2 jQuery plugin to display your footnotes in lovely tooltips on hover. Plus it automatically numbers your footnotes in the order you enter them into your post.

How can I change the markup for the footnote label?

Just use the efn_footnote_label filter in your functions.php to edit the output.

    function efn_change_label_markup( $output, $label ) {
        return '' . $label . '';
    add_filter( 'efn_footnote_label', 'efn_change_label_markup', 10, 2 );

Can I disable the qTip functionality?

Place the following code in your functions.php file to disable the qTip features.

    function efn_deregister_scripts() {
        wp_deregister_style( 'qtipstyles' );
        wp_deregister_script( 'imagesloaded' );
        wp_deregister_script( 'qtip' );
        wp_deregister_script( 'qtipcall' );
    add_action( 'wp_enqueue_scripts', 'efn_deregister_scripts' );


May 29, 2021
As simple as good plugin. Nothing wore required. Thank you to the developers.
June 20, 2020
This plugin came in extremely handy when I was recently marking up a long post with art, text and footnotes for my site on Chris Marker. I can verify as well that it even works within the now quite popular Elementor visual builder. I cannot say for sure yet but the paragraphs that contain EFN shortcodes seem to load more slowly than regular paragraphs; perhaps there is some code optimization in order, but I will leave that to your developers. I would also like to recommend some additional CSS for those who would like a numerical marker, already small due to the sup tag, to stand out more, by adding, for example: sup { top: -.5em; background: linen; padding: 6px; border-radius: 4px; border: 1px #ccc solid; } This will give the touch/click target a bit more room due to the padding (and therefore better UX), and visually make the footnote stand out in a pretty professional manner. Choose your own colors. Once again, excellent plugin, many thanks for saving the day!
April 17, 2020
The [efn_note] tags should be in colour and bold to make them easier to find in the text. Thank you very much for this nice work.
October 8, 2019
Install and wrap footnote content in shortcode. This plugin does everything else. E.g. Automated numbering, hover box, footnotes at end of post etc. Works well with Gutenberg. My favorite feature is being able to disable the footnote section at the bottom of the post/page and instead rely entirely on the hover box.
August 10, 2019
I had been using a similar plugin that hasn’t been updated in over 6 years. Easy Footnotes was a drop-in replacement and actually works better than the old plugin. Nice simple settings and easy to customize. 👍
July 13, 2019
I looked around until I found a decent plugin for footnotes, and this is it. Relatively easy to use and works very well. Easy to edit footnotes. Looks very professional on the page.
Read all 32 reviews

Contributors & Developers

“Easy Footnotes” is open source software. The following people have contributed to this plugin.


Translate “Easy Footnotes” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.



  • Removing references
  • WordPress 6.0.2 support
  • PHP 8.0 support


  • WordPress 5.5 compatability


  • Fixing typo on FAQ page


  • Adding div.easy-footnote-title into $footnote_label for filtering with efn_footnote_label


  • Fixed issue with default settings not being set on new installations
  • Added conditional logic check if settings exist to avoid PHP Warnings
  • Fixed undefined index of $efn_output when not using Easy Footnotes label


  • Added efn_footnote_list_output filter for editing entire Easy Footnote output after content
  • Updating SVN to include missing JS file


  • Improved accessibility for keyboard navigation of footnotes
  • Started improving code to follow WordPress Coding Standards guidelines
  • Added second option for footnotes using [efn_note] to phase out non-prefixed [note]
  • Added easy_footnote_label hook to filter footnote labels
  • Added before_footnote and after_footnote filters to add content before or after footnote lists after content.


  • Fixing footnote counts for the last time! (Hopefully)
  • Added post ID to footnote IDs to make them more unique
  • New setting to hide the footnotes after content in Settings > Easy Footnotes
  • Prep for a bigger update and beginning Gutenberg support


  • Being a noob and not testing a link added in on settings page. It works now.


  • CSS tweak in admin screen


  • Fixing PHP notice on shortcode when content not found


  • Changing how footnotes are numbered to avoid duplicates caused by the_content filtering being applied earlier in themes.


  • Fixed bug to prevent tooltips from opening off the screen


  • Added in extra sanitization for user inputs within admin


  • Fixed issue causing notice of undefined index on admin screen. Adjustment to how footnote’s handle html special chars.


  • Added the Qtip2 unfocus event for hiding footnotes on iPad and other touch devices.


  • Fixed issue where Footnote title was showing on pages without any footnotes once activated through the settings. Also changed the priority of the add_filter(‘the_content’) call to be 20 in order to show above Jetpack Related Posts


  • Added the ability to insert a title above the footnote section at the bottom of the post content. This is controlled in the Easy Footnotes Settings page that can be found under Settings in the WordPress Dashboard.


  • Updating logic for appending footnotes to the bottom of posts. Now only appends to single posts, custom post types and pages that are using the main post query. Also fixed footnote count when multiple posts are shown in the content on one page, such as the home page. Footnotes outside of the single post also now link to the footnote within the single post.


  • Fixed bug where footnotes were being appended to the end of the content on home pages and ignoring the more tag


  • Added a delay of 400ms to the footnote closing so it stays open better when hovered


  • I messed up the version tag on 1.0.1. Just upping ti 1.0.2 for precautions.


  • Footnotes now stay open when moused over for interacting with links


  • Initial release