Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Sign Up

Harnessing the Power of IPS Pages
   (1 review)

Sadrienne
  • Welcome to this shiny new documentation on IPS Pages (formerly known as IP.Content), the content management component of the community suite system by InvisionPower Services. This documentation will guide you through what Pages is, the benefits you'll get from working with a full content management system, and guide you through some of the most excellent features of a very powerful software.

    Software: Invision Power Services (IPS)

HARNESSING THE POWER OF IPS PAGES

a documentation by Mousie

 

First of all, what is  IPS Pages?

Pages is a component of InvisionPower Service's community suite that allows you to create, store, and manipulate data outside of your main forum structure. Formerly known as IP.Content, the system has evolved into three main sections: Pages, Blocks and Databases. All three of these elements can be utilised to create features unique to your forum. At it's base, Pages is a content management system. The addition of custom databases and build-your-own PHP blocks means that Pages is far more than just a place to store your articles and other information.

 

Some interesting ways to use Pages include:

  • A character application system that takes information via a form, and outputs it to a beautiful character sheet (without the member needing to navigate any code)
  • A job board that can be updated in just a few clicks
  • A full timeline system that members can submit their own events to
  • A play-by/face claim system that automatically lists all faces in use
  • A fully automated scoring system that updates once an entry is submitted
  • An enrollment/sign up system that can be searched and entries filtered

 

And those are just the examples I've tried myself.

 

Here on RPG Initiative, almost every feature is run through Pages. That's right! The RP Directory, Play-by Directory, Writing Partners, and yes--this guide you're reading right now!--are all built off the incredibly flexible Pages system. So let's break it down a little, and see what Pages has to offer.

 

The three main elements

As I said above, there are three main elements to Pages: Pages, Blocks and Databases.

a11bd26e81f5c5df07c3e10a37f1cc03.png


You can see here that Pages and Blocks are listed under Page Management, while Databases is listed under Content. 

 

But what exactly are they?

 

Pages

Pages is exactly what it sounds like---a function of the app that allows you to create custom HTML pages to display on your site. In most cases, you will create Pages to display Blocks or Databases, but you may also wish to use them to display content of your own coding. There are two ways to build a page:

  • Page Builder: This allows you to use the > symbol at the left-hand side of the page to drag and drop premade blocks onto the page where you would like them to display. This is recommended for most pages, as drag and drop is way more fun than finding where you coded that pesky element into the template!
  • Manual HTML: For complete control, or if you want to display content that is not contained in a block, you may choose to use the manual html option. 
     

4d5aa2c20e60daee7472961793a7efab.png

 

In either case, you will be asked whether you want to use the "suite HTML wrapper", which basically means that you won't need to manually code in things like the header, footer, and other fun (but annoying) stuff. 

 

Blocks

Blocks are essentially chunks of code that serve a particular purpose. Perhaps there's a list of links you would like to display in multiple locations on your site (but don't want to update five different versions of the list every time you want to add or remove a link), or you would like to display more dynamic content such as an online user list or recently updated topics. Blocks allow you to create a widget-like structure that you can drop into place, code into a template, and re-use as many times as you need to. 

 

Blocks can be placed in the sidebars of your forum system, beneath the forums, above the forums, beside and around databases, in fact--anywhere you can drop a block in Page Builder, or anywhere you can slip it into a template! In the example below, both the timeline listing and the timeline menu are constructed with Blocks.
 

0682b0dc6204380abb93821af837165f.png

 

And here? Each of the house point scores (the numbers themselves) is its own block, nested within the larger House Points block (which is contained by the Header block)
 

72f9eab24c5bbc50998cbadcc53af9b1.png

 

You can nest blocks to construct complex pages, which is useful if you'd like to divvy up your code so you can find what you need to edit easily. I have separate blocks for News, Events, our current banner, and so on. I hate reading through lines of code to find the segment I need to edit, and with Blocks I don't have to. 

 

So blocks can make building and updating your site a breeze, but that's not all they're good for. But first, let's look at the types of blocks you can create.

 

Block types

There are two main types of blocks that you can make use of:

  • Custom: This allows you to use your own HTML and/or PHP to create the block and the output it will display.
  • Plugin: This utilises existing feed sets to quickly build a block that suits your needs.

 

The list of plugin blocks typically available includes things like users online, feeds from your databases, recent topic blocks, recent posts, status updates, and a whole range of other functions that are built into the board. This is not the full list, but you get the idea.
 

a6f49ab365d11c0367f312064b3fc3b7.png

 

If you choose to delve into Custom blocks, you'll get the following options:
 

669f4497af789bdebe78f7537272e04f.png

 

  • Editor: This is the WYSIWYG editor you get for posts. It's most powerful when being used for fancy formatted text and links.
  • Manual HTML: Like the box says, here you can use your own HTML codes. Good for blocks that require more HTML structure than the Editor will do easily. These are ideal for structuring headers and menus.
  • Manual PHP: Here the fun really starts. PHP blocks can access database information, manipulate data, and display information in a meaningful way. In the above example of the house points block, the point totals are never manually updated. They are calculated by a PHP block that displays the numbers in the header like magic)

 

Getting your head around Blocks can be a challenge, but it's worth it! 

 

Databases

The last of the main elements, Databases give you a whole new way to store and retrieve information. Within Pages, you can create an unlimited number of databases, each with their own custom fields, for almost any purpose you can think of. An RP forum might use a database to manage and display character bio sheets, to hold board and setting information, or to run a quotes and highlights system. Databases combined with PHP blocks to manipulate the data contained inside them can create a face claim list that updates when applications are approved (without needing to be edited? You read that right), and even the timeline system shown in the example above. 

 

Information contained in Databases is also given a higher priority/rank when indexed by search engines (unless your sitemap is configured differently). That means that Google is more likely to use this content to find and index keywords than it is most other content on your forums. Keeping your main information contained in an articles database is highly recommended. 

 

For all the versatility they offer, databases are relatively easy to set up. As said above, RPG Initiative makes use of databases in different ways across the board. The RPG Directory and Roleplaying Guides systems are two great examples of the same software being used in different ways to offer different services. 

 

Structuring Databases

Databases can be set up very similar to forums, as categories that contain other categories. Or, you may choose to store all your records for a database together. There are pros and cons to both options. As database records can be filtered by certain fields (see below), you may find it useful not to have categories at all as members can use the filters to find the content they're looking for. Here at RPG Initiative, we affectionately call this the "Morrigan's Heathen Chaos method". 

 

Database Content

Database content has three main components: the title, the content itself, and any additional custom fields. If enabled, you can also assign prefixes and tags to your database content (useful if you want to use a particular tag to mark your essential information, and so on).
 

  • The title: will determine what the record is called in the display and listing templates, and must be a text string.
  • The content: will be the primary chunk of information stored in the record, usually a longer piece of text (such as an article) or a description field.
  • The custom fields: additional content that is not being used as the title or content.

 

You can set a custom field to act as the title or content, depending on what type of field it is. Fields assigned title/content will display a little differently in the default templates.

 

Custom fields

I'm going to go into the custom fields available through Databases, even though (for the most part) they are the same fields found throughout the IPS suite. Many of these fields can also be used as custom fields in the Profile system of the core app. By combining different types of custom fields, and modifying templates to suit how you want the information from your database displayed, you can create automated lists, code-free applications, and easy ways for members to submit content for a variety of purposes. 

 

I have skipped over Spotify/Soundcloud and YouTube fields. In the examples below, a field that is "filterable" means that it can be used to search and narrow down results in the record filter block. "Unique" means the field can be set to only accept values that are unique in that database (eg. the field cannot contain the  same content in more than one record). "Multiple selection" means that more than one answer can be selected/submitted.

 

Address:

A full address field.

dda548db6852016ec2b907092b5b08a0.png

  • Filterable: No
  • Unique: No

 

Checkbox:

A single checkbox that can either be ticked, or unticked.

6efad5fe1b06409ca8b46aecdfe6181c.png

  • Filterable: No
  • Unique: No

 

Checkbox Set:

A set of checkboxes that can be ticked or unticked. 

9592a1770961c05c23b2bd93ad1826ad.png

  • Filterable: Yes
  • Unique: No
  • Multiple Selection: Yes

 

Code:

A box that will accept code, and format it appropriately for display.

2a8407dd26dfb6510adf4a3504281180.png

  • Filterable: No
  • Unique: No

 

Date:
A date field (optionally including time input). Goes back as far as 1901. Values stored in database as a Unix timestamp.

36e7fe347476f6af00c41a7f1f3d79f8.png

  • Filterable: Yes
  • Unique: No
  • Allow time input: Yes

 

Editor:

The full WYSIWYG editor common to most posting areas of IPS. Allows for easy formatting of large text areas, HTML use, and an upload field (optional).

c34d9e67b490824e225d2d9e102088fa.png

  • Filterable: No
  • Unique: No

 

Email:

An email address field that will only accept a valid email input.

019c272cad035b7ce82f43c87c1f579a.png

  • Filterable: No
  • Unique: Yes
     

Database Relationship:

Select record(s) from another database on the system to connect with this record (example below shows linking to an available job post record). Outputs a direct link to the record(s) selected.

c682d27a38380cac0961ad86f20bcf8a.png

  • Crosslink Records: Yes
  • Multiple Selection: Yes

 

Member:

Select a member to link in the field. Outputs a linked and styled username display.

a2a999a6a8f0583dde9eb30624c2a20a.png

  • Unique: Yes
  • Multiple Selection: Yes

 

Number:

A field that can only be filled with a valid number input.

f56c517c91546d9d11956ea5e092063b.png

  • Unique: Yes
  • Filterable: No

 

Password:

Input converts to stars for privacy.

064516d94d685fcf56707f209df41e47.png

  • Unique: No
  • Filterable: No

 

Radio:

Radio select button, single answer only.

b570c1dee94eb146766320ea2c8d7e78.png

  • Unique: Yes
  • Filterable: Yes

 

Select Box:

Common drop-down style select box. Allows for multiple selections.

01896155ae43f7bfe68ae86b5652fbea.png

  • Unique: Yes
  • Filterable: Yes
  • Multiple Selection: Yes

 

Text:

Single line text box.

6d31857b943666e56a924b0697e75ae7.png

  • Unique: Yes
  • Custom input validation: Yes
  • Accept HTML: Yes

 

Text Area:

Multi-line simple text box.

807efa84ca88a665cf9657d14d440aa0.png

  • Unique: Yes
  • Custom input validation: Yes
  • Accept HTML: Yes

 

Upload:
Upload field for images and other files. 

7d1c0656dc3a3374b5f05c13b362577a.png

  • Allow multiple uploads: Yes
  • Thumbnail dimensions: Yes
  • Image dimensions: Yes
  • Images only or any files: Yes

 

URL:

URL input field that will only accept a valid URL.

b1bdf01293d0bf838fb9190ceabd638b.png

  • Unique: Yes
  • Filterable: No

 

Yes/No:

Simple toggle switch, yes/no answer option.

4388582251fbd62769d579f6a58484c7.png

  • Unique: No
  • Filterable: Yes

 

Database templates

Database templates determine how the information contained in your database will be displayed. You can have a variety of different templates assigned to different databases, which means you can design a look and feel that reflects the purpose of the database. Think about how the RPG Directory here looks and feels different to the Guides database. The template types are as follows:

 

  • Category templates: this determines how the database categories will look and be displayed.
  • Listing templates: this determines how the records look when in a list display.
  • Display templates: this determines how the full record will display when on its own (think: character sheets, RPG listings).
  • Add/edit form templates: this determines how the form to submit a record will look and feel.

 

You can add and edit templates using the Templates section of Pages (note: not the main theming templates).

 

Wrapping up

Now that you've seen a little of what Pages contains and can do, hopefully you've got some amazing ideas! If you're not sure whether something is possible, post it below---let's see if we can figure it out! And I'd love to see your creative and innovative ways to use Pages, the greatest app in the IPS suite!




User Feedback


×

Important Information

By using this site, you agree to our Terms of Use, Guidelines and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.