FYP Infinite Posts

Description

Transform your WordPress content display with professional infinite scroll and 8 stunning templates!

FYP Infinite Posts is a powerful WordPress plugin that replaces traditional pagination with smooth, modern infinite scrolling. Featuring intelligent AJAX loading, advanced template layouts, smart caching, and context-aware filtering, it delivers exceptional performance and user engagement for any content-driven website.

Core Features:

8 Professional Template Layouts

  • Default (Full Width) – Clean single-column layout for blogs
  • Grid 2/3/4 Columns – Responsive multi-column grids for galleries and portfolios
  • Slider/Carousel – Horizontal scrolling with touch support
  • Masonry Layout – Pinterest-style staggered grid
  • Card Layout – Modern card design with hover effects
  • List View – Minimal text-focused display

Smart Loading Methods

  • Infinite Scroll – Automatically loads posts as users scroll (vertical or horizontal for sliders)
  • Load More Button – Manual loading with customizable button text
  • Static Display – Show posts without pagination
  • Intersection Observer API for efficient scroll detection

Context-Aware Filtering

Automatically detects and filters content based on:
* Category archive pages
* Tag archive pages
* Custom taxonomy pages
* Author archive pages
* Maintains context across AJAX loads

Performance Optimization

  • Smart Transient Caching – 15-minute query caching reduces database load
  • Automatic Cache Invalidation – Clears cache when posts are modified, deleted, or published
  • Conditional CSS Loading – Only loads styles for templates in use
  • Optimized Tax Queries – Efficient taxonomy filtering with category fallback
  • Memory Efficient – No found_rows when not needed

Advanced Display Controls

Granular control over post elements via admin panel or shortcode:
* Featured images/thumbnails
* Categories and taxonomies
* Publication dates
* Author names
* Post excerpts with configurable length (1-200 words)
* Comments count

Developer-Friendly Architecture

  • Template Override System – 10-level hierarchy for maximum flexibility
  • Post-Type Specific Templates{post-type}-{template}-item.php naming convention
  • PSR-4 Autoloading – Clean namespaced code structure
  • Secure AJAX – Proper nonce verification and data sanitization
  • Translation Ready – Full internationalization support
  • Extensible Hooks – WordPress standard action and filter hooks

Professional Admin Interface

  • Settings tab for default behavior configuration
  • Template tab for design customization
  • Help tab with comprehensive documentation
  • Real-time preview of available templates
  • Support for all public post types

Complete Post Type Support

Works with all public WordPress post types:
* Standard posts and pages
* WooCommerce products
* Custom post types (portfolios, events, testimonials)
* Any theme or plugin post types

Perfect For:
* Blogs and news websites
* WooCommerce product catalogs
* Portfolio and gallery websites
* Event listings
* Magazine-style content sites
* Any content-driven WordPress website

Part of the FYPlugins ecosystem – professional WordPress solutions with exceptional performance.

Usage

Quick Start:

  1. Install and activate the FYP Infinite Posts plugin
  2. Configure default settings at WordPress Dashboard FYPlugins Infinite Posts
  3. Add infinite scroll anywhere using the [fyplugins_infinite_posts] shortcode

Basic Examples:
[fyplugins_infinite_posts]
[fyplugins_infinite_posts pagination="button" posts_per_page="5"]
[fyplugins_infinite_posts post_type="product" category="featured"]

Advanced Examples:
[fyplugins_infinite_posts pagination="scroll" orderby="rand" class="custom-layout"]
[fyplugins_infinite_posts post_type="portfolio" taxonomy="portfolio_category" author="true"]

Shortcode Parameters

Main Shortcode: [fyplugins_infinite_posts]

All parameters are optional and default to admin panel settings.

Loading & Behavior

  • pagination – Loading method: scroll, button, or none (default: scroll)
  • posts_per_page – Posts per batch (default: 10)
  • offset – Posts to skip initially (default: 0)

Content Filtering

  • post_type – Post type: post, page, product, or custom (default: post)
  • category – Category: true (auto-detect), false, or category ID
  • taxonomy – Taxonomy: true (auto-detect), false, or taxonomy name
  • term – Term ID when using specific taxonomy
  • author – Author: true (auto-detect), false, or author ID

Sorting

  • orderby – Sort by: date, title, rand, modified, menu_order (default: date)
  • order – Order: ASC or DESC (default: DESC)

Display Template

  • template – Layout: default, grid-2, grid-3, grid-4, slider, masonry, card, list

Element Visibility

  • show_thumbnail – Show featured image: true or false (default: true)
  • show_categories – Show categories: true or false (default: true)
  • show_date – Show date: true or false (default: true)
  • show_author – Show author: true or false (default: true)
  • show_excerpt – Show excerpt: true or false (default: true)
  • show_comments – Show comments count: true or false (default: true)
  • excerpt_length – Excerpt word count: 1-200 (default: 55)

Customization

  • btn_text – Load more button text (default: «Load More»)
  • end_message – No more posts message (default: «No more posts to load.»)
  • class – Additional CSS classes

Advanced Examples:

“`
// Modern template layouts with design control
[fyplugins_infinite_posts template=»grid-3″ show_excerpt=»false» show_comments=»false»]
[fyplugins_infinite_posts template=»card» excerpt_length=»25″ show_categories=»true»]
[fyplugins_infinite_posts template=»slider» show_thumbnail=»true» show_author=»false»]
[fyplugins_infinite_posts template=»masonry» show_date=»false» class=»portfolio-grid»]

// Different post types with custom styling
[fyplugins_infinite_posts post_type=»product» template=»grid-4″ class=»shop-grid»]
[fyplugins_infinite_posts post_type=»portfolio» template=»masonry» pagination=»button» class=»portfolio-display»]

// Context-aware filtering (automatically detects current page context)
[fyplugins_infinite_posts category=»true» taxonomy=»true» author=»true»]

// Custom filtering and ordering
[fyplugins_infinite_posts category=»5″ orderby=»title» order=»ASC» template=»list»]
[fyplugins_infinite_posts taxonomy=»product_category» posts_per_page=»8″ template=»grid-2″]

// Load more button with custom text and design
[fyplugins_infinite_posts pagination=»button» btn_text=»Show More Articles» end_message=»That’s all folks!» template=»card»]

// Random posts with no pagination
[fyplugins_infinite_posts orderby=»rand» pagination=»none» posts_per_page=»6″ template=»slider»]

// Multiple instances on same page with different templates
[fyplugins_infinite_posts post_type=»news» template=»list» class=»news-section»]
[fyplugins_infinite_posts post_type=»events» template=»card» class=»events-section» pagination=»button»]
«

Context-Aware Intelligence:
When using category="true", taxonomy="true", or author="true", the plugin automatically detects:
– Category archive pages (shows posts from current category)
– Tag archive pages (shows posts with current tag)
– Custom taxonomy pages (shows posts from current taxonomy term)
– Author archive pages (shows posts from current author)
– Regular pages (shows all posts when no context detected)

Supported Post Types:
All public post types including: Posts, Pages, WooCommerce Products, Custom Post Types, Events, Portfolios, Testimonials, and more.

Sorting Options:
date: Publication date (newest or oldest first)
title: Alphabetical by post title
rand: Random order (cache disabled for performance)
modified: Last modification date
menu_order: Custom menu order (useful for pages)

Built-in Template Layouts

Choose from 8 Professional Template Designs

FYP Infinite Posts comes with beautiful, responsive template layouts that work perfectly with any WordPress theme. Each template is optimized for different content types and use cases.

Available Templates:

  1. Default (Full Width) – Clean, single-column layout perfect for blogs and standard content
  2. Grid 2 Columns – Balanced two-column grid ideal for portfolios and image-heavy content
  3. Grid 3 Columns – Popular three-column layout great for product catalogs and galleries
  4. Grid 4 Columns – Compact four-column display perfect for large content collections
  5. Slider/Carousel – Horizontal scrolling layout with navigation, perfect for featured content
  6. Masonry Layout – Pinterest-style staggered grid that adapts to content height variations
  7. Card Layout – Modern card-based design with shadows and hover effects
  8. List View – Minimal, text-focused layout perfect for news articles and simple content

Template Features:
Responsive Design: All templates adapt beautifully to mobile, tablet, and desktop screens
Theme Integration: Templates inherit your theme’s colors, fonts, and styling
Customizable Elements: Control visibility of thumbnails, dates, authors, excerpts, categories, and comments
Performance Optimized: Lightweight CSS with conditional loading per template
Post Type Specific: Each template can be customized for different post types

Template Usage Examples:
«// Use specific templates for different content types
[fyplugins_infinite_posts template="card" post_type="post"] // Blog posts in card layout
[fyplugins_infinite_posts template="grid-3" post_type="product"] // WooCommerce products in 3-column grid
[fyplugins_infinite_posts template="masonry" post_type="portfolio"] // Portfolio items in masonry style
[fyplugins_infinite_posts template="slider" post_type="testimonial"] // Testimonials in carousel format
[fyplugins_infinite_posts template="list" post_type="news"] // News articles in clean list view
"

Design Control Options:
Configure exactly what elements appear in your templates:
– Toggle featured images/thumbnails on or off
– Show or hide post categories and tags
– Control publication dates and author information
– Customize excerpt length (number of words)
– Enable/disable comments count display
– Add custom CSS classes for unique styling

Customizing Post Templates

Complete Design Control with Custom Templates

FYP Infinite Posts provides a powerful template system that gives you complete control over how your posts are displayed. Create stunning, unique layouts that perfectly match your website’s design.

Template Override System:

  1. Create template directory in your theme: /wp-content/themes/your-theme/fyplugins/infinite-posts/
  2. Copy default templates from /wp-content/plugins/fyp-infinite-posts/includes/templates/
  3. Create custom templates for specific post types and layouts:
    {post-type}-{template}-item.php – For specific post type with specific template (e.g., post-grid-3-item.php)
    default-{template}-item.php – For specific template, any post type (e.g., default-card-item.php)
    {post-type}-default-item.php – For specific post type, default template (e.g., product-default-item.php)

Available Template Files to Customize:
default-default-item.php – Default full-width layout
default-grid-2-item.php – Two-column grid layout
default-grid-3-item.php – Three-column grid layout
default-grid-4-item.php – Four-column grid layout
default-slider-item.php – Slider/carousel layout
default-masonry-item.php – Masonry/Pinterest-style layout
default-card-item.php – Modern card layout
default-list-item.php – Clean list layout

Enhanced Template Hierarchy (NEW in v1.2.0):
1. Child theme: /wp-content/themes/child-theme/fyplugins/infinite-posts/{post-type}-{template}-item.php
2. Parent theme: /wp-content/themes/parent-theme/fyplugins/infinite-posts/{post-type}-{template}-item.php
3. Child theme: /wp-content/themes/child-theme/fyplugins/infinite-posts/default-{template}-item.php
4. Parent theme: /wp-content/themes/parent-theme/fyplugins/infinite-posts/default-{template}-item.php
5. Child theme: /wp-content/themes/child-theme/fyplugins/infinite-posts/{post-type}-default-item.php
6. Parent theme: /wp-content/themes/parent-theme/fyplugins/infinite-posts/{post-type}-default-item.php
7. Plugin template: /wp-content/plugins/fyp-infinite-posts/includes/templates/{post-type}-{template}-item.php
8. Plugin template: /wp-content/plugins/fyp-infinite-posts/includes/templates/default-{template}-item.php
9. Plugin template: /wp-content/plugins/fyp-infinite-posts/includes/templates/{post-type}-default-item.php
10. Default fallback: /wp-content/plugins/fyp-infinite-posts/includes/templates/default-default-item.php

Template Examples:

Modern Card Layout:
php
<article class="infinite-post-card">
<div class="post-thumbnail">
<?php if (has_post_thumbnail()): ?>
<a href="<?php the_permalink(); ?>">
<?php the_post_thumbnail('medium', ['class' => 'card-image']); ?>
</a>
<?php endif; ?>
</div>
<div class="post-content">
<h3 class="post-title">
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</h3>
<div class="post-meta">
<span class="post-date"><?php echo get_the_date(); ?></span>
<span class="post-author">by <?php the_author(); ?></span>
</div>
<div class="post-excerpt">
<?php the_excerpt(); ?>
</div>
</div>
</article>

Minimal List Layout:
php
<div class="infinite-post-minimal">
<h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
<p class="post-meta"><?php echo get_the_date(); ?> • <?php the_author(); ?></p>
</div>

Available Template Variables:
All standard WordPress template functions are available in your custom templates, plus new display control variables:
$show_thumbnail – Boolean to control featured image display
$show_categories – Boolean to control category display
$show_date – Boolean to control date display
$show_author – Boolean to control author display
$show_excerpt – Boolean to control excerpt display
$show_comments – Boolean to control comments count display
$excerpt_length – Integer for excerpt word count
the_title(), get_the_title()
the_content(), the_excerpt()
the_permalink(), get_permalink()
the_post_thumbnail(), has_post_thumbnail()
the_author(), get_the_author()
the_date(), get_the_date()
the_category(), get_the_category()
the_tags(), get_the_tags()
– Plus all custom fields and metadata

Roadmap & Future Enhancements

Planned features for upcoming versions:

Content & Filtering

  • Advanced multi-taxonomy filtering
  • Search integration
  • Date range filtering
  • Custom meta field filtering

Editor Integration

  • Gutenberg block with live preview
  • Widget support for sidebars

Performance & UX

  • Enhanced loading animations
  • Background post preloading
  • Configurable cache duration
  • User engagement tracking

E-commerce & Advanced

  • WooCommerce product variations support
  • Multi-site network support
  • Settings import/export
  • Enhanced accessibility (WCAG compliance)

Have feature ideas? Visit the WordPress support forum or francoisyerg.net.

Screenshots

  • Powerful admin panel – Set the shortcode defaults for an easy use.
  • Templates settings – Set default template and manage what to show / hide.
  • Unified design settings – Set colors once for all FYPlugins templates and save time.
  • Full width template – Default template with wide pictures.
  • Horizontal slideshow – Perfect template to display featured posts.
  • Grid template – 2, 3 or 4 columns responsive template.
  • Card template – Modern responsive template that fit every content width.
  • List template – Beautiful post list template.

Installation

Automatic Installation (Recommended)

  1. Login to your WordPress admin dashboard
  2. Navigate to Plugins Add New
  3. Search for «FYP Infinite Posts»
  4. Click «Install Now» and then «Activate»

Manual Installation

  1. Download the plugin ZIP file
  2. Go to Plugins Add New Upload Plugin
  3. Upload the ZIP file and click «Install Now»
  4. Activate the plugin

Quick Setup

  1. Go to FYPlugins Infinite Posts in WordPress admin
  2. Configure default settings in the Settings tab:
    • Pagination type (scroll, button, or none)
    • Post type to display
    • Posts per page and offset
    • Sort order and field
  3. Customize appearance in the Template tab:
    • Choose from 8 template layouts
    • Toggle display elements (thumbnails, dates, authors, excerpts, etc.)
    • Set excerpt length
  4. Use the shortcode [fyplugins_infinite_posts] in any post, page, or widget

First Test

Add this shortcode to any page: [fyplugins_infinite_posts posts_per_page="3"]

FAQ

Does this plugin work with any theme?

Yes! FYP Infinite Posts works with all WordPress themes. It uses semantic HTML and minimal CSS that adapts to your theme’s styling. The 10-level template hierarchy system allows complete customization for any theme.

What loading methods are available?

Three flexible options:
* Infinite Scroll – Auto-loads posts on scroll (vertical or horizontal for sliders) using Intersection Observer API
* Load More Button – Manual loading with customizable button text
* None – Static display without pagination

How does the caching system work?

The plugin uses WordPress transients to cache query results for 15 minutes (900 seconds). This improves performance and reduces database load. The cache automatically clears when posts are created, updated, deleted, or when terms are modified. Note: Random orderby disables caching.

What is context-aware filtering?

When you use category="true", taxonomy="true", or author="true", the plugin automatically detects:
* Category archive pages Shows posts from current category
* Tag archive pages Shows posts with current tag
* Custom taxonomy pages Shows posts from current term
* Author archive pages Shows posts from current author
* Regular pages Shows all posts

Can I use custom post types?

Yes! The plugin supports all public post types:
* WordPress Posts and Pages
* WooCommerce Products
* Custom Post Types (portfolios, events, testimonials, etc.)
* Any post type created by themes or plugins

How can I customize the display?

Multiple ways to customize:
* 8 Built-in Templates – Default, Grid 2/3/4, Slider, Masonry, Card, List
* Template Override System – 10-level hierarchy: {post-type}-{template}-item.php in your theme
* Display Controls – Toggle thumbnails, categories, dates, authors, excerpts, comments
* CSS Classes – Add custom classes for styling
* Admin Panel – Settings and Template tabs for global defaults

How is performance optimized?

  • Smart Caching – 15-minute transient caching with auto-invalidation
  • Conditional CSS – Only loads styles for templates in use
  • Optimized Queries – Efficient tax_query with category fallback
  • Memory Efficient – Disables unnecessary post meta cache
  • Intersection Observer – Modern API for efficient scroll detection

Is it mobile-friendly?

Fully responsive! Features include:
* Mobile-optimized scroll detection (Intersection Observer)
* Touch-friendly buttons and interfaces
* Horizontal scroll support for slider template
* Responsive loading animations
* All templates adapt to mobile, tablet, and desktop

Can I use multiple instances on one page?

Yes! Each shortcode instance is independent with:
* Unique IDs for separate tracking
* Different post types per instance
* Individual pagination settings
* Custom CSS classes
* Independent AJAX loading

Is it secure?

Yes! Security features include:
* WordPress nonce verification for all AJAX requests
* Data sanitization and validation
* Prepared statements for database queries
* No direct file access
* Follows WordPress coding standards

Reviews

There are no reviews for this plugin.

Contributors & Developers

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

Contributors

Translate “FYP Infinite Posts” into your language.

Interested in development?

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

Changelog

1.2.0 – Major Template & Design Enhancement Release

  • NEW: 8 Professional Template Layouts – Default, Grid (2/3/4 columns), Slider, Masonry, Card, and List
  • NEW: Enhanced Admin with Settings and Template tabs for complete control
  • NEW: Advanced Display Controls – toggle thumbnails, categories, dates, authors, excerpts, comments
  • NEW: Smart Boolean Conversion – properly handles string boolean values like show_author="false"
  • NEW: Enhanced Template Hierarchy – 10-level system with {post-type}-{template}-item.php naming
  • NEW: Slider/Carousel template with horizontal scrolling and touch support
  • NEW: Masonry layout for Pinterest-style responsive grids
  • NEW: Card layout with modern design and hover effects
  • NEW: List view template for minimal content display
  • NEW: Intersection Observer API for efficient scroll detection (vertical and horizontal)
  • IMPROVED: Conditional CSS loading – only loads styles for templates being used
  • IMPROVED: Template loading performance with smart fallback system
  • IMPROVED: Mobile responsiveness across all templates
  • IMPROVED: Better integration with WordPress theme styling
  • UPDATED: Compatibility with WordPress 6.9
  • UPDATED: Code organization and template architecture

1.1.1 – Core Framework Update

  • UPDATED: FYPlugins Core to version 1.2.1

1.1.0 – Performance & Features Enhancement

  • NEW: Comprehensive admin settings panel at FYPlugins Infinite Posts
  • NEW: Author filtering with context-aware detection on author archive pages
  • NEW: author parameter for shortcode with auto-detection capability
  • NEW: Additional sorting options: modified date and menu order
  • NEW: Smart cache invalidation – auto-clears when posts are created, updated, or deleted
  • NEW: Term modification hooks for cache invalidation
  • IMPROVED: Enhanced 15-minute transient caching system
  • IMPROVED: Optimized database queries with better argument handling
  • IMPROVED: Memory-efficient code with disabled meta cache when not needed
  • IMPROVED: PSR-4 autoloading with proper namespacing
  • IMPROVED: Error handling with graceful degradation
  • UPDATED: Translation files

1.0.2 – Caching & Taxonomy Support

  • NEW: Request caching for better performance and reduced database load
  • NEW: Comprehensive taxonomies support for custom post types
  • NEW: taxonomy parameter to shortcode for advanced content filtering
  • FIXED: Category detection not always working correctly on archive pages
  • IMPROVED: Query optimization for better performance on large sites

1.0.1 – Styling Enhancement

  • NEW: class parameter to shortcode for custom CSS styling and layout control
  • IMPROVED: CSS structure for better theme compatibility
  • ENHANCED: Documentation with additional usage examples

1.0.0 – Initial Release

  • Beautiful infinite scroll functionality with smooth AJAX loading
  • Customizable shortcode [fyplugins_infinite_posts] with multiple parameters
  • Support for all public post types including custom post types
  • Multiple pagination options: infinite scroll, load more button, or none
  • Template override system for complete design control
  • Lightweight CSS and JavaScript with minimal impact on site speed
  • Secure AJAX implementation with proper nonce verification