Shortening the displayed URL in a Website field

If your entries have long URLs, they can look bad when displayed in a View. GravityView offers a Website field option named "Shorten Link Display," which allows you to change a long, ugly URL to a nice-looking one.

  • It will take this: https://www.example.com/las8fh/742m.html?ref=product137u
  • And turn it into this: example.com

The "Shorten Link Display" functionality is enabled by default for Gravity Forms Website fields in a View.


Here's how to enable and disable the functionality:

Click the Add Field button

Select a Website field from the field picker

If your form doesn't have a website field, this functionality will not be available.

Click the gear icon to configure the Field settings

Check or uncheck the "Shorten Link Display" setting

By default, links will be shortened by removing:

  • http:// and https://  ( http://example.com => example.com )
  • www. subdomain, if exists ( www.example.com => example.com )
  • Subdomains, if exists ( demo.example.com => example.com )
  • URL paths ( http://example.com/sub/directory/page.html => example.com )
  • Query parameters ( http://example.com/?query=example => example.com )

The link text will look shorter, but the link URL remains the same.

For developers: Hooks to modify the "Shorten Link Display" behavior

If you would like to tweak how the Shorten Link Display functionality works, there are hooks for that!

You can find the hooks inside the gravityview_format_link() function. You can also override the function by defining it in your theme's code>functions.php file.

The following hooks are available to modify functionality. All filters have a true default.

  • http:// and https:// (or any other scheme, like ftp://)  ( http://example.com => example.com )
    Filter: gravityview_anchor_text_striphttp
  • www. subdomain, if exists ( www.example.com => example.com )
    Filter: gravityview_anchor_text_stripwww
  • Subdomains, if exists ( demo.example.com => example.com )
    Filter: gravityview_anchor_text_nosubdomain
  • URL paths ( http://example.com/sub/directory/page.html => example.com )
    Filter: gravityview_anchor_text_rootonly
  • Query parameters ( http://example.com/?query=example => example.com )
    Filter: gravityview_anchor_text_noquerystring

See some code samples below for disabling Shorten Link Display filters.

/**
 * Examples of how to disable each of the "Shorten Link Display" methods for shortening the displayed URL.
 */

/**
 * Strip scheme from the displayed URL
 *
 * http://example.com => example.com
 *
 * @param boolean $enable Whether to strip the scheme. Return false to show scheme.
 */
add_filter( 'gravityview_anchor_text_striphttp', '__return_false' );
 
/**
 * Strip www from the domain
 *
 * http://www.example.com => example.com
 *
 * @param boolean $enable Whether to strip www. Return false to show www.
 */
add_filter( 'gravityview_anchor_text_stripwww', '__return_false' );

/**
 * Strip subdomains from the domain
 *
 * Enabled:
 * http://demo.example.com => example.com
 *
 * Disabled:
 * http://demo.example.com => demo.example.com
 *
 * @param boolean $enable Whether to strip subdomains. Return false to show subdomains.
 */ 
add_filter( 'gravityview_anchor_text_nosubdomain', '__return_false' );

/**
 * Display link path going only to the base directory, not a sub-directory or file.
 *
 * When enabled:
 * http://example.com/sub/directory/page.html => example.com
 *
 * When disabled:
 * http://example.com/sub/directory/page.html => example.com/sub/directory/page.html
 *
 * @param boolean $enable Whether to enable "root only". Return false to show full path.
 */
add_filter( 'gravityview_anchor_text_rootonly', '__return_false' );

/**
 * Whether to strip the query string from the end of the URL
 *
 * http://example.com/?query=example => example.com
 *
 * @param boolean $enable Whether to enable "root only". Return false to show full path.
 */
add_filter( 'gravityview_anchor_text_noquerystring', '__return_false' );

Read here how to add these code samples to your website: Where to put code samples.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us