pre_get_posts

pre_get_posts is an action fired at the beginning of the get_posts() function.

Context:

File: wp-includes/classes.php
	function &get_posts() {
		global $wpdb, $pagenow, $request, $user_ID;

		do_action('pre_get_posts', array(&$this));

		// Shorthand.
		$q = $this->query_vars;

This hook is an action which means that it primarily acts as an event trigger, instead of a content filter. This is a semantic difference, but it will help you to remember what this hook does if you use it like this: add_action('pre_get_posts', 'your_function');

This hook was introduced in WordPress 2.0, and will not work in earlier versions.