Contact BigFish

BigFish Online Help

# Managing Content

## Overview

- Content can be included in many different areas within BigFish.
- Primary content is accessed via the Admin -> Content function. Content is also maintained as part of the Email Templates
- Content can take make many forms:
  - HTML tags. All HTML tags can be used within content. References to styling within the CSS is encouraged. For example, a Static Page may look like:

        <h1>About Us</h1>
        <p>This is a paragraph that describes our company</p>

  - Freemarker Code (FTL) can also be included. For example, a common usage would within SI_SHOPPING_CART will determine if there is 1 item in the cart and therefore display “1 Item”, otherwise “n Items” will be displayed.

        <#if ${CART_ITEMS_QTY!} == 1>
           Item
        <#else>
           Items

## Creating reusable content

- BigFish has a Content Library function that allows for generic reusable content to be defined and then reused in other content areas
- This reusable content is defined the same as any other piece of content, it can include both HTML tags and Freemarker code.
- For example:
  - Define a reusable content spot in the Content Library called “MY_REUSABLE_CONTENT”:

      <p>This is My-Content that sis reusable</p>

  - Include this piece of content by using the following syntax:

      <@renderContentAsText contentId="MY_REUSABLE_CONTENT" />

## Including data attributes at runtime

- Data Attributes can be:
  - System Parameters: this is to define static values that can be used within Content. For example, the system parameter EMAIL_CLNT_NAME is defined solely to be used within Content (it does not impact processing).
  - Dynamic Variables: these are resolved at runtime. For example, including the customer registration information in an email.
- A feature of Freemarker is that data can be included in the content. For example:
  - Assume that the System Parameter EMAIL_CLNT_NAME has a value of “ACME”
  - Assume that an email template has the following content:

      <P>Welcome to ${EMAIL_CLNT_NAME!}</p>

  - The email would be rendered as:
  `

      Welcome to ACME

  `
- In addition to System Parameters, BigFish has exposed many dynamic variables that can be included in content. For example:
  - Assume that a new customer registered. Customer entered a first name of “John” and a last name of “Smith”
  - In order to send an email we would need to know the dynamic variable, such as registered user name
  - In an email template this can be defined as:

      <P>Dear ${LOGIN_FIRST_NAME!} ${LOGIN_LAST_NAME!},&l/p>

  - The email would be rendered as:

      Dear John Smith,

- Allowing empty text:
  - The “!” in the above examples allows for an “empty” value to be rendered without throwing an error
  - If for some reason an error should be thrown if an “empty” value is found then do not use the “!”

## Content with links to BigFish functions

- There are many times when content requires a simple link.
- For example, in most eCommerce implementations that standard “header” will contain links for the Store Locator, My Account and other useful links.
- The Store Locator is defined as follows:

    <a href="<@ofbizUrl>storeLocator</@ofbizUrl>">Find a Store</a>

- The text “Find a Store” is user managed. In other words, this could be “Store Locator” or any appropriate text for your specific implementation.
- The tag <@ofbizUrl> is a special tag that will define the beginning of the URL in the correct format, simply reference the BigFish page (storeLocator) to complete.
- ??? SHOULD WE DEFINE ALL POSSIBLE PAGE URLS THAT ARE USEFUL ???
- ??? Are there any other similar <@xxxx> tags that we should document ???

# Dynamic Data Attributes

## System Parameters

- Some of the BigFish system parameters are defined specifically for inclusion into content (the values have no impact on processing or functionality)

Variable Name | Description
EMAIL_CLNT_NAME | A standard parameter that should contain the full client name. Used throughout email templates. For example: “Thank you for shopping with ${EMAIL_CLNT_NAME}”
HTTP_HOST |
HTTPS_HOST |

## Dynamic Variables: Login / Customer

- The login information variables are most typically used in Email Templates.
- For example, the new customer email, template E_NEW_CUSTOMER, would typically note to the customer that their email address is to be used as their login user. The email would further note the actual email address for confirmation.
- First and Last names would most typically be used in Emails as a standard “Dear John Smith”

Variable Name | Description
LOGIN_EMAIL |
LOGIN_FIRST_NAME |
LOGIN_LAST_NAME |

## Dynamic Variables: Product

- The product information variables are the most widely used within general content
- For example, as a PDP Facebook share:

Variable Name | Description
PRODUCT_ID |
PRODUCT_NAME |
PRODUCT_DESCRIPTION |
PRODUCT_LIST_PRICE |

## Dynamic Variables: Product Category

- Category Information

Variable Name | Description
CATEGORY_ID |
CATEGORY_NAME |

## Dynamic Variables: Shopping Cart

- Typical Usage
  - Pixel Tracking: in the Order Confirmation page
- For example, assume that an Shopping Cart has the following:

Product | Price | Offer-Price | Qty | Total
Product A | $12 | $10 | 2 | $20.00
Product B | $15 | $15 | 1 | $15.00
|  | Cart Sub Total: | $35.00
|  | Promo “DISC10”: | -$3.50
|  | Shipping | $6.95
|  | Tax: | $2.50
|  | CART TOTAL: | $40.95

Any other page:

Variable Name | Description
CART_SIZE | The total numbers of line-items. Used for looping logic when required to set the upper boundary. In the above example this would be 2.
CART_ITEMS_QTY | The total number of items purchased. In the above example this would be 3.
CART_ITEMS_MONEY | The monetary value for all items purchased. In the above example this would be $35.00.
CART_TOTAL_PROMO | The total adjustment made for Promotions. In the above example this would be -$3.50
CART_TOTAL_SHIP | The total shipping charge. In the above example this would be $6.95.
CART_TOTAL_TAX | The total taxes applied. In the above example this would be $2.50
CART_TOTAL_MONEY | The total to be charged to the customer. In the above example this would be $40.95

Order Summary and Order Confirmation use these:

Variable Name | Description
ORDER_SIZE | The total numbers of line-items. Used for looping logic when required to set the upper boundary. In the above example this would be 2.
ORDER_ITEMS_QTY | The total number of items purchased. In the above example this would be 3.
ORDER_ITEMS_MONEY | The monetary value for all items purchased. In the above example this would be $35.00.
ORDER_TOTAL_PROMO | The total adjustment made for Promotions. In the above example this would be -$3.50
ORDER_TOTAL_SHIP | The total shipping charge. In the above example this would be $6.95.
ORDER_TOTAL_TAX | The total taxes applied. In the above example this would be $2.50
ORDER_TOTAL_MONEY | The total to be charged to the customer. In the above example this would be $40.95

## Dynamic Variables: Order

- Typical usage:
  - Email Templates: specifically Order Confirmation, Order Status Change, Product Review
  - Pixel Tracking: on Order Confirmation page
- For example, assume that an Order has the following Confirmation Page displayed:

Order Confirmation
Thank you for shopping with [client.com], below is a confirmation of your order# BF-33002940.
PTS_ORDER_CONFIRM

Order Details
Products | Quantity | Availability | Price | Offer Price | Total
Product Image | Live Fish 1 Size: Medium Color: Red | 1 | In Stock | $6.99 | $6.99 | $6.99
Product Image | Live Fish 2 Size: Large Color: Red | 2 | In Stock | $8.99 | $7.99 | $25.98
Sub Total | $22.97
Shipping Method | UPS
Shipping And Handling | $6.95
Promotion (Free Shipping) | ($6.95)
Sales tax | $0.00
Total | $22.97

Store Pickup
Store Code: | STORE-001
Store Address: | 110 Lexington Ave
| New York, NY 11009
Store Tel: | 1-212-789-8177
* We will contact you via email when your merchandise is available. This will typically be within 24 hours. You can pay at the time of pickup.

Your Address Information
Billing Address | Shipping Address
Joe Smith | Joe Smith
10 Billing Avenue | 10 Shipping Avenue
Billtown, NY 11501 | Shiptown, NY 11501

Payment Information
See below

Variable Name | Description
ORDER_ID | The actual BigFish Order-ID assigned. In the above example this would be WS10001
SHOPPING_CART_SIZE |
SHOPPING_CART |
SHOPPING_CART_ITEMS |
ORDER_HEADER |
ORDER_ID |
ORDER_SUB_TOTAL |
ORDER_SHIP_TOTAL |
ORDER_TOTAL |
ORDER_ITEMS |
ORDER_ADJUSTMENTS |
ORDER_SHIP_ADDRESS |
ORDER_BILL_ADDRESS |
ORDER_PAYMENTS |
ORDER_PAY_PREFERENCES |
ORDER_PAYMENT_TYPE |
ORDER_SHIPPING_INFO |
ORDER_ITEM_SHIP_GROUP |

## Dynamic Variable: Email

Variable Name | Description
PRODUCT_STORE_ID |
USER_LOGIN | User Login Entity
USER_LOGIN_ID | User Login Id
EMAIL_MESSAGE | The text that was entered into a comment box, currently used on the email test.
PARTY_ID | The party id in context; for example on Order Confirmation email the party id associated to the order will be in context.
FIRST_NAME | Person Entity
LAST_NAME | Person Entity
MIDDLE_NAME | Person Entity
NICKNAME | Person Entity
LOGIN_EMAIL | Email Address (User Login Id ) of logged in user
ORDER_ID |
ORDER | Order Entity
ORDER_HELPER | Order Reader Helper; this object has helper methods to get information about the order. For example getOrderGrandTotal() and getOrderItemSubTotal()
ORDER_SUB_TOTAL |
ORDER_SHIP_TOTAL |
ORDER_TAX_TOTAL |
ORDER_TOTAL |
ORDER_ITEMS | Order Items Entity (List)
ORDER_ADJUSTMENTS |
ORDER_SHIP_ADDRESS | Postal Code Entity
ORDER_BILL_ADDRESS | Postal Code Entity
ORDER_PAYMENTS | Payment Method Entity (List)
ORDER_PAY_PREFERENCES | Order Payment Preferences Entity (List)
ORDER_SHIPPING_INFO | Order item Ship Group Entity (List)
ORDER_ITEM_SHIP_GROUP | Order item Ship Group Entity (List)
CART_ITEMS | Shopping Cart Items (List)

## Dynamic Variables: Technical

- HTML tags. All HTML tags can be used within content. References to styling within the CSS is encouraged. For example, a Static Page may look like:

Variable Name | Description
REQUEST_URL |

    <a target="facebook"

        href="http://www.facebook.com/sharer/sharer.php?
        u=${HTTPS_HOST!}${REQUEST_URL!}">

        <img src="/osafe_theme/images/user_content/images/fb.gif">

    </a>

Back to Top

Built by Salmon LLC