Network Posts Extended


The plugin is designed to share posts, pages, and custom post types from across entire network on any given page for any subdomain and the main blog. You may list them in single or double column mode. Add custom css styling to your text, images, whole container and title.

You can specify categories and tags. All posts will be shown in ascending and descending order by date or post ID. You can specify how old (in days) the collected posts may be. Also you can specify how many posts should be displayed from each blog. You can set thumbnails image size and style or disable them.

You may also include or exclude posts, pages, categories, and blogs by using the appropriate arguments. They’re all listed at the end of this file.

List of Arguments

Network Posts Extended Shortcodes and Arguments

[netsposts include_blog=”1,2,5″ days=”30″ taxonomy=”news” titles_only=”false” show_author=”true” thumbnail=”true” size=”90,90″ image_class=”alignleft” auto_excerpt=”true” excerpt_length=”150″ show_author=”true” paginate=”true” list=”5″]

/Including and/or Excluding pages, posts, categories, and blogs/

include_post – list of posts/pages that you want to include (example: include_post=”5″ or include_post=”5,8,153″ for multiple posts.

exclude_post – list of posts/pages that you want to exclude (example: exclude_post=”5″ – exclude_post=”5,8,153″

include_blog – list of blogs, with the posts which will be displayed (default all blogs)

exclude_blog – list of excluded blogs (default none) (works only if include_blogs argument is not present)

filter_excerpt – The plugin will now process and show shortcodes in the excerpt field. Just set filter_excerpt=”true” ( Default: false )

taxonomy – list of categories to include in list. Default is all categories. Example: taxonomy=”books” or taxonomy=”digital-books,product,news” for multiple categories. Use slug of category for the taxonomy name.

taxonomy_type can have 3 values – category, tag, all. Example: taxonomy_type=’tag’ taxonomy=’records’. That way if there is a category and a tag both named “records” you may choose which to select. To include both just separate with commas. Example: taxonomy_type=’tag,category’. You can only select woocommerce taxonomy_type if post_type=’product’ which is a custom woocomerce post type.
If post_type is ‘product’ taxonomy_type can be ‘product_tag’, ‘product_cat’ or both.

Miscellaneous show/hide arguments

days – how old in days the post can be (default 0′ – no limit) Example: days=”10″ will only show the posts/pages which have been created within the last ten days.

titles_only – if true shows titles only (default false) Example: titles_only=”true” will only show the titles. Not the image or excerpt.

show_author – if true shows a posts author (default false) Example: show_author=”true”


thumbnail – if true shows thumbnails (default false) Example: thumbnail=”true”

size – size of thumbnail (width, height) (default thumbnail) Example: size=”50,50″ will show a thumbnail which has a size of 50px high and 50px wide.

image_class – CSS class for image (default post–thumbnail) Example: image_class=”custom-image-class”


auto_excerpt – if true an excerpt will be taken from post content, if false a post excerpt (shows the short description in the excerpt box. Note you will need to use a plugin to show this box when creating pages instead of posts) will be used (default false).

excerpt_length – the length of excerpt (in characters) (auto_excerpt should be true)(default 400′) Example: excerpt_length=”500″ will show the first 500 characters.

manual_excerp_length – You can set the length of the manual excerpt. For example if someone has 500 words in the manual excerpt field it may be trimmed down to 400 like so: manual_excerpt_length=”400″ (defaul 9999)

Listing Designs

post_type – type of posts (default post) Example: post_type=”page” will show pages not posts in the list. To show posts either don’t include this argument (since posts are default) or use post_type=”post”. Now works with custom post types. So you may add post_type=”mycustomposttype”.

full_text – full text instead of excerpt (default false) Example: full_text=”true” will show entire text in content field in list.

Showing Date

date_format – format of the post date (default n/j/Y). Example this will show January 2 1963 for example. If you would like to show the date first just use: date_format=”j/n/Y”.

Custom HTML

wrap_start, wrap_end – you can wrap the posts for example: (wrap_start=”<div style=’font–weight:bold;vertical–align:middle;’ class=’myclass’>” wrap_end=”</div>”)

wrap_title_start,wrap_title_end – wrap_image_start,wrap_image_end – wrap_text_start,wrap_text_end wrap_excerpt_container_start=””,wrap_excerpt_container_end=”” . Use the same way as wrap_start,wrap_end above. But will only wrap given argument.

page_title_style – style for the page title (default: none) Example: page_title_style=”italic” will make the title italic. For bold you may use: page_title_style=”bold” for italic and bold use: page_title_style=”italic,bold”

Miscellaneous List Arguments – Pagination Links and Order Post/Page by Properties

end_size – how many numbers on either the start and the end list edges (used for pagination) Example: end_size=”3″ will show the first and last three pages as links in numerical form.

mid_size – how many numbers to either side of current page, but not including current page (used for pagination)

order_by – Sort in ascending (default value) and descending order via the following arguments – Ascending: order_post_by=’alphabetical_order’ order_post_by=’date_order’ order_post_by=’page_order’ and descending: order_post_by=’alphabetical_order desc’ order_post_by=’date_order desc’ order_post_by=’page_order desc’ (note: descending must be surrounded by single or double quotes because of the empty space after page_order

Pagination – When list is to have multiple pages

paginate – if true the result will be paginated (default false) Example: paginate=”true” will break the list in to multiple pages by the list argument.

list – how many posts per page (default 10) Example: list=”20″ will show the last 20 posts or pages. If paginate=”true” is used above then will break the list in to pages showing 20 posts or pages on each page.

prev_next – Whether to include the previous and next links in the list or not (used for pagination. Default: true)

prev – the previous page link text. Works only if prev_next argument is set to true. (Default: « Previous)

next – The next page text. Works only if prev_next argument is set to true. Example: next=”New Posts” will replace the default – Next – with – New Posts. (Default: Next »)

random – Set to true to show posts randomly. To show an x amount of posts randomly make sure the list argument is set to the amount you want. (Default: set to false)

Custom Arguments


title – custom title (default: none) Example: title=”Joe’s Favorite Bicycles”

title_color – Color of the title text. Example: title_color=”red” or title=”color:#ff0000″ both will give you a color of red. (Default black)

title_length – Cuts off the title at X amount of characters so won’t make long wrap around which looks ugly. The length is in characters including spaces and symbols (Default 999)

include_link_title – This will now make all titles clickable (default false). If you want the titles to also link to the post or page set this argument to true. Example: include_link_title=”true”

exclude_link_title – This will exclude certain posts/pages from the title being clickable. For example if you don’t want the title to link to posts 8,45,47 you would use: exclude_link_title_posts=”8,45,47″

Custom Column Designs

column – number of columns (default: 1)

column_width – Width of column in pixels. Example column_width=”250″. (Default: 200)

post_height – Sets the default height for all posts. Recommended for 2 column mode. For example if manual_excerpt_length=”400″ or excerpt_length=”400″ and you want posts with less of an excerpt to have same dimensions use this feature. post_height=”300″ will give a standard height of 300 pixels. So if post has less characters of text will still keep square shape so titles line up nicely.

meta_info – Example: meta_info=”false” (Default ‘true’)

meta_length – Example: meta_length=”75%” (Default 100%)

menu_name – name of the menu (should be created in Appearance > Menu)(default: The one created in Appearance > Menu)

menu_class – CSS class for the menu. Example menu_class=”menu-class”. Separate multiple classes with commas.

container_class – the CSS class that is applied to the menu container

use_shortcode_in_excerpt – If set to true any shortcodes that appear in the excerpt will be processed. Default: false. Note: You must activate the ability to have your site be able to process shortcodes in excerpt field.

show_categories – If set to true will also include a link to the category archive page. show_categories=”true” default is false.

Added ability to call all categories that contain certain keyword or part as in the following example:
If you type ‘test-%’ it will find test-1, test-2, test-3 etc.I.e. it will find categories that starts with ‘test-‘. if you type ‘%test’ it will find categories that ends with ‘test’ word.

link_open_new_window=”true” (default false) for all posts and link_open_new_window=”1,2,3,4,5″ for posts with given ids.

Using Custom Image Sizes:

Under settings > Network Posts Ext menu you will see a box to add a custom image size. You may name it anything you like and use the default alias name or your own. Wants created you must include the following in your shortcode:
thumbnail=”true” size=”Name of Alias”. For example if what is listed in the alias box is 600×400 then it would be size=”600×400″ so your thumbnails will have a size of 600px wide and 400px high. You may change the diplayed size of these images using custom css.
For example you may create a class called img-size-300×200 and change the displayed image size thus: .img-size-300×200 { height:300px;width:200px; }. Then add this to the shortcode: image_class=”img-size-300×200″.

Network Activated: Now you can network activate and have full control in the admin menu under settins which site owners can resize images. You may have them resize images just on their own site or globally.

For a complete tutorial please visit:


  • Single Column Default

  • Single Column with Blue Header and Thumbnail Dimmensions size="240,160"

  • Double Column with Red Header

  • Example of custom image sizes


You may install the plugin using one of the three following methods:

  1. Unzip file and using an ftp program upload it to the wp-content/plugins/ directory then activate in plugins page.

  2. Using the search field in the admin plugins area type in ‘network posts extended’ (without quotes) then install from there.

  3. Upload zip file through the standard plugins menu.

Note: For multisite installations only. You may network activate or activate on each site separately. May also added the ability to remove read more link at the end of each excerpt by post/page title.


Q) Should I network activate the plugin?

A) You may network activate the plugin so it is available on all sites or activate individually. When it is netwrok activated there will be a new menu in the superadmin area where you may choose which sites are allowed to resize images. That is they have the ability to resize images just on their domain or all domains.

Q) May I only include an x amount of posts that I choose?

A) Yes, use include_post= and put in your posts in comma separated format surrounded by double quotes.

Example include_post=”5,78,896″.

Q) My title is too long and looks ugly, anyway I can shorten it?

A) You may shorten it using the argument title_length=”10″ will rounded it off to the last complete word before it reaches 10 characters.

Q) I would like to just show an X amount of random posts on the home page. Is it possible?

A) Use the following arguments: random=”true” and list=”10″ will show ten different posts randomly whenever the page is loaded.

Q) May I order my posts in specific order by date or title?

A) Yes you may give specific ordering of your posts or pages via alphabetical order (by title), by date or page or post ID specific order.

Q) Does this plugin list pages from woocommerce?

A) Yes it now does as of version 0.1.4. You may list via page/post id or via taxonomy=”custom woocommerce category”. Woocommerce default directory/taxonomy is product show you would just use the argument taxonomy=”Product” which is the title of the directory. (Not case sensitive)

Note: Also works with Tips and Tricks eStore plugin.

Q) Will this plugin also include the prices from the products I create with the Woocommerce and eStore plugins?

A) Yes it will including the following argument: include_price=”woocommerce” or include_price=”estore”. If for some reason you have both plugins installed you would use include_price=”estore|woocommerce” if you want to list them both.

Q) When I use the following argument wrap_start=”<div style=”color:blue;”>” and wrap_end=”</div>” the text doesn’t change color.

A) That’s because since double quotes are used after the = sign single quotes must be used in the html. For example you would have to have wrap_start=”<div style=’color:blue;’>”. Notice the single quotes in the html?

Q) Does this plugin work with custom post types. That is post_type=”custom-post-type”.

A) Yes it now works with custom post types.

Q) Can I show full post from any blog on any site?

A) Yes you can by using the following argument full_text=”true”

Q) The default layout is quite ugly. How do I improve it?

A) Using css I have made this plugin very flexible. It now contains two default layouts. Theeir names are ‘default’ and ‘inline’. You may choose either one by using use_layout=””.

Q) Can I use shortcode attributes in dynamically created url?
A) Yes you may now use the shortcode attributes in a url. Example:http://localhost/wordpress/home-page/?column=infinite&include_blog=1,2,3&taxonomy=wordpress-develop,second-posts

Installation Instructions

You may install the plugin using one of the three following methods:

  1. Unzip file and using an ftp program upload it to the wp-content/plugins/ directory then activate in plugins page.

  2. Using the search field in the admin plugins area type in ‘network posts extended’ (without quotes) then install from there.

  3. Upload zip file through the standard plugins menu.

Note: For multisite installations only. You may network activate or activate on each site separately. May also added the ability to remove read more link at the end of each excerpt by post/page title.


Great plugin & support

As others have pointed out, I just wanted to reiterate how useful this plugin is. My site admin requested to see all posts in the multisite environment & I was about to hack something together when I realised this module does exactly what I need. The plugin author provided fast & excellent support.

Amazing Plugin and Even Better Support

Network Posts Extended is awesome and the support from John is even better. When I switched my media from my local hard drive on my server to Amazon S3, the featured images no longer showed, so John made an update to fix it in less than a day. Can’t recommend this plugin highly enough.

Finally got the look I wanted

I finally found a plugin that gives me the look I wanted. As popular as multi-site is, it is amazing that this seems to be the only plugin that does a decent job of displaying posts from across the network. Much more flexible than the WPMU plugin.

Much needed!

A much needed plugin! (I still can’t believe that this isn´t integrated in WP Networks by default).
The versatility of the plugin is just amazing! With the options of the shortcodes+CSS plugin, I managed to replicate the default ‘Home Archives’ of my themes only using this plugins shortcode in a Page.

Fantastic plugin!

This is the best plugin I have found to date when it comes to aggregating multisite data. It is very well documented, the plugin author is extremely proactive on the support forum, he even added an enhancement request I made for adapting url parameters, and he turned that request around in 2 days! The shortcode is straight-forward and has a low thresh hold for entry. If you are looking to aggregate your multisite data, look no further.

*for the record, this is the first plugin review I have written; it works so well that I felt compelled to do so.


Read all 12 reviews

Contributors & Developers

“Network Posts Extended” is open source software. The following people have contributed to this plugin.




Fixed bug and a few upgrades


Fixed bug where post_height=”” stopped working.


Added the ability to keep original image quality in plugin admin menu. Keep original image is defaulted to on and by-passes WordPress automatically choosing compressed version of image. Check the box to turn this feature off.


Added ability to open links in new window.


Updated way WordPress runs shortcode to keep up with security standards plus fixing taxonomy error. Now compatible with WordPress version 4.8.3. Plus added to be able to call taxonomies by keyword using partial category/tag name.


Fixed error in show_categories php code which was showing parse error in error_log file.


Fixed use_shortcode_in_excerpt function now works again. Added the argument show_categories so if you would like to include a link to the category page you may add show_categories=”true”


Fixed syntax error created in some environments.


Corrected the ability to process shorcodes in the excerpt field. Now must use: use_shortcode_in_excerpt=”true”. You must use a plugin like Code Snippets or add the following code to your functions.php file which allows you to process shortcodes in the excerpt box of posts and if activated pages also. &lt;?php add_filter('the_excerpt', 'do_shortcode'); ?&gt; without the backticks`. The above plugin will not want you to include the <?php and ?>. Just enter it as so: add_filter(‘the_excerpt’, ‘do_shortcode’);. If your functions.php file has an opening php tag just insert the latter snippet also.


Added the ability to process shortcodes in the excerpt field. Just set filter_excerpt=”true”. That is if you have a shortcode in the posts excerpt field in the admin page or have auto_excerpt=”true” it will process all shortcodes.


Added ability to use shortcodes in dynamic url.


Fixed css bug


Fixed Call to Function errors.


Fixed use_layout=”inline” so it looks like it was supposed to. Has Title, meta-info and content floating to the right of thumbnail.


Fixed bug where content was flowing outside of content area when listed on a page.
I have added the following arguments:

  • full_text=”true” will show entire blog content (default – false)
  • use_layout=”” (default or inline – the default is set to use_layout=”default”). When set to inline all meta data and content will be aligned to the right of the image.
  • align_thumbnail=”” (default is left. May now choose the image to align to the right of the text if use_layout=”inline” is chosen.
  • wrap_excerpt_container_start=”CSS Code Here or anything else for that matter” wrap_excerpt_container_end=””. So if you want to add a class to the excerpt/content area you may do so by using wrap_excerpt_container_start=”<div class=’custom-class’>” wrap_excerpt_container_end=”</div>”.


Fixed bug where it stopped working with posty_type=”page” and now works with custom post types. So if you make a post type called listing you may now add, post_type=”listing”.


Fixed incompatibility problem between browsers. Now tested and works with Firefox, Chrome and Microsoft Edge. Should work with Safari and Opra browsers also.


Added the ability to resize images and use them as the default thumbnail.


This plugin now will show prices for commerce sites using the Woocommerce or WP eStore plugins.


The plugin can now list post and pages from any subomain/blog including woocommerce and eStore. No longer syntax error created.


Removed below custom class and added checkbox to remove read more link on excerpts.

Added text box to remove read more link individually by inserting the title of post/page.

Moved the location of the plugin from the tools menu to inside the settings menu for less confusion.

It is now named “Network Posts Ext” with the quotes of course.


Added custom class to plugins net_posts_extended.css file


This way you can remove the read more links from the excerpts by using the following attribute:

a.netsposts-read-more-link { visibility: hidden; }


Added ability to list posts in specific order by date, title or page (pertains to post_type=page only).

Arguments now work with paginate=false random=true

Fixed call to function error


Added two more arguments.




Added the function to be able to use your own custom classes in tools area.

Plus added the following arguments:

column_width (default (px): 200)

title_color (default: black)

text_color – color of text. Examples text_color=”red” or text_color=”#ff0000″. Both will have the texts color turn red.

meta_info – Default true


wrap_title_start,wrap_title_end – wrap_image_start,wrap_image_end – wrap_text_start,wrap_text_end.

meta_width – Same as title length except in percentage to shorten long meta data.

Added the ability to show posts or pages randomly using the following argument: random=”true”

The list= argument works with pagination= true or false (default: false)


Added the ability to have custom thumbnail sizes created on image upload.

You will be able to have image sizes that are also rectangular for better matching on listing your pages. For example an image with a width of 300px and height of 200px.