Title: Inject Query Posts
Author: Scott Reilly
Published: <strong>27. septembra 2010</strong>
Last modified: 23. apryla 2025

---

Tykace pytaś

![](https://ps.w.org/inject-query-posts/assets/banner-772x250.png?rev=824148)

![](https://ps.w.org/inject-query-posts/assets/icon-128x128.png?rev=972934)

# Inject Query Posts

 Wót [Scott Reilly](https://profiles.wordpress.org/coffee2code/)

[Ześěgnuś](https://downloads.wordpress.org/plugin/inject-query-posts.3.0.5.zip)

 * [Drobnostki](https://dsb.wordpress.org/plugins/inject-query-posts/#description)
 * [Pógódnośenja](https://dsb.wordpress.org/plugins/inject-query-posts/#reviews)
 *  [Instalacija](https://dsb.wordpress.org/plugins/inject-query-posts/#installation)
 * [Wuwiśe](https://dsb.wordpress.org/plugins/inject-query-posts/#developers)

 [Pódpěra](https://wordpress.org/support/plugin/inject-query-posts/)

## Wopisanje

This plugin provides a function for use by developers who have their own code for
fetching posts according to a given criteria and now want to make use of loop-aware
template tags to display those posts.

WordPress’s template tags are intended to be used within ‚the loop‘. The loop is
managed by a WP_Query object which sets up various global variables and its own 
object variables for use by the various template tags. The primary purpose of a 
WP_Query object is to actually query the database for the posts that match the currently
specified criteria. However, if you don’t need to query for posts since you already
have them by some other means, you can still take advantage of the template tags
by injecting those posts into the WP_Query via this plugin.

Depending on the template tags you are looking to use, or the logic you are hoping
to employ within a loop, you may need to manually configure some of the query object’s
variables.

Example:

    ```
    <?php // Say we're in the sidebar

    // We've gotten some post objects on our own.
    $posts = c2c_get_random_posts( 5, '' );

    // Inject the posts
    c2c_inject_query_posts( $posts );

    // Now let's display them via template tags:
    if ( have_posts() ) :
        while ( have_posts() ) : the_post(); ?>

            <li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>

        <?php endwhile;?>
    <?php endif; ?>
    ```

Links: [Plugin Homepage](https://coffee2code.com/wp-plugins/inject-query-posts/)
| [Plugin Directory Page](https://wordpress.org/plugins/inject-query-posts/) | [GitHub](https://github.com/coffee2code/inject-query-posts/)
| [Author Homepage](https://coffee2code.com)

### Developer Documentation

Developer documentation can be found in [DEVELOPER-DOCS.md](https://github.com/coffee2code/inject-query-posts/blob/master/DEVELOPER-DOCS.md).
That documentation covers the template tag and hooks provided by the plugin.

As an overview, this is the template tag provided by the plugin:

 * `c2c_inject_query_posts()` : Template tag to inject an array of posts into a 
   query object as if that query object had obtained those posts via a query.

These are the hooks provided by the plugin:

 * `inject_query_posts_preserve_query_obj` : Overrides the value of the `$preserve_query_obj`
   argument passed to the function. This is not typical usage for most users.
 * `c2c_inject_query_posts` : Allows use of an alternative approach to safely invoke`
   c2c_inject_query_posts()` in such a way that if the plugin were deactivated or
   deleted, then your calls to the function won’t cause errors in your site.

## Instalacija

 1. Install via the built-in WordPress plugin installer. Or install the plugin code
    inside the plugins directory for your site (typically `/wp-content/plugins/`).
 2. Activate the plugin through the ‚Plugins‘ admin menu in WordPress
 3. Use the `c2c_inject_query_posts()` function to inject an array of posts into a 
    WP query object. Specify the posts array as the first argument. Configure the query
    object by passing an array as the second argument. If specifying a WP query object,
    pass it as the third object; if not specified then the global wp_query object will
    be assumed.

## Reviews

There are no reviews for this plugin.

## Sobustatkujuce a wuwijarje

„Inject Query Posts“ jo software wótwórjonego žrědła. Slědujuce luźe su pśinosowali
k toś tomu tykacoju.

Sobustatkujuce

 *   [ Scott Reilly ](https://profiles.wordpress.org/coffee2code/)

[Translate “Inject Query Posts” into your language.](https://translate.wordpress.org/projects/wp-plugins/inject-query-posts)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/inject-query-posts/),
check out the [SVN repository](https://plugins.svn.wordpress.org/inject-query-posts/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/inject-query-posts/)
by [RSS](https://plugins.trac.wordpress.org/log/inject-query-posts/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 3.0.5 (2025-04-22)

 * Change: Note compatibility through WP 6.8+
 * Change: Note compatibility through PHP 8.3+
 * Change: Update copyright date (2025)
 * Unit tests:
    - Change: Explicitly define return type for overridden method

#### 3.0.4 (2024-08-02)

 * Change: Note compatibility through WP 6.6+
 * Change: Update copyright date (2024)
 * New: Add `.gitignore` file
 * Change: Reduce number of ‚Tags‘ from `readme.txt`
 * Change: Remove development and testing-related files from release packaging
 * Unit tests:
    - Hardening: Prevent direct web access to `bootstrap.php`
    - Allow tests to run against current versions of WordPress
    - New: Add `composer.json` for PHPUnit Polyfill dependency
    - Change: In bootstrap, store path to plugin directory in a constant

#### 3.0.3 (2023-05-18)

 * Change: Add link to DEVELOPER-DOCS.md to README.md
 * Change: Tweak installation instruction
 * Change: Tweak some documentation text spacing and fix a typo
 * Change: Note compatibility through WP 6.3+
 * Change: Update copyright date (2023)
 * New: Add a potential TODO feature

_Full changelog is available in [CHANGELOG.md](https://github.com/coffee2code/inject-query-posts/blob/master/CHANGELOG.md)._

## Meta

 *  Version **3.0.5**
 *  Last updated **12 mjasece**
 *  Active installations **10+**
 *  WordPress version ** 3.6 abo nowša **
 *  Tested up to **6.8.5**
 *  Language
 * [English (US)](https://wordpress.org/plugins/inject-query-posts/)
 * Tags
 * [loop](https://dsb.wordpress.org/plugins/tags/loop/)[posts](https://dsb.wordpress.org/plugins/tags/posts/)
   [query](https://dsb.wordpress.org/plugins/tags/query/)[template tags](https://dsb.wordpress.org/plugins/tags/template-tags/)
   [wp_query](https://dsb.wordpress.org/plugins/tags/wp_query/)
 *  [Rozšyrjony naglěd](https://dsb.wordpress.org/plugins/inject-query-posts/advanced/)

## Pógódnośenja

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/inject-query-posts/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/inject-query-posts/reviews/)

## Sobustatkujuce

 *   [ Scott Reilly ](https://profiles.wordpress.org/coffee2code/)

## Pódpěra

Got something to say? Need help?

 [Forum pomocy pokazaś](https://wordpress.org/support/plugin/inject-query-posts/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=6ARCFJ9TX3522)