### Example with id, orientation, and reset parameters
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listings_search?id=145&rating=5&wpkb_action=rate
Example with parameters: sets a custom HTML ID, vertical orientation (e.g., for sidebars), and disables the reset button. The 'advanced' parameter only applies when the WPCasa Advanced Search add-on is active.
```text
[wpsight_listings_search id="supersearch" orientation="vertical" reset="false"]
```
--------------------------------
### Example with show_panel parameter
Source: https://docs.wpcasa.com/article/shortcode-wpsight_favorites
Example that hides the listings panel by setting show_panel to false. Other parameters include nr, show_paging, before, after, and wrap.
```plaintext
[wpsight_favorites show_panel="false"]
```
--------------------------------
### Example with id and vertical orientation
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listing_teaser
Example with the required id parameter and the orientation parameter set to vertical, suitable for sidebars.
```text
[wpsight_listing_teaser id="ID-30" orientation="vertical"]
```
--------------------------------
### Regular listing URL example
Source: https://docs.wpcasa.com/article/wpcasa-listing-pdf?id=58&rating=5&wpkb-rated=1&wpkb_action=rate
Example URL for a regular listing page before any PDF parameters are added.
```url
http://domain.com/listing/my-example-listing
```
--------------------------------
### Example with id and full parameters
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listing
Displays a listing with ID 'ID-30' and sets 'full' to 'false' to show only the teaser instead of the full listing.
```shortcode
[wpsight_listing id="ID-30" full="false"]
```
--------------------------------
### Example with parameters for [wpsight_listing_teasers]
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listing_teasers
Shows 6 listings per page with the listings panel and pagination displayed. The 'nr' parameter overrides the default of 10, and 'show_panel' and 'show_paging' are set to true.
```shortcode
[wpsight_listing_teasers nr="6" show_panel="true" show_paging="true"]
```
--------------------------------
### Example: [wpsight_listings] with nr, show_panel, orderby, and order
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listings
Shows 6 listings on the same page, hides the panel bar before the listings, and orders the listings by price in descending order.
```text
[wpsight_listings nr="6" show_panel="false" orderby="price" order="desc"]
```
--------------------------------
### Example: [wpsight_listings] with offer and location
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listings
Displays the latest listings from multiple locations by setting the offer parameter to "rent" and the location parameter to "marbella,madrid".
```text
[wpsight_listings offer="rent" location="marbella,madrid"]
```
--------------------------------
### Example with exclude and show_archive parameters
Source: https://docs.wpcasa.com/article/shortcode-wpsight_list_agents?id=268&rating=5&wpkb-rated=1&wpkb_action=rate
Excludes user IDs 2 and 5 and hides the 'My Listings' link by setting show_archive to false.
```shortcode
[wpsight_list_agents exclude="2,5" show_archive="false"]
```
--------------------------------
### WPCasa Currency Converter shortcode
Source: https://docs.wpcasa.com/article/wpcasa-currency-converter
Use the shortcode to display the currency converter dropdown. The first example shows the default shortcode with no parameters. The second example adds the currencies parameter with a comma-separated list of three-letter currency codes to change the available options.
```text
[wpsight_currency_converter]
```
```text
[wpsight_currency_converter currencies="eur,usd,gbp"]
```
--------------------------------
### Example with custom currencies and ID
Source: https://docs.wpcasa.com/article/shortcode-wpsight_currency_converter
Example with custom currencies and ID. The currencies parameter accepts a comma-separated list of three-letter currency codes, and the id parameter sets the HTML ID for the select dropdown.
```text
[wpsight_currency_converter currencies="eur,usd,gbp" id="my-custom-select"]
```
--------------------------------
### Set individual map icons for sale and rent with wpsight_listings_map_icon
Source: https://docs.wpcasa.com/article/wpcasa-listings-map
Use the wpsight_listings_map_icon filter with the additional post ID argument to set individual icons per listing. The example checks the listing offer (sale or rent) and returns a different icon URL accordingly. The icon array includes size, origin, anchor, and scaledSize values.
```php
$icon_url,
'size' => array( 75, 121 ),
'origin' => array( 0, 0 ),
'anchor' => array( 19, 61 ),
'scaledSize' => array( 38, 61 )
);
return $icon;
}
```
--------------------------------
### Register custom layout via wpsight_listing_pdf_layouts
Source: https://docs.wpcasa.com/article/wpcasa-listing-pdf?id=58&rating=5&wpkb_action=rate
Example of using the wpsight_listing_pdf_layouts filter to register a new layout called 'layout-custom'. The function wpsight_listing_pdf_layout_custom adds the layout to the $layouts array and returns it.
```php
Custom Output at the Top
Etiam porta sem malesuada magna mollis euismod. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
'https://cldup.com/Abae4DxKsc.png',
'size' => array( 75, 121 ),
'origin' => array( 0, 0 ),
'anchor' => array( 19, 61 ),
'scaledSize' => array( 38, 61 )
);
return $icon;
}
```
--------------------------------
### Change pricing table plan limit with wpsight_pricing_table_limit filter
Source: https://docs.wpcasa.com/article/wpcasa-pricing-tables?id=371&rating=5&wpkb_action=rate
By default, the pricing table meta box limits the number of plans to a maximum of 4. Use this filter to set a different number, for example 6. Note that the add-on's CSS only handles up to 4 plans.
```php
add_filter( 'wpsight_pricing_table_limit', 6 );
```
--------------------------------
### Add title and page break to description via wpsight_listing_pdf_elements
Source: https://docs.wpcasa.com/article/wpcasa-listing-pdf?id=58&rating=5&wpkb_action=rate
Example of using the wpsight_listing_pdf_elements filter to add a title and page break to the description element. The function wpsight_listing_pdf_description modifies the $elements array and returns it.
```php
_x( 'Listings', 'listing', 'wpcasa' ),
'singular_name' => _x( 'Listing', 'listing', 'wpcasa' ),
'add_new' => _x( 'Add New', 'listing', 'wpcasa' ),
'add_new_item' => _x( 'Add New Listing', 'listing', 'wpcasa' ),
'edit_item' => _x( 'Edit Listing', 'listing', 'wpcasa' ),
'new_item' => _x( 'New Listing', 'listing', 'wpcasa' ),
'view_item' => _x( 'View Listing', 'listing', 'wpcasa' ),
'search_items' => _x( 'Search Listings', 'listing', 'wpcasa' ),
'not_found' => _x( 'No listings found', 'listing', 'wpcasa' ),
'not_found_in_trash' => _x( 'No listings found in Trash', 'listing', 'wpcasa' ),
'menu_name' => _x( 'Listings', 'listing', 'wpcasa' ),
);
return $labels;
}
```
--------------------------------
### Change Listing Post Type Labels with wpsight_post_type_labels_listing filter
Source: https://docs.wpcasa.com/article/snippet-change-labels-of-listing-post-type?id=658&rating=5&wpkb_action=rate
Use this PHP snippet to customize the labels of the Listing post type in WPCasa. It hooks into the 'wpsight_post_type_labels_listing' filter and returns an array of custom labels. Modify the label strings as needed, for example to rename 'Listing' to 'Property'.
```php
_x( 'Listings', 'listing', 'wpcasa' ),
'singular_name' => _x( 'Listing', 'listing', 'wpcasa' ),
'add_new' => _x( 'Add New', 'listing', 'wpcasa' ),
'add_new_item' => _x( 'Add New Listing', 'listing', 'wpcasa' ),
'edit_item' => _x( 'Edit Listing', 'listing', 'wpcasa' ),
'new_item' => _x( 'New Listing', 'listing', 'wpcasa' ),
'view_item' => _x( 'View Listing', 'listing', 'wpcasa' ),
'search_items' => _x( 'Search Listings', 'listing', 'wpcasa' ),
'not_found' => _x( 'No listings found', 'listing', 'wpcasa' ),
'not_found_in_trash' => _x( 'No listings found in Trash', 'listing', 'wpcasa' ),
'menu_name' => _x( 'Listings', 'listing', 'wpcasa' ),
);
return $labels;
}
```
--------------------------------
### Modify Measurements with wpsight_measurements Filter
Source: https://docs.wpcasa.com/article/snippet-modify-measurements
Use this snippet to replace the default measurement units in WPCasa with a custom set. The filter hook 'wpsight_measurements' receives the existing measurements array and returns a new one with the desired units. The example defines an empty option, square meters, square feet, square yards, and acres.
```php
'',
'm2' => 'm²',
'sqft' => 'sq ft',
'sqyd' => 'sq yd',
'acres' => 'acre(s)'
);
return $measurements;
}
```
--------------------------------
### Custom Listing Type Taxonomy Slug with wpsight_rewrite_types_slug filter
Source: https://docs.wpcasa.com/article/snippet-custom-listing-type-taxonomy-slug?id=661&rating=5&wpkb-rated=1&wpkb_action=rate
Add this PHP code to your site to change the default listing type taxonomy slug. The filter 'wpsight_rewrite_types_slug' is used to return a custom slug, which is set to 'type' in this example. Modify the return value to your desired slug.
```php
```
--------------------------------
### Add custom listing offer with wpsight_offers filter
Source: https://docs.wpcasa.com/article/snippet-add-custom-listing-offer
Adds a custom 'Foreclosure' offer to the default sale and rent offers using the 'wpsight_offers' filter, and sets its badge color to '#d9534f' via the 'wpsight_get_offer_color' filter. The color is applied when the listing's offer matches 'foreclosure'.
```php
'details_9',
'label' => __( 'Condition', 'wpcasa' ),
'unit' => '',
'data' => array(
'' => __( 'n/d', 'wpcasa' ),
'occupiable' => __( 'occupiable now', 'wpcasa' ),
'renovation' => __( 'some renovation required', 'wpcasa' )
),
'description' => '',
'query_var' => 'condition',
'data_compare' => '=',
'data_type' => '',
'dashboard' => false,
'position' => 90
);
return $details;
}
```
--------------------------------
### Function wpsight_listings_map()
Source: https://docs.wpcasa.com/article/wpcasa-listings-map
Displays a listings map. Accepts an array of attributes for the map and an array of query vars or a query object to return listings.
```php
```
--------------------------------
### Use [wpsight_dashboard] shortcode
Source: https://docs.wpcasa.com/article/wpsight_dashboard?id=582&rating=5&wpkb-rated=1&wpkb_action=rate
Place this shortcode on a page to display the property list for the logged-in user. If the visitor is not logged in, the login form is shown instead. The output styling is minimal and adapts to the active theme.
```plaintext
[wpsight_dashboard]
```
--------------------------------
### Call wpsight_get_template with custom path
Source: https://docs.wpcasa.com/article/using-templates?wpkb-rated=1
Use this function to load a WPCasa template, optionally passing a custom path as the third parameter. The custom path can be defined using plugin_dir_path() in your own plugin.
```php
```
--------------------------------
### Shortcode: [wpsight_listing]
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listing?id=156&rating=5&wpkb_action=rate
Displays a single listing on a static page using a listing ID. Supports parameters for full display, custom before/after content, and wrapper HTML tag.
```APIDOC
## Shortcode: [wpsight_listing]
### Description
Displays a single listing on a static page. This shortcode is not included in listings search, allowing you to feature a listing apart from others (e.g., Property of the Month).
### Usage
```
[wpsight_listing]
```
### Parameters
#### Required Parameters
- **id** (string) - Required - ID of the listing. Can be the WPCasa listing ID or the WordPress post ID.
#### Optional Parameters
- **full** (boolean) - Optional - Whether or not to display the full listing. If set to `false`, only the listing teaser (like on archive pages) is displayed. Defaults to `true`.
- **before** (string) - Optional - Display some short content (e.g., a special note) right before the shortcode output. Empty by default.
- **after** (string) - Optional - Display some short content (e.g., a special note) right after the shortcode output. Empty by default.
- **wrap** (string) - Optional - HTML tag of the container element of the shortcode. Defaults to `div`.
### Example
```
[wpsight_listing id="ID-30" full="false"]
```
```
--------------------------------
### Customize bedroom and bathroom options in functions.php
Source: https://docs.wpcasa.com/article/snippet-custom-number-of-baths-and-beds-in-listing-details?id=731&rating=5&wpkb-rated=1&wpkb_action=rate
Use this filter to define the specific array of options for 'details_1' (typically bedrooms) and 'details_2' (typically bathrooms). Ensure the keys and values match your desired display requirements.
```php
__( 'n/d', 'wpcasa' ), '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5' );
$details['details_2']['data'] = array( '' => __( 'n/d', 'wpcasa' ), '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5' );
return $details;
}
```
--------------------------------
### Usage of [wpsight_dashboard_package] shortcode
Source: https://docs.wpcasa.com/article/wpsight_dashboard_package?id=600&rating=5&wpkb-rated=1&wpkb_action=rate
Place this shortcode on a page to display the user's package information and renewal options. It works on a separate page or the profile page.
```text
[wpsight_dashboard_package]
```
--------------------------------
### Default wpsight_listing_pdf_layouts array
Source: https://docs.wpcasa.com/article/wpcasa-listing-pdf?id=58&rating=5&wpkb_action=rate
Default layouts array for the wpsight_listing_pdf_layouts filter. The keys correspond to template files: layout-1 maps to listing-pdf-layout-1.php, layout-2 to listing-pdf-layout-2.php, and layout-3 to listing-pdf-layout-3.php.
```php
__( 'Layout', 'wpcasa-listing-pdf' ) . ' #1',
'layout-2' => __( 'Layout', 'wpcasa-listing-pdf' ) . ' #2',
'layout-3' => __( 'Layout', 'wpcasa-listing-pdf' ) . ' #3',
);
```
--------------------------------
### [wpsight_listings_search]
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listings_search?wpkb-rated=1
Shortcode to display the listings search form. Supports parameters for styling, orientation, form action, advanced options, reset button, and wrapping HTML.
```APIDOC
## [wpsight_listings_search]
### Description
Displays the listings search form. Can be placed anywhere, e.g., above the [wpsight_listings] shortcode or in a sidebar widget area.
### Usage
```
[wpsight_listings_search]
```
### Parameters
- **id** (string) - Optional - Unique HTML ID of the form wrap for advanced styling. Default is empty.
- **class** (string) - Optional - CSS class of the form wrap. Default is 'wpsight-listings-search'.
- **orientation** (string) - Optional - Orientation of the search form. Default is 'horizontal'. Can be 'vertical' (e.g., for sidebars).
- **action** (string) - Optional - The form action parameter. Default is empty, which redirects the form to the same page.
- **advanced** (boolean) - Optional - Whether to display advanced search options. Only applies when WPCasa Advanced Search add-on is active. Default is true.
- **reset** (boolean) - Optional - Whether to display the form reset button. Default is true.
- **before** (string) - Optional - Content to display right before the shortcode output. Default is empty.
- **after** (string) - Optional - Content to display right after the shortcode output. Default is empty.
- **wrap** (string) - Optional - HTML tag of the container element. Default is 'div'.
### Example
```
[wpsight_listings_search id="supersearch" orientation="vertical" reset="false"]
```
### Source File
/includes/shortcodes/class-wpsight-shortcode-listings-search.php
```
--------------------------------
### Customize number of baths and beds in Listing Details with wpsight_details filter
Source: https://docs.wpcasa.com/article/snippet-custom-number-of-baths-and-beds-in-listing-details?id=731&rating=5&wpkb_action=rate
Use this snippet to change the number of bedroom and bathroom options in the listing details from the default 10 to 5. It filters the 'wpsight_details' hook and sets the data arrays for details_1 and details_2 to include an 'n/d' option and values 1 through 5.
```php
__( 'n/d', 'wpcasa' ), '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5' );
$details['details_2']['data'] = array( '' => __( 'n/d', 'wpcasa' ), '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5' );
return $details;
}
```
--------------------------------
### [wpsight_listings]
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listings?wpkb-rated=1
This shortcode displays the listings archive on a static page. It supports a wide range of parameters to filter, sort, and control the display of listings.
```APIDOC
## [SHORTCODE] [wpsight_listings]
### Description
Displays the listings archive on a static page. It can be placed on any page and supports a wide range of parameters to organize the display of listings.
### Usage
`[wpsight_listings]`
### Parameters
- **keyword** (string) - Optional - Search keyword that required listings need to match.
- **offer** (string) - Optional - The offer of the required listings. Can be any of the registered offers (e.g. `offer="rent"`).
- **[detail]** (string) - Optional - The _query_var_ of any registered listing detail (e.g. `built_in="2010"`). By default the following details are available: _bedrooms_, _bathrooms_, _plot_size_, _living_area_, _terrace_, _parking_, _heating_, _built_in_.
- **[taxonomy]** (string) - Optional - The key of any registered taxonomy of the listing post type (use taxonomy and term slug, e.g. `location="marbella"`). By default the following taxonomies are available: _location_, _listing-type_, _feature_, _listing-category_. Use multiple terms separated by comma.
- **availability** (string) - Optional - Defines if only _available_, _unavailable_ or _all_ listings should be included. Default _all_.
- **min** (number) - Optional - Minimum price that required listings should have. Don't use currency symbols or thousands separators.
- **max** (number) - Optional - Maximum price that required listings should have. Don't use currency symbols or thousands separators.
- **nr** (number) - Optional - Number of listings to show per page before pagination applies. Defaults to `10` (WordPress settings).
- **max_nr** (number) - Optional - Maximum number of listings to show in total. When set, pagination is disabled and this value overrides `nr`. Defaults to no limit.
- **orderby** (string) - Optional - Sort retrieved listings by parameter. Defaults to `date` (post_date). Other options are _price_, _title_, _name_ (slug), _rand_ (random).
- **order** (string) - Optional - Designates the ascending or descending order of the _orderby_ parameter. Defaults to `DESC`. Can be _ASC_.
- **show_panel** (boolean) - Optional - Define whether or not to display the listings panel (displayed before listings). Defaults to `true`.
- **show_paging** (boolean) - Optional - Define whether or not to display the listings pagination (displayed after listings). Defaults to `true`.
- **before** (string) - Optional - Display some short content (e.g. a special note) right before the shortcode output. Is `empty` by default.
- **after** (string) - Optional - Display some short content (e.g. a special note) right after the shortcode output. Is `empty` by default.
- **wrap** (string) - Optional - HTML tag of the container element of the shortcode. Defaults to `div`.
### Examples
#### Example 1: Show 6 listings, hide panel, order by price descending
```
[wpsight_listings nr="6" show_panel="false" orderby="price" order="desc"]
```
#### Example 2: Display latest listings for rent
```
[wpsight_listings offer="rent"]
```
#### Example 3: Display latest listings from multiple locations
```
[wpsight_listings offer="rent" location="marbella,madrid"]
```
### Source File
_/includes/shortcodes/class-wpsight-shortcode-listings.php_
```
--------------------------------
### Basic [wpsight_listings] shortcode
Source: https://docs.wpcasa.com/article/display-listings-on-a-page
Displays the latest listings. Without parameters, shows 10 listings before paging applies (if WordPress reading settings are unchanged).
```shortcode
[wpsight_listings]
```
--------------------------------
### Display rent listings with [wpsight_listings offer="rent"]
Source: https://docs.wpcasa.com/article/display-listings-on-a-page?wpkb-rated=1
Limits the displayed listings to the 'rent' offer, one of the default offers registered in WPCasa.
```text
[wpsight_listings offer="rent"]
```
--------------------------------
### Basic usage of [wpsight_favorites]
Source: https://docs.wpcasa.com/article/shortcode-wpsight_favorites
Displays the list of favorites for the current user. Requires the WPCasa Favorites add-on to be active.
```plaintext
[wpsight_favorites]
```
--------------------------------
### Add Custom Listing Detail with Pre-defined Options in WPCasa
Source: https://docs.wpcasa.com/article/snippet-add-custom-listing-detail-with-pre-defined-options
Adds a custom listing detail with pre-defined options to WPCasa by filtering the 'wpsight_details' hook. The detail is labeled 'Condition' and offers three options: 'n/d', 'occupiable now', and 'some renovation required'. It sets the query variable to 'condition' and positions the detail at 90.
```php
'details_9',
'label' => __( 'Condition', 'wpcasa' ),
'unit' => '',
'data' => array(
'' => __( 'n/d', 'wpcasa' ),
'occupiable' => __( 'occupiable now', 'wpcasa' ),
'renovation' => __( 'some renovation required', 'wpcasa' )
),
'description' => '',
'query_var' => 'condition',
'data_compare' => '=',
'data_type' => '',
'dashboard' => false,
'position' => 90
);
return $details;
}
```
--------------------------------
### Shortcode: [wpsight_list_agents]
Source: https://docs.wpcasa.com/article/shortcode-wpsight_list_agents?id=268&rating=5&wpkb-rated=1&wpkb_action=rate
This shortcode displays a list of registered agents on a static page. It requires the WPCasa List Agents add-on to be active and supports parameters to control the number of agents, ordering, filtering, and visibility of specific elements.
```APIDOC
## [wpsight_list_agents]
### Description
Displays a list of registered agents on a static page. Only available when the WPCasa List Agents add-on is active.
### Usage
`[wpsight_list_agents]`
### Parameters
- **nr** (integer) - Optional - Number of agents before paging applies. Defaults to `10`.
- **orderby** (string) - Optional - Column by which users are ordered. Defaults to `ID`. For more options see WP_User_Query.
- **order** (string) - Optional - Designates the ascending or descending order of the orderby parameter. Defaults to `ASC`. Can be `DESC`.
- **include** (string) - Optional - Creates a list with specific users. Separate multiple user IDs by comma. Is `empty` by default.
- **exclude** (string) - Optional - Exclude specific users from the list. Separate multiple user IDs by comma. Is `empty` by default.
- **show_image** (boolean) - Optional - Whether or not to show the agent image. Defaults to `true`. Can be `false`.
- **show_phone** (boolean) - Optional - Whether or not to show the agent phone. Defaults to `true`. Can be `false`.
- **show_links** (boolean) - Optional - Whether or not to show the agent links (website etc.). Defaults to `true`. Can be `false`.
- **show_archive** (boolean) - Optional - Whether or not to show the agent archive link. Defaults to `true`. Can be `false`.
- **before** (string) - Optional - Display some short content (e.g. a special note) right before the shortcode output. Is `empty` by default.
- **after** (string) - Optional - Display some short content (e.g. a special note) right after the shortcode output. Is `empty` by default.
- **wrap** (string) - Optional - HTML tag of the container element of the shortcode. Defaults to `div`.
### Example
Exclude the user IDs 2 and 5 and do not show the _My Listings_ link.
`[wpsight_list_agents exclude="2,5" show_archive="false"]`
### Source File
`/wpcasa-list-agents/includes/class-wpsight-list-agents-shortcode.php`
```
--------------------------------
### Basic wpsight_listings_map shortcode usage
Source: https://docs.wpcasa.com/article/shortcode-wpsight_listings_map?id=274&rating=5&wpkb_action=rate
Displays the listings map on a static page. This shortcode requires the WPCasa Listings Map add-on to be active.
```shortcode
[wpsight_listings_map]
```
--------------------------------
### PHP: Add custom listing details with wpsight_details filter
Source: https://docs.wpcasa.com/article/snippet-add-custom-listing-details
Adds two custom listing details (details_9 and details_10) with labels 'Detail 9' and 'Detail 10'. Each detail enables a dashboard field and a query variable, with priorities 90 and 100.
```PHP
'details_9',
'label' => __( 'Detail 9', 'wpcasa' ),
'unit' => '',
'description' => '',
'dashboard' => true,
'query_var' => 'details_9',
'priority' => 90
);
$details['details_10'] = array(
'id' => 'details_10',
'label' => __( 'Detail 10', 'wpcasa' ),
'unit' => '',
'description' => '',
'dashboard' => true,
'query_var' => 'details_10',
'priority' => 100
);
return $details;
}
```
--------------------------------
### PDF URL with print parameter
Source: https://docs.wpcasa.com/article/wpcasa-listing-pdf?id=58&rating=5&wpkb-rated=1&wpkb_action=rate
Adds `?print=123` to generate the PDF version of the listing.
```url
http://domain.com/listing/my-example-listing/?print=123
```
--------------------------------
### Menu for logged-out users
Source: https://docs.wpcasa.com/article/setting-up-wpcasa-dashboard
Suggested menu structure for logged-out users, including 'Submit Property' with sub-items 'Register' and 'Login'.
```text
Submit Property
- Register
- Login
```
--------------------------------
### Default Listing PDF Layouts Array
Source: https://docs.wpcasa.com/article/wpcasa-listing-pdf?id=58&rating=5&wpkb-rated=1&wpkb_action=rate
The default array defining the available PDF layout templates.
```php
__( 'Layout', 'wpcasa-listing-pdf' ) . ' #1',
'layout-2' => __( 'Layout', 'wpcasa-listing-pdf' ) . ' #2',
'layout-3' => __( 'Layout', 'wpcasa-listing-pdf' ) . ' #3',
);
```
--------------------------------
### Add custom text (from) before price with wpsight_get_listing_price_before filter
Source: https://docs.wpcasa.com/article/snippet-add-custom-text-from-before-price?id=666&rating=5&wpkb-rated=1&wpkb_action=rate
Adds a small 'from' label before the listing price when a raw price exists. Use this in your theme's functions.php or via a code snippets plugin. The filter 'wpsight_get_listing_price_before' modifies the price output.
```php
/**
* Add custom text (from) before price
*/
add_filter( 'wpsight_get_listing_price_before', 'custom_get_listing_price_before' );
function custom_get_listing_price_before( $value ) {
if( wpsight_get_listing_price_raw() )
$value .= '' . __('from', 'wpcasa' ) . ' ';
return $value;
}
```
--------------------------------
### wpsight_dashboard_login shortcode
Source: https://docs.wpcasa.com/article/wpsight_dashboard_login
Place this shortcode in a page or post to display the login form. If the registration page is available and registrations are allowed, a link appears under the form.
```text
[wpsight_dashboard_login]
```