WordPress shortcode snippet to display external files

I needed a quick way to automatically include external page content in my WordPress Rising Stars post.

There are two tables with latest plugin standings that are automatically generated and I wanted the post to be updated automatically when they update too.

Easiest way to accomplish this is through WordPress shortcode API with a simple code that you can add into the theme functions.php file:

Here is the code:

function show_file_func( $atts ) {
  extract( shortcode_atts( array(
    'file' => ''
  ), $atts ) );

  if ($file!='')
    return @file_get_contents($file);
}

add_shortcode( 'show_file', 'show_file_func' );

This allows you to write something like this anywhere in your post:

Last updated: February 1st, 2016

NumPluginAuthorScore
1InstagramWebDorado179
2Contact Form 7 MailChimp ExtensionRenzo Johnson140
3WP Limit Login AttemptsArshid131
4Custom 404 ProKunal Nagar128
5Smart Slider 3Nextend113
6Cryout Serious Theme SettingsCryout Creations112
7SO Hide SEO BloatSO WP111
8Page Builder SandwichGambit Technologies107
9Image CarouselGhozyLab, Inc.106
10WordPress REST API (Version 2)WP REST API Team104
11Gallery LightboxGhozyLab, Inc.104
12Google Analytics Counter TrackerWPAdm102
13Magee ShortcodesMageeWP102
14Social Login, Social Sharing by miniOrangeminiOrange100
15Under Construction / Maintenance Mode from AcuraxAcurax93
16Customify - A Theme Customizer BoosterPixelGrade93
17Ultimate FAQEtoile Web Design87
18Facebook Page PluginCameron Jones87
19AccessPress Instagram FeedAccessPress Themes86
20IP Geo Blocktokkonopapa84

The snippet above will automatically include the contents of given page into your post. Handy, isn't it?


More like this:


Posted in: WordPress
TAGS:, , , , , , , , , , , , , , ,
Both comments and trackbacks are currently closed.

3 Comments

  1. Jan 2nd, 2013 10:02 PM

    This is a very dangerous shortcode that could allow authors to read any file on the server filesystem. You can make it safer by using WP’s HTTP api instead of file_get_contents(), but it’ll still be dangerous.
    [ show_file file="/etc/passwd" ] !

  2. Mar 18th, 2011 11:31 AM

    interesting code, thanks for always staying on top of things :)

  3. kevin
    Mar 3rd, 2011 7:34 AM

    is there anyway to use this code to embed the remote file into a wordpress widget or the sidebar, instead of a post? Or maybe a wordpress plugin that keeps the last post on the homepage sticky, instead of the first like other plugins ive seen. thanks.