Author Archive

How to fix the [custom-post-author-email-shortcode]

It’s perfectly fine; ignore this error. It does not affect functionality of contact form.

This message is displayed because we use a custom shortcode to dynamically replace the “To” address with the email of the listing owner on which the contact form is displayed. Without this, we could only set one email for all the forms, meaning only you, as the site owner, would receive the emails instead of the owners of the listings.

This solution requires the Dynamic Field add-on for Contact Form 7. The custom shortcode added via this plugin is not recognized by CF7 as valid code, which is why it shows this error.

If your form doesn’t you can be sure that this error does not cause that. You should check SMTP configuration instead:

Having problems with your WordPress site not sending emails?

How to troubleshoot Stripe Split Payments

Setting up Stripe Connect in Listeo can be a challenging process, and we frequently receive support tickets from users seeking assistance with troubleshooting. Here are a few steps you can take before reaching out to us.


Step 1

Go to Overview of your Stripe Connect dashboard,
Ensure that there are no tasks on the list tagged as “Required” and that all necessary steps are completed.

This is example of not fully configured account, the platform profile is not completed. That will cause troubles with Connect button on wallet page. The onboarding process won’t be correctly completed.


Step 2

Go to your WordPress admin -> WooCommerce -> Settings -> Payments -> Stripe -> Manage -> Settings

Make sure the payment options are correctly configured and you have green checkmark  in all options

it’s especially important for Webhooks as that what we mainly use in Listeo to work with Stripe API. Make sure it works both in test mode and live mode.

While we’re here you enable log, that will help us debug any issues, it’s below in Advanced Settings.


Step 3

Double check if all keys are set correctly, and they match the settings in your Stripe Dashboard, both for Live and Test mode


Step 4

If you made sure everything above is set and it still doesn’t work, we need admin access to your site.

You can create temporary admin account and delete it later or you can install this plugin https://wordpress.org/plugins/temporary-login-without-password/ and generate for us the link for 1 week admin access (make you’re creating user with ADMIN ROLE as by default it will be regular user).

Please also make sure that:

  1. You’ve set your Stripe payment gateway in Test mode
  2. You have one user with Owner role who has at least 1 published listings, and is connected to your Stripe Platform in the Wallet page. We most likely won’t be able to do that as it usually requires some address/contact data
  3. Please install this plugin https://wordpress.org/plugins/wp-user-switch/ to allow us easy change between users for tests
  4. And if you haven’t already, please contact us via Support Tab

 

Add a phone number to the listing url

This snippet will alter the listing URL to include phone number of the listing:  www.site.com/listings/3331542847/listing-name/

In your child theme functions.php file add this code.

function listing_post_type_link($permalink, $post)
{
	// Abort if post is not a listing
	if ($post->post_type !== 'listing')
		return $permalink;

	// Abort early if the placeholder rewrite tag isn't in the generated URL
	if (false === strpos($permalink, '%'))
		return $permalink;

	$find = array(
		'%phone%'
	);
$phone = get_post_meta($post->ID,'_phone',true);
	$replace = array(
		$phone
	);

	$replace = array_map('sanitize_title', $replace);

	$permalink = str_replace($find, $replace, $permalink);

	return $permalink;
}
add_filter('post_type_link', 'listing_post_type_link', 10, 2);

function change_listing_slug($args)
{
	$args['rewrite']['slug'] = 'listing/%phone%';
	return $args;
}
add_filter('register_post_type_listing', 'change_listing_slug');

After that go to Settings -> Permalinks, and click Save to renew new permalinks

Stripe Split Payments Support

Before you’ll raise a support ticket:
1. Ensure that the API keys and permissions are correctly configured in both WP and Stripe.
2. Verify that the Redirect URI in Stripe matches the one in your WordPress plugin.
3. Confirm that your Stripe account is fully verified (not pending).
4. Make sure you are not using account that is already connected to other platform
5. Clear any cache that might interfere with the connection.

Listeo offers support for Stripe Connect that allows you to automatically split the payment for a booking and send part of the payment to the listing’s Owner and part to you as a site owner. Stripe Connect is a service provider for marketplace payment solutions.

This requires having the official WooCommerce Stripe Payment Gateway installed and configured, only the payments made by this gateway will be split.

With Stripe you can accept Visa, MasterCard, American Express, Discover, JCB, and Diners Club cards or even Bitcoin and is supported in 47 countries

With a Stripe Connect, you create a platform to which Listing Owners can signup and “connect” and that helps you automate payments and simplifies the usage of your site.

 

How it works


You have to enable your Connect Platform in Stripe dashboard. After properly configuring both Stripe and WordPress according to instructions below, the Wallet page will have an option “Connect to Stripe“.

Any Listing Owner who will click this button will be going through the “onboarding” process where he will set his own Stripe account and connect it to your platform. From now on every booking that will be made using Listeo that will be paid with Stripe gateway will be automatically splitted and you as platform owner will get the commission and the Owner will get his earning directly to his Stripe account. The money is then payout automatically by Stripe based on the settings or rules (it’s different based on the country)

 

How to configure Stripe Connect in Listeo


Let’s get started
  1. Create a stripe account by visiting https://stripe.com/. You’ll be viewing a page that asks you to Activate Payments, click that button to fill out your business profile to accept payments
  2. Go through the whole process of onboarding https://dashboard.stripe.com/account/onboarding – make sure you haven’t skipped any field there. It’s very important to have all the items checked, you even need to set your own branding color or upload logo as without it it won’t let you set Connect accounts.
  3. After successful registration login to Stripe Dashboard go to Connect, then go to “Get started with Connect“, where you will be able to complete your platform profile and add required informations to enable payments on your account
  4. It’s very important to have all the items checked, you even need to set your own branding color or upload logo as without it it won’t let you set Connect accounts.
  5. Enable Test Mode
  6. Get Client ID. For that go to Settings (the cog icon next the “Test mode”), scroll down to Product Settings → Connect box,
  7. Navigate to Onboarding Options → OAuth tab
  8. Copy your Test mode client ID and paste it in Listeo Core → Stripe Connect → Stripe Connect Test mode Client ID.
  9. Turn on both OAuth Settings
  10. in Redirects section click +Add URL, and add there a link to your wallet page with /?stripe-setup=yes at the end, so the whole link would be
    https://www.yourdomain.com/wallet/?stripe-setup=yes
  11. Now Switch to Live mode and repeat those steps, get the Live Client ID to set it in Listeo Core, enable OAuth settings and add Redirect.
  12. In Stripe Dashboard →Developers you’ll find Publishable and Secret Key, copy them to Listeo CoreStripe Connect fields, there are inputs for both keys for test and live mode, and you need that to onboard users. If you can’t copy/reveal the Secret Key in Stripe Dashboard, you can create a new one using “Create secret key” button.
  13. Review all other options

 

Setting Up WooCommerce Payment Gateway
  1. Install WooCommerce Stripe Payment Gateway
  2. Go to wp-adminWooCommerce → SettingsPayments, find Stripe on the list, go to Manage and connect to your Stripe account you’ve just created in step before.
    It’s VERY important to not create a new account from that link in plugin, it has to be the one you already have and already has Connect enabled.
  3. It should automatically get all required API keys, but to be sure go to Settings, click Edit Account Keys and make sure both test and live keys are set.
  4. Set the webhook in your Stripe Account Settings as it’s explained in the popup. It’s important as this webhook is what is used to get data about payment. Make sure the webhook type is set to Account, not Connect.
  5. It’s important to know that this feature in Listeo is in its early stage and although we did a lot of testing we strongly encourage to run it in Test mode first to make sure everything works as expected. To do that go to wp-admin → WooCommerce → Settings → Payments → Stripe → Manage → Settings and check the “Enable test mode” checkbox

    After Connecting to Stripe, users will have a new box in Wallet page with few informations about his account and option to login directly to Stripe Dashboard to see all details about the payments to his account.
    Example view of Stripe Dashboard for Listing Owner

Before you’ll raise a support ticket:
1. Ensure that the API keys and permissions are correctly configured in both WordPress and Stripe.
2. Verify that the Redirect URI in Stripe matches the one in your WordPress plugin.
3. Confirm that your Stripe account is fully verified (not pending).
4. Make sure you are not using account that is already connected to other platform
5. Clear any cache that might interfere with the connection.

Listing Types Explanation

This is one of most common questions we get on the support – “how/where can I change listing types”

Listeo has 4 listing types – Service, Rental, Event and Classifieds. Those listing types exist to have different booking options, so you won’t offer for example tickets for renting out apartments. If you want to disable the ones you don’t need you can do it in Listeo Core -> Submit listing.

If you want to rename them, you can use this method.

There’s currently no option to add more types without modifying code, remember, those types do not exist for classification purpose, for that you have Taxonomies.

PayPal Split Payments Support

[Discalimer] Listeo supports hundreds of payment gateways however split payment could be technically integrated only with PayPal (at least at this moment). It’s optional and you don’t have to use it. 🙂

Listeo offers option to split payment made for bookings, that way you as site admin don’t have to worry about transfering money back to listing owners. It’s automatically split between the vendor and you, so you get your commission, and listing owner gets his part for booking.

Feature not found in any other theme. 😎

This feature requires PayPal Payouts option enabled on your PayPal account.

In order to use this service, you must have a business PayPal account in good standing and with no withdrawal limits and  applied for and received PayPal permission to use these services. To apply for that check details here.

How to configure it?


Step 1

Go to Paypal’s Developer portal and click on Dashboard in the dropdown located on the top left of the screen. Now go to My Account and check if you have Payouts API enabled, there should be a green check mark next to it. If you don’t you need to apply for it.


Step 2

Once the above is done, go to My Apps & Credentials. Scroll down till you find the REST API apps” section. Click the Live option on the Sandbox/Live button. Next, click the Create App button. Provide name and click Create App“. Now on the My Apps page you have your new app listed, click it to open a page with credentials.


Step 3.

in new tab login to your Listeo site wp-admin, go to Listeo Core -> PayPal Payout, set it to Active. Choose the Live Environment, and provide your details from the App Credentials

And that’s pretty much this.

Now make sure that you have PayPal configured as Payment option in WooCommerce → SettingsPayments


How does it really work?

If you configured things above correctly, your listing owners will have to provide their paypal email in Wallet →  Set Payout Methods → PayPal Payout. They will see notification in their dashboard about this requirement.

Now, when someone pays for booking, as before it will create a Order in WooCommerce (and that Order will have to have it’s status set as Completed, manually or using Autocomplete WooCommerce Orders)  and the payment minus the commission will be automatically send to listing owner.  In wp-admin -> Commissions you will see list of payouts, you might see them with status “Pending”

Here’s why you might see this status. Pending states payments will return to your account after 30 days if the payment is not collected.

 

Google Reviews Support

To use that feature you need to have UNRESTRICTED API key set for radius search (Listeo Core → Map Options → Google Maps API key for server side geocoding).

https://docs.purethemes.net/listeo/knowledge-base/creating-google-maps-api-key/#unrestricted-key

Listeo has option to show 5 latest reviews from Google Reviews for the listings.

To use it, you have to provide Place ID for the listing. If you are using Google Address auto suggestion feature, this will be automatically set if you choose a business/establishment/place from the suggestion list (yes! we have now option to actually search for places, not just address).

If you are using other map providers, you can get the Place ID from Places ID-finder. You can also use this method if Places ID finder doesn’t work for you

Places API allows to show only 5 reviews from that, those results are cached for 48 hours to not generate additional costs for API. To use that feature you need to have API key set for radius search (Listeo Core → Map Options → Google Maps API key for server side geocoding).


Google Reviews are not displaying, what can I do?

If you are sure your API key is configured properly, if it is, the most common reason why reviews are not showing, is because the Place ID you selected is not for the actual place but for it’s address.

If you type just the address of place, you get Place ID of that address, but that doesn’t have reviews, you need to get the Place ID of actual point of interest. Example, if you type the address of pizzeria “Via dei Tribunali, 32, 80138 Napoli NA” you get different Place ID then if you type name of the place and it’s address, like ‘Gino e Toto Sorbillo, Via dei Tribunali, 32, 80138 Napoli NA’. You are looking for and ID of that place, that has the reviews.

Please also pay attention to the following options if google reviews are not displayed

How to fix login stuck at “sending user info, please wait…”?

If you’re experiencing issues during logging in in and you get stuck on message ‘Sending user info, please wait…‘ there might be couple of issues:

  1. Most common cause of this problem are cache plugins active on your site. Try to disable them to see if that help. If it does – you may need to adjust plugin settings, as some may have aggressive optimization. For example, in WP Rocket, set the cache lifespan to 10 hours or less.
     
    If it still happens from time to time we suggest enabling “Skip additional login/registration security check” option in Listeo Core → Registration
  2. Another but less common reasonis often related to custom mod_security rules. Some hosting providers block login requests from non standard paths, so try to contact your hosting provider and ask them about it.
  3. And last but not least, you may experience this issue on nginx server, in that case, add the following lines to /etc/nginx/nginx.com
    fastcgi_temp_file_write_size 10m; 
    fastcgi_busy_buffers_size 512k; 
    fastcgi_buffer_size 512k;
    fastcgi_buffers 16 512k;
    client_max_body_size 50m; 
    proxy_buffer_size 16k; 
    proxy_busy_buffers_size 16k;

    if that won’t help, check if you have Nginx Content caching enabled, you might need to disable that to fix that problem

Why I have so many Products on my WordPress site?

Every time you create a listing, it creates a “shadow copy” of that listing in Products. So each listing has assigned its own product in WooCommerce -> Products. This is created to handle payments for Booking, so when booking request is confirmed, it creates WooCommerce order for that product, and user is able to pay for it.
Those products are set to product type “Listeo Booking”, they are not visible on front-end, and not indexed by google.

If you’re looking for only listing or ad campaign packages, please use the filter:

Search by date range

Until version 1.4.3 the “date range” field was used only to search for rental listing types. Since 1.4.3 we’ve added support for event type listing, but because of the way the search works, you can search for rentals and for events at the same time. For rentals, we’re looking for dates where the listing have no bookings made, and for event we search for dates which are in the selected range.


Setting Up date range

Go to Listeo Editor -> Search Form, choose the type of search form, if it already has Date range field click it to open, if no, drag the Date range field from Available searchable elements to the place in Search form, and click Save.

Now, click this new field to open its options. You should see this.

By choosing Rentals, you will limit Date Range only to rental listing type, and by choosing Event you will search only for events.

If you have both types and want to allow users to choose, select the last option, and drag from the Available searchable elements  the Listing Type field, that will allow user to select which listing types they want to search for.

You can of course remove service type as this won’t be returning any results. Date search for services is currently not available.