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: July 24th, 2016

NumPluginAuthorScore
1Duplicate Pagemndpsingh287225
2WooCommerce PayPal Express Checkout Payment GatewayAutomattic/WooCommerce157
3Google MapWebDorado151
4Elementor Page BuilderElementor.com130
5WooCommerce PayPal Powered by Braintree Payment GatewayWooThemes129
6Contact Formumarbajwa127
7WooCommerce Stripe Payment GatewayAutomattic120
8Responsive Sliderhttp://huge-it.com/115
9ClickFunnelsEtison, LLC115
10Maintenance Mode And Coming Soon Pagewpshopmart107
11WooCommerce Checkout Field Editor (Manager) ProThemeHiGH107
12WPUpper Share ButtonsWPUpper99
13Seo Optimized Imagespriyanshu.mittal98
14Tabs Responsivewpshopmart89
15Weglot TranslateRemy B86
16My Custom FunctionsArthur Gareginyan86
17Statebuilt Facebook Page Like PopupSTATE BUILT82
18Notification Bar for WordPress8 Degree Themes82
19Google Analyticspraveenchauhan198482
20Google AdSense Integration WP QUADSRene Hermenau, WP-Staging80

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.