With XThreads, we can create thread prefix. More than that, we can filter the threads based on their prefix.
Here is a simple way to do that:
1. Create a Custom Thread Fields with this settings:
- Title: Prefix
- Key: prefix
- Applicable Forums: 'select a forum that we want the prefix to be applied'
- Input Field Type: Listbox
- Field Input Height: 1
If we want multi prefix for a single thread, fill the Field Input Height with a value that greater than 1.
- Values List:
Name it as our need.
- Editable by / Required Field?: Everyone (Required)
- Allow Filtering: Yes
- Display Format:
If we want multi prefix, this will be the "main" display format.
- Allow multiple values for this field: No
If we want multi prefix for a single threads, choose Yes
- Multiple Value Delimiter:
The Multiple Value Delimiter setting will be displayed if we choose Yes in Allow multiple values for this field setting. This is separator for each prefix.
- Display Item Format:
The Display Item Format setting will be displayed if we choose Yes in Allow multiple values for this field setting. This is the display format for each prefix.
- Formatting Map List:
2. We need to edit our
forumdisplay_thread template. The basic concept for this edit process is, adding
{$GLOBALS['threadfields']['prefix']} variable into the
forumdisplay_thread template. The prefix will be displayed wherever we put the variable in the template.
In this example, we will put the prefix before Thread Subject:
We can find this code in our
forumdisplay_thread template (based on the default template):
Then, add the {$GLOBALS['threadfields']['prefix']} variable. So, the code will be like this:
Additional info:
- The filtering url has a general structure:
Quote:{$forumurl?}filtertf_Key_for_the_field=Name of each prefix
In the example above:
Key_for_the_field = prefix
Name of each prefix = Prefix1, Prefix 2, and Prefix 3.
So, the filtering URL will be like this:
Quote:{$forumurl?}filtertf_prefix=Prefix 1
{$forumurl?}filtertf_prefix=Prefix 2
{$forumurl?}filtertf_prefix=Prefix 3
- We can do some experiment with these three settings if we want multi prefix: Display Format, Multiple Value Delimiter and Display Item Format.
Example 1:
Display Format = [{VALUE}]
Multiple Value Delimiter = , (plus one space)
Display Item Format = {VALUE}
Result:Quote:[Prefix 1, Prefix 2, Prefix 3] Thread Title
Example 2:
Display Format = {VALUE}
Multiple Value Delimiter = one space
Display Item Format = [{VALUE}]
Result:Quote:[Prefix 1] [Prefix 2] [Prefix 3] Thread Title
Example 3:
Display Format = {VALUE}
Multiple Value Delimiter = one space|one space
Display Item Format = {VALUE}
Result:Quote:Prefix 1 | Prefix 2 | Prefix 3 Thread Title
- We can use image for the output of each prefix.
Display Format = {VALUE}
Multiple Value Delimiter = one space
Display Item Format = {VALUE}
Formatting Map List:
- We can use the Prefix Filtering system as category for our XThreads application.