Pod Pages

WordPress pages on steroids
Pod Pages are different from WP Pages because they support PHP code and wildcards. Wildcards are useful if you'd like a single Pod Page to be able to handle multiple URLs. Pod Pages can sit ontop of existing WP Pages, Posts, or other URLs without effecting their functionality. With this, you can add additional complex functionality easily. In most cases, developers choose to have completely separate URLs from existing WP object items which is also very useful.

Wildcards? WTF?

Wildcards let you re-use Pod Pages. If you have a bunch of events created using Pods, you could create a Pod Page named events/* that'll handle all URLs beginning with "events/" (unless a more specific Pod Page is found).
So, http://yoursite.com/events/my-event and http://yoursite.com/events/another-event and even http://yoursite.com/events/my/event will all share the same Pod Page.

$pods - Page Titles and Checks

If you use $pods as your Pod in your Precode, you can then use {@magic_tags} in your Pod Page Title (if $pods is set to a specific item), and use
global $pods;
to access your $pods data across your theme, or Pod Page php code. You can also check within your Precode to see if the item being dynamically pulled into your $pods Pod is valid, if(empty($pods->data)) then you can redirect to another page, or any other functionality you'd like:
if (empty($pods->data)) {
    wp_redirect('../'); // Redirect to the page above if the item doesn't exist
    die(); // Stop the page from doing anything else and making sure the Redirect happens
}

Additionally, if you want the Pod Page to stop running, simply set $pods to 404 using the following code:
if (empty($pods->data)) {
    $pods = 404; // Show standard WP 404 page if the item doesn't exist
}

Concept - List vs. Detail pages

There are two main "types" of pages on the internet. There are pages that contain groupings of items (List pages), and there are pages that primarily display details about a single item (Detail pages).

List pages

To fetch a listing of items, you would use the Pod() class along with findRecords(). The findRecords method is used to display items in a certain order that meet certain criteria. See findRecords for more info.
<?php
// Event columns: "name", "start_date", "end_date", "approved"
$pods = new Pod('event');

// Find 25 approved, upcoming events
$pods->findRecords('start_date ASC', 25, "t.start_date >= NOW() AND t.approved = 1");

// See the "Displaying Pod Items" page for more options
echo $pods->showTemplate('my_event_template');
?>

Detail pages

We can pass a single ID or slug directly into the Pod class. This avoids the need to use findRecords. It's still the developer's responsibility to find the ID or slug to pass in. There is, however, a useful function called pods_url_variable that makes it easy to retrieve a variable from the URL string.
<?php
// Example URL: http://mysite.com/events/my-test-event
$slug = pods_url_variable(1); // returns "my-test-event"

$pods = new Pod('event', $slug);
echo $pods->showTemplate('my_event_template');
?>
NOTE: If passing in an ID, use the one from the pod's own table (e.g. wp_pod_tbl_event), NOT wp_pod.

Working with files

You can work with files directly, rather than editing code in admin. You'll then be able to use your own code editor, and some like to keep PHP code out of the database. Simply create a template file (see WordPress templates), then select that template from the "Page Template" dropdown when editing your Pod Page.

Output

Pod Page code is run in your template file with:
pods_content();
You can also enter code in the the "Precode" section, which runs before any output is sent by WP for your theme.
Wordpress Cloud Hosting