<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>loc &#8211; GoodLayers</title>
	<atom:link href="https://docs.goodlayers.com/author/loc/feed/" rel="self" type="application/rss+xml" />
	<link>https://docs.goodlayers.com</link>
	<description>Documentation</description>
	<lastBuildDate>Sat, 09 Nov 2024 03:10:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>Tour Master &#8211; Export Tour Order To CSV And Import To Excel</title>
		<link>https://docs.goodlayers.com/tour-master-export-tour-order-to-csv-and-import-to-excel/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Sat, 11 May 2024 11:33:17 +0000</pubDate>
				<category><![CDATA[Tour Master]]></category>
		<category><![CDATA[Travel Tour]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=3001</guid>

					<description><![CDATA[Today, I want to show you how to export the tour order to a CSV file and import it to Excel to manage it better. We will go to: Tour Order &#62; Export to CSV After downloading the CSV complete, please open the Excel &#62; Data &#62; From Text/CSV. Select the correct character if your [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Today, I want to show you how to export the tour order to a CSV file and import it to Excel to manage it better.</p>



<p>We will go to: Tour Order &gt; Export to CSV</p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="712" src="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.19.50-1024x712.png" alt="" class="wp-image-3002" srcset="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.19.50-1024x712.png 1024w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.19.50-300x209.png 300w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.19.50-768x534.png 768w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.19.50-1536x1069.png 1536w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.19.50.png 1788w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<p>After downloading the CSV complete, please open the Excel &gt; Data &gt; From Text/CSV.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="481" src="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.21.21-1024x481.png" alt="" class="wp-image-3004" srcset="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.21.21-1024x481.png 1024w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.21.21-300x141.png 300w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.21.21-768x361.png 768w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.21.21-1536x721.png 1536w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.21.21.png 1625w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Select the correct character if your language isn&#8217;t Latin character.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="1017" height="740" src="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.24.58.png" alt="" class="wp-image-3005" srcset="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.24.58.png 1017w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.24.58-300x218.png 300w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.24.58-768x559.png 768w" sizes="(max-width: 1017px) 100vw, 1017px" /></figure>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Click on Close &amp; Load and get the data available in your Excel.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="281" src="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.28.07-1024x281.png" alt="" class="wp-image-3006" srcset="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.28.07-1024x281.png 1024w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.28.07-300x82.png 300w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.28.07-768x211.png 768w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.28.07-1536x422.png 1536w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.28.07.png 1714w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<p>The result:</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="2826" height="487" src="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.29.23.png" alt="" class="wp-image-3007" srcset="https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.29.23.png 2826w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.29.23-300x52.png 300w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.29.23-1024x176.png 1024w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.29.23-768x132.png 768w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.29.23-1536x265.png 1536w, https://docs.goodlayers.com/wp-content/uploads/2024/05/support-2024-05-11-18.29.23-2048x353.png 2048w" sizes="auto, (max-width: 2826px) 100vw, 2826px" /></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Tour Master &#8211; iCal (Tour)</title>
		<link>https://docs.goodlayers.com/travel-tour-tour-master-ical/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Wed, 21 Feb 2024 16:04:10 +0000</pubDate>
				<category><![CDATA[Tour Master]]></category>
		<category><![CDATA[Travel Tour]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2974</guid>

					<description><![CDATA[The ical in the Tour: The ical in the Room: When you add booking from your calendar that sync iCal with the theme. From theme side, it will only block the booking from that date. It won’t add a new booking record, this is not possible.(Even other service like Airbnb can’t do this as well. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>The ical in the <strong>Tour</strong>:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="441" src="https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-22.58.12-1024x441.png" alt="" class="wp-image-2975" srcset="https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-22.58.12-1024x441.png 1024w, https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-22.58.12-300x129.png 300w, https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-22.58.12-768x331.png 768w, https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-22.58.12.png 1098w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>The ical in the <strong>Room</strong>:</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="567" src="https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-23.01.17-1024x567.png" alt="" class="wp-image-2976" srcset="https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-23.01.17-1024x567.png 1024w, https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-23.01.17-300x166.png 300w, https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-23.01.17-768x426.png 768w, https://docs.goodlayers.com/wp-content/uploads/2024/02/support-2024-02-21-23.01.17.png 1099w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>When you add booking from your calendar that sync iCal with the theme. From theme side, it will only block the booking from that date. It won’t add a new booking record, this is not possible.(Even other service like Airbnb can’t do this as well. They all only block booking date.)</p>



<p>If you place the ical url to Google Calendars, it&#8217;ll show which day the tour is booked on the calendar.</p>



<h2 class="wp-block-heading">Airbnb iCal</h2>



<p>The iCal also blocks rooms on Airbnb as well. However, make sure that you set it up properly. <a href="https://www.airbnb.com.sg/help/article/99" target="_blank" rel="noreferrer noopener">https://www.airbnb.com.sg/help/article/99</a></p>



<p>You have to set the iCal in both direction, so sync Abnb ical to your site and also put your site’s iCal in Abnb as well. Also note that there will be a delay as Abnb only do the calendar refresh every 3 hours : <a rel="noreferrer noopener" target="_blank" href="https://take.ms/oxyHj">https://take.ms/oxyHj</a> so you may need to manually check for the conflict from time to time and there’s nothing we can do about this.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Travel Tour &#8211; Tour Master &#8211; Add /blog/ to blog pages without affecting other url</title>
		<link>https://docs.goodlayers.com/travel-tour-tour-master-add-blog-to-blog-pages-without-affecting-other-url/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Fri, 12 Jan 2024 05:51:22 +0000</pubDate>
				<category><![CDATA[Developers]]></category>
		<category><![CDATA[Tour Master]]></category>
		<category><![CDATA[Travel Tour]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2963</guid>

					<description><![CDATA[Shared by our customer: Add /blog/ to blog pages without affecting other url (notion.site)  1. Install &#38; activate the Travel Tour child theme 2. Within cPanel file manager, copy the code below and paste into public_html &#62; wp-content &#62; themes &#62; traveltour-child &#62; functions.php. Add the code after the existing code on teh file but [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Shared by our customer: <a href="https://silent-rest-370.notion.site/Add-blog-to-blog-pages-without-affecting-other-url-0fbe61de9e634c138242b44226d0df2a">Add /blog/ to blog pages without affecting other url (notion.site)</a> </p>
<p>1. Install &amp; activate the Travel Tour child theme</p>
<p>2. Within cPanel file manager, copy the code below and paste into public_html &gt; wp-content &gt; themes &gt; traveltour-child &gt; functions.php. Add the code after the existing code on teh file but before ‘/// END ENQUEUE PARENT ACTION’</p>
<p>3. Go to the WordPress website and settings &gt; permalinks and select ‘Plain’ and save.</p>
<p>4. Now select ‘custom structure’, paste in /blog/%postname%/ and save.</p>
<p>5. You may need to refresh but it should work.</p>


<pre class="wp-block-code"><code>// Custom URL Blog
function create_tour_post_type() {
    register_post_type('tour',
        array(
            'labels' => array(
                'name' => __('Tours'),
                'singular_name' => __('Tour')
            ),
            'public' => true,
            'has_archive' => true,
            'rewrite' => array('slug' => 'tour', 'with_front' => false),
            'supports' => array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments')
        )
    );
}
add_action('init', 'create_tour_post_type');
function create_destinations_post_type() {
    register_post_type('portfolio',
        array(
            'labels' => array(
                'name' => __('Destinations'),
                'singular_name' => __('Destination')
            ),
            'public' => true,
            'has_archive' => true,
            'rewrite' => array('slug' => 'destinations', 'with_front' => false),
            'supports' => array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments')
        )
    );
}
add_action('init', 'create_destinations_post_type');

function create_personnel_post_type() {
    register_post_type('personnel',
        array(
            'labels' => array(
                'name' => __('Personnel'),
                'singular_name' => __('Person')
            ),
            'public' => true,
            'has_archive' => true,
            'rewrite' => array('slug' => 'personnel', 'with_front' => false),
            'supports' => array('title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments')
        )
    );
}
add_action('init', 'create_personnel_post_type');
function create_room_post_type() {
    register_post_type('room',
        array(
            'labels' => array(
                'name' => __('Rooms'),
                'singular_name' => __('Room')
            ),
            'public' => true,
            'has_archive' => true,
            'rewrite' => array('slug' => 'room', 'with_front' => false),
            'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'comments')
        )
    );
}
add_action('init', 'create_room_post_type');</code></pre>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Tour Master &#8211; Tour Post &#8211; SiteHealt problems on &#8220;rest API&#8221; with the Plesk control panel</title>
		<link>https://docs.goodlayers.com/tour-master-tour-post-sitehealt-problems-on-rest-api-with-the-plesk-control-panel/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Tue, 28 Nov 2023 08:38:30 +0000</pubDate>
				<category><![CDATA[Tour Master]]></category>
		<category><![CDATA[Travel Tour]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2931</guid>

					<description><![CDATA[We&#8217;re receiving an error from our customer related to the SiteHealt problems on &#8220;rest API&#8221;, connection with wordpress.org, and cURL error 77 and the website is on the PLESK control panel. You can&#8217;t publish your tour post when you facing this problem. To fix it, please change the PHP configuration from &#8220;Dedicated FPM application served [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>We&#8217;re receiving an error from our customer related to the SiteHealt problems on &#8220;rest API&#8221;, connection with wordpress.org, and cURL error 77 and the website is on the PLESK control panel.</p>



<p>You can&#8217;t publish your tour post when you facing this problem.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="995" height="1024" src="https://docs.goodlayers.com/wp-content/uploads/2023/11/support-2023-10-19-00.41.06-995x1024.png" alt="" class="wp-image-2933" srcset="https://docs.goodlayers.com/wp-content/uploads/2023/11/support-2023-10-19-00.41.06-995x1024.png 995w, https://docs.goodlayers.com/wp-content/uploads/2023/11/support-2023-10-19-00.41.06-292x300.png 292w, https://docs.goodlayers.com/wp-content/uploads/2023/11/support-2023-10-19-00.41.06-768x790.png 768w, https://docs.goodlayers.com/wp-content/uploads/2023/11/support-2023-10-19-00.41.06-1493x1536.png 1493w, https://docs.goodlayers.com/wp-content/uploads/2023/11/support-2023-10-19-00.41.06.png 1914w" sizes="auto, (max-width: 995px) 100vw, 995px" /></figure>



<p></p>



<p>To fix it, please change the PHP configuration from &#8220;Dedicated FPM application served by Apache&#8221; to &#8220;FPM application served by Apache&#8221; and reverted &#8216;show_in_rest&#8217; to &#8216;true&#8217; and then check your website again.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Theme Version 3 &#8211; Add A New Top Bar Social</title>
		<link>https://docs.goodlayers.com/theme-version-3-add-a-new-top-bar-social/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Tue, 20 Jun 2023 04:30:36 +0000</pubDate>
				<category><![CDATA[Developers]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2877</guid>

					<description><![CDATA[Hello guys, today I will be walking with you to add a new top bar social. We&#8217;re writing this guide because we can&#8217;t provide all the socials on the top bar as per request, so you can select the one you want and add it by yourself. Let&#8217;s go! 1. I recommended backup your website [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Hello guys, today I will be walking with you to add a new top bar social. We&#8217;re writing this guide because we can&#8217;t provide all the socials on the top bar as per request, so you can select the one you want and add it by yourself. Let&#8217;s go!</p>



<p>1. <strong>I recommended backup your website before do anything.</strong></p>



<p>2. Call the file from the parent theme to the child theme to override the original file. Please add this function in the functions.php file of the child theme:</p>



<pre class="wp-block-code"><code>// Call the customize file in the child theme
require_once get_stylesheet_directory() . '/include/header-settings.php';</code></pre>



<p>3. Add the WhatsApp field in the top bar social around line 257 file header-settings.php:</p>



<p>The default code:</p>



<pre class="wp-block-code"><code>					'top-bar-social-icon-type' => array(
	'title' => esc_html__('Icon Type', 'traveltour'),
	'type' => 'combobox',
	'options' => array(
		'font-awesome' => esc_html__('Font Awesome', 'traveltour'),
		'font-awesome5' => esc_html__('Font Awesome 5', 'traveltour'),
	)
),
'top-bar-social-tiktok' => array(
	'title' => esc_html__('Top Bar Social Tiktok Link', 'traveltour'),
	'type' => 'text',
	'condition' => array( 'enable-top-bar-social' => 'enable', 'top-bar-social-icon-type' => 'font-awesome5' )
),</code></pre>



<p>Change the code to:</p>



<pre class="wp-block-code"><code>					'top-bar-social-icon-type' => array(
	'title' => esc_html__('Icon Type', 'traveltour'),
	'type' => 'combobox',
	'options' => array(
		'font-awesome' => esc_html__('Font Awesome', 'traveltour'),
		'font-awesome5' => esc_html__('Font Awesome 5', 'traveltour'),
	)
),
'top-bar-social-whatsapp' => array(
	'title' => esc_html__('Top Bar Social Whats App Link', 'traveltour'),
	'type' => 'text',
	'condition' => array( 'enable-top-bar-social' => 'enable', 'top-bar-social-icon-type' => 'font-awesome5' )
),
'top-bar-social-tiktok' => array(
	'title' => esc_html__('Top Bar Social Tiktok Link', 'traveltour'),
	'type' => 'text',
	'condition' => array( 'enable-top-bar-social' => 'enable', 'top-bar-social-icon-type' => 'font-awesome5' )
),</code></pre>



<p>Copy the header-social.php file from the parent theme to the child theme like this: xxx-child/header/header-social.php file and add the WhatsApp icon on the front end:</p>



<p>The default code:</p>



<pre class="wp-block-code"><code>}else if( $icon_type == 'font-awesome5' ){
	$social_list = array(
		'tiktok' => array('title'=> 'Tiktok', 'icon'=>'fa5b fa5-tiktok'),</code></pre>



<p>Change it to:</p>



<pre class="wp-block-code"><code>}else if( $icon_type == 'font-awesome5' ){
	$social_list = array(
		'whatsapp' => array('title'=> 'WhatsApp', 'icon'=>'fa5b fa5-whatsapp'),
		'tiktok' => array('title'=> 'Tiktok', 'icon'=>'fa5b fa5-tiktok'),</code></pre>



<p>You can check your website back now.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>GoodLayers Event &#8211; Add an excerpt in the event post</title>
		<link>https://docs.goodlayers.com/goodlayers-event-add-an-excerpt-in-the-event-post/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Fri, 28 Apr 2023 12:22:39 +0000</pubDate>
				<category><![CDATA[Developers]]></category>
		<category><![CDATA[GoodLayers Events]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2860</guid>

					<description><![CDATA[In the Confera theme, we have a few styles for the even/conference style like: &#8211; List style: https://demo.goodlayers.com/u/confera/online/schedule-list-1/ &#8211; Grid style: https://demo.goodlayers.com/u/confera/online/schedule-card-style/ In those styles, we don&#8217;t support the excerpt, that&#8217;s why we&#8217;re creating this article to help you add the excerpt by yourself. Step 1: Step 2: Call the file from child theme to [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="has-vivid-red-background-color has-text-color has-background" style="color:#ffffff">The developer documentation assumes you have knowledge and coding skills. While we created these docs to help you achieve things not available in the original features, we do not provide support if something doesn&#8217;t work when referencing the developer documentation. If the example code doesn’t work for you, please debug it yourself or hire a freelancer to help with debugging. <br><br>All customizations will be lost when you update our theme/plugin to a new version in the future. To avoid this, you must use filters and actions: https://developer.wordpress.org/plugins/hooks/.</p>



<p>In the <a rel="noreferrer noopener" href="https://themeforest.net/item/confera-online-conference-event-wordpress/29139864" target="_blank">Confera theme</a>, we have a few styles for the even/conference style like:</p>



<p>&#8211; List style: https://demo.goodlayers.com/u/confera/online/schedule-list-1/</p>



<p>&#8211; Grid style: https://demo.goodlayers.com/u/confera/online/schedule-card-style/</p>



<p>In those styles, we don&#8217;t support the excerpt, that&#8217;s why we&#8217;re creating this article to help you add the excerpt by yourself.</p>



<h2 class="wp-block-heading"><strong>Step 1:</strong></h2>



<ul class="wp-block-list">
<li>Backup your website.</li>



<li>Create a folder call: <strong>goodlayers-event</strong> in the child theme.</li>



<li>Copy those files into the <strong>goodlayers-event </strong>folder: event-item.php, event-style.php and pb-elelement-event.php.</li>
</ul>



<h2 class="wp-block-heading"><strong>Step 2:</strong></h2>



<p>Call the file from child theme to override the original file from the goodlayers event plugin. Please add this function in the functions.php file of the child theme:</p>



<pre class="wp-block-code"><code>// Call the customize file in the child theme
require_once get_stylesheet_directory() . '/goodlayers-event/event-style.php';
require_once get_stylesheet_directory() . '/goodlayers-event/event-item.php';
require_once get_stylesheet_directory() . '/goodlayers-event/pb-element-event.php';</code></pre>



<p>Override the original file after setup theme:</p>



<pre class="wp-block-code"><code>// Override the original file after setup theme
add_action('after_setup_theme', 'gdlr_core_event_add_pb_element_custom');
if(!function_exists('gdlr_core_event_add_pb_element_custom')){
	function gdlr_core_event_add_pb_element_custom(){
		if(class_exists('gdlr_core_page_builder_element')){
			gdlr_core_page_builder_element::add_element('event-g', 'gdlr_core_pb_element_event_g_custom');
		}
	}
}</code></pre>



<h2 class="wp-block-heading"><strong>Step 3:</strong></h2>



<h3 class="wp-block-heading">Go to event-style.php:</h3>



<p><strong>Original Code: </strong></p>



<pre class="wp-block-code"><code>	if( !class_exists('gdlr_core_event_g_style') ){
		class gdlr_core_event_g_style{</code></pre>



<p><strong>Change it to:</strong></p>



<pre class="wp-block-code"><code>if( !class_exists('gdlr_core_event_g_style_custom') ){
		class gdlr_core_event_g_style_custom{</code></pre>



<p>Search <strong>event style 1</strong> and add the excerpt.</p>



<p><strong>Original Code:</strong></p>



<pre class="wp-block-code"><code>$ret .= '&lt;div class="gdlr-core-content-wrap" >';
$ret .= $this->get_title($args);
$ret .= $this->get_info($infos);
$ret .= '&lt;/div>';</code></pre>



<p><strong>Change it to:</strong></p>



<pre class="wp-block-code"><code>$ret .= '&lt;div class="gdlr-core-content-wrap" >';
$ret .= $this->get_title($args);
$ret .= $this->get_info($infos);					
if( !empty($args&#91;'excerpt-number']) ){
    $ret .= $this->get_excerpt($args&#91;'excerpt-number']);
}
$ret .= '&lt;/div>';</code></pre>



<h3 class="wp-block-heading">Go to event-item.php</h3>



<p><strong>Original Code:</strong></p>



<pre class="wp-block-code"><code>// Around line 6-7	
if( !class_exists('gdlr_core_event_g_item') ){
		class gdlr_core_event_g_item{

// Around line 363
$query = $this->query;
$event_style = new gdlr_core_event_g_style();

// Around line 397
$event_style = new gdlr_core_event_g_style();

// Around line 499
add_action('wp_ajax_gdlr_core_event_g_ajax', 'gdlr_core_event_g_ajax');
add_action('wp_ajax_nopriv_gdlr_core_event_g_ajax', 'gdlr_core_event_g_ajax');
if( !function_exists('gdlr_core_event_g_ajax') ){
    function gdlr_core_event_g_ajax(){</code></pre>



<p><strong>Change it to:</strong></p>



<pre class="wp-block-code"><code>// Around line 6-7	
if( !class_exists('gdlr_core_event_g_item_custom') ){
		class gdlr_core_event_g_item_custom{

// Around line 363
$query = $this->query;
$event_style = new gdlr_core_event_g_style_custom();
$event_style->get_content($this->settings);

// Around line 397
$event_style = new gdlr_core_event_g_style_custom();
$event_style->get_content($this->settings);

// Around line 499
add_action('wp_ajax_gdlr_core_event_g_ajax', 'gdlr_core_event_g_custom_ajax',9);
add_action('wp_ajax_nopriv_gdlr_core_event_g_ajax', 'gdlr_core_event_g_custom_ajax',9);
if( !function_exists('gdlr_core_event_g_custom_ajax') ){
    function gdlr_core_event_g_custom_ajax(){</code></pre>



<h3 class="wp-block-heading">Go to pb-element-event.php</h3>



<p><strong>Original Code:</strong></p>



<pre class="wp-block-code"><code>// Around line 6
add_action('plugins_loaded', 'gdlr_core_event_add_pb_element');
	if( !function_exists('gdlr_core_event_add_pb_element') ){
		function gdlr_core_event_add_pb_element(){

			if( class_exists('gdlr_core_page_builder_element') ){
				gdlr_core_page_builder_element::add_element('event-g', 'gdlr_core_pb_element_event_g'); 
			}
			
		}
	}
	
	if( !class_exists('gdlr_core_pb_element_event_g') ){
		class gdlr_core_pb_element_event_g{

// Around line 121
'condition' => array( 'event-style' => 'style-2' )

// Around line 339
'event-style' => 'style-1', 'event-info' => array('date', 'time', 'location'),

// Around line 449
$event_item = new gdlr_core_event_g_item($settings);</code></pre>



<p><strong>Change it to:</strong></p>



<pre class="wp-block-code"><code>// Around line 6
if( !class_exists('gdlr_core_pb_element_event_g_custom') ){
		class gdlr_core_pb_element_event_g_custom{

// Around line 121
'condition' => array('event-style' => array('style-1', 'style-2', 'style-1-room', 'style-card', 'style-multi-date', 'style-grid'))

// Around line 339
'event-style' => 'style-1', 'event-info' => array('date', 'time', 'location', 'caption'),

// Around line 449
$event_item = new gdlr_core_event_g_item_custom($settings);</code></pre>



<p>Please clear the cache/cookie on your website before check it again.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Loco &#8211; Translate the default language</title>
		<link>https://docs.goodlayers.com/loco-translate-the-default-language/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Fri, 21 Apr 2023 11:23:14 +0000</pubDate>
				<category><![CDATA[Plugins / Sliders]]></category>
		<category><![CDATA[Tour Master]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2865</guid>

					<description><![CDATA[The default language usually is English, so we will start the guidance with English. The loco method is quite simple if you try to do it exactly like my steps below. &#8211; Install the loco plugin: Loco Translate – WordPress plugin &#124; WordPress.org &#8211; Go to Loco > Themes/Plugins > Select themes/plugins > Translate the plugin to [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>The default language usually is English, so we will start the guidance with English.</p>



<p>The loco method is quite simple if you try to do it exactly like my steps below.</p>



<p>&#8211; Install the loco plugin: <a href="https://wordpress.org/plugins/loco-translate/">Loco Translate – WordPress plugin | WordPress.org</a></p>



<p>&#8211; Go to Loco > Themes/Plugins > Select themes/plugins > Translate the plugin to the English language > Search the text > Change it to the text you want.</p>



<p>&#8211; Save the translated file.</p>



<p>&#8211; Check your website.</p>



<p>You can see how I try to change the text in the tour master from:</p>



<pre class="wp-block-code"><code>The initial price based on <strong>1 adult</strong> with the lowest price in low season</code></pre>



<p>To</p>



<pre class="wp-block-code"><code>The initial price based on <strong>2 adults</strong> with the lowest price in low season</code></pre>



<p>In this video:</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="GoodLayers - Travel Tour - Change the default language in Tour Master" width="1150" height="863" src="https://www.youtube.com/embed/eAPUrfDS1Sk?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
</div></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>GoodLayers &#8211; WPML &#8211; Different Logos for Different Languages</title>
		<link>https://docs.goodlayers.com/goodlayers-wpml-different-logos-for-different-languages/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Wed, 29 Mar 2023 08:56:37 +0000</pubDate>
				<category><![CDATA[Theme Settings]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2856</guid>

					<description><![CDATA[In this tutorial, I&#8217;ve shown how to set different logos for different languages. Please check the video below.]]></description>
										<content:encoded><![CDATA[
<p>In this tutorial, I&#8217;ve shown how to set different logos for different languages. Please check the video below.</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="GoodLayers - WPML - Different logos for different languages" width="1150" height="647" src="https://www.youtube.com/embed/VWEkch5T-Rs?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
</div></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Theme Version 2 &#8211; Override the parent theme to the child theme</title>
		<link>https://docs.goodlayers.com/theme-version-2-override-the-parent-theme-to-the-child-theme/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Wed, 29 Mar 2023 08:52:06 +0000</pubDate>
				<category><![CDATA[Developers]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2849</guid>

					<description><![CDATA[In this tutorial, I will try to override the gdlr-page-item.php in: \wp-content\themes\totalbusiness\include\function\gdlr-page-item.php from the Total Business theme into the child theme. In the child theme, copy the file in the path: totalbusiness-child\include\function\gdlr-page-item.php. (create the folder that&#8217;s not available in your child theme) In the functions.php in the child theme, add a line of code: Try to [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="has-vivid-red-background-color has-text-color has-background" style="color:#ffffff">The developer documentation assumes you have knowledge and coding skills. While we created these docs to help you achieve things not available in the original features, we do not provide support if something doesn&#8217;t work when referencing the developer documentation. If the example code doesn’t work for you, please debug it yourself or hire a freelancer to help with debugging. <br><br>All customizations will be lost when you update our theme/plugin to a new version in the future. To avoid this, you must use filters and actions: https://developer.wordpress.org/plugins/hooks/.</p>



<p>In this tutorial, I will try to override the gdlr-page-item.php in: <strong>\wp-content\themes\totalbusiness\include\function\gdlr-page-item.php</strong> from the Total Business theme into the child theme.</p>



<p>In the child theme, copy the file in the path: <strong>totalbusiness-child\include\function\gdlr-page-item.php</strong>. (create the folder that&#8217;s not available in your child theme)</p>



<figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" src="https://docs.goodlayers.com/wp-content/uploads/2023/03/support-2023-03-29-15.50.14.jpg" alt="" class="wp-image-2850" width="842" height="274" srcset="https://docs.goodlayers.com/wp-content/uploads/2023/03/support-2023-03-29-15.50.14.jpg 701w, https://docs.goodlayers.com/wp-content/uploads/2023/03/support-2023-03-29-15.50.14-300x98.jpg 300w" sizes="auto, (max-width: 842px) 100vw, 842px" /></figure>



<p>In the functions.php in the child theme, add a line of code:</p>



<pre class="wp-block-code"><code>include_once(get_stylesheet_directory() . '/include/function/gdlr-page-item.php');</code></pre>



<p>Try to make any change in the totalbusiness-child\include\function\gdlr-page-item.php and check it again.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Tour Master &#8211; Edit the icon information</title>
		<link>https://docs.goodlayers.com/tour-master-edit-the-icon-information/</link>
		
		<dc:creator><![CDATA[loc]]></dc:creator>
		<pubDate>Thu, 23 Feb 2023 03:55:27 +0000</pubDate>
				<category><![CDATA[Tour Master]]></category>
		<guid isPermaLink="false">https://docs.goodlayers.com/?p=2834</guid>

					<description><![CDATA[Method 1: Change it in the tour master plugin You can change the icon information in: wp-content/plugins/tourmaster/tour/include/pb/tour-style.php and search the tour info with the same code below and change it to the icon you want. You can get the icon list available in our theme here: Method 2: Create the icon information with the page [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Method 1: Change it in the tour master plugin</h2>



<p>You can change the icon information in: wp-content/plugins/tourmaster/tour/include/pb/tour-style.php and search the tour info with the same code below and change it to the icon you want.</p>



<p>You can get the icon list available in our theme here: </p>



<pre class="wp-block-code"><code>// tour info
function get_info( $options = array(), $args = array() ){

	$ret = '';
	$post_meta = tourmaster_get_post_meta(get_the_ID(), 'tourmaster-tour-option');

	foreach( $options as $type ){
		switch( $type ){
			case 'custom-excerpt': 
				if( !empty($post_meta&#91;'custom-excerpt']) ){
					$ret .= '&lt;div class="tourmaster-tour-info tourmaster-tour-info-custom-excerpt ' . (empty($args&#91;'info-class'])? '': esc_attr($args&#91;'info-class'])) . '" >';
					$ret .= tourmaster_content_filter($post_meta&#91;'custom-excerpt']);
					$ret .= ' &lt;/div>';
				} 
				break; 

			case 'duration-text': 
				if( !empty($post_meta&#91;'duration-text']) ){
					$ret .= '&lt;div class="tourmaster-tour-info tourmaster-tour-info-duration-text ' . (empty($args&#91;'info-class'])? '': esc_attr($args&#91;'info-class'])) . '" >';
					if( !empty($args&#91;'icon']) &amp;&amp; $args&#91;'icon'] == 'style-2' ){
						$ret .= tourmaster_get_svg('time-left');
					}else{
						$ret .= '&lt;i class="icon_clock_alt" >&lt;/i>';
					}
					$ret .= tourmaster_text_filter($post_meta&#91;'duration-text']);
					$ret .= ' &lt;/div>';
				} 
				break;

			case 'availability': 
				if( !empty($post_meta&#91;'date-range']) ){
					$ret .= '&lt;div class="tourmaster-tour-info tourmaster-tour-info-availability ' . (empty($args&#91;'info-class'])? '': esc_attr($args&#91;'info-class'])) . '" >';
					$ret .= '&lt;i class="fa fa-calendar" >&lt;/i>';
					$ret .= esc_html__('Availability :', 'tourmaster') . ' ';
					$ret .= tourmaster_text_filter($post_meta&#91;'date-range']);
					$ret .= ' &lt;/div>';
				} 
				break;

			case 'departure-location': 
				if( !empty($post_meta&#91;'departure-location']) ){
					$ret .= '&lt;div class="tourmaster-tour-info tourmaster-tour-info-departure-location ' . (empty($args&#91;'info-class'])? '': esc_attr($args&#91;'info-class'])) . '" >';
					$ret .= '&lt;i class="flaticon-takeoff-the-plane" >&lt;/i>';
					$ret .= tourmaster_text_filter($post_meta&#91;'departure-location']);
					$ret .= ' &lt;/div>';
				} 
				break;

			case 'return-location':
				if( !empty($post_meta&#91;'return-location']) ){
					$ret .= '&lt;div class="tourmaster-tour-info tourmaster-tour-info-return-location ' . (empty($args&#91;'info-class'])? '': esc_attr($args&#91;'info-class'])) . '" >';
					$ret .= '&lt;i class="flaticon-plane-landing" >&lt;/i>';
					$ret .= tourmaster_text_filter($post_meta&#91;'return-location']);
					$ret .= ' &lt;/div>';
				} 
				break; 

			case 'minimum-age': 
				if( !empty($post_meta&#91;'minimum-age']) ){
					$ret .= '&lt;div class="tourmaster-tour-info tourmaster-tour-info-minimum-age ' . (empty($args&#91;'info-class'])? '': esc_attr($args&#91;'info-class'])) . '" >';
					$ret .= '&lt;i class="fa fa-user" >&lt;/i>';
					$ret .= esc_html__('Min Age :', 'tourmaster') . ' ';
					$ret .= tourmaster_text_filter($post_meta&#91;'minimum-age']);
					$ret .= ' &lt;/div>';
				} 
				break; 

			case 'maximum-people':
				$maximum_people = get_post_meta(get_the_ID(), 'tourmaster-max-people', true);
				if( !empty($maximum_people) ){
					$ret .= '&lt;div class="tourmaster-tour-info tourmaster-tour-info-maximum-people ' . (empty($args&#91;'info-class'])? '': esc_attr($args&#91;'info-class'])) . '" >';
					$ret .= '&lt;i class="fa fa-users" >&lt;/i>';
					$ret .= esc_html__('Max People :', 'tourmaster') . ' ';
					$ret .= tourmaster_text_filter($maximum_people);
					$ret .= ' &lt;/div>';
				} 
				break; 
		}
	}

	if( empty($args&#91;'no-wrapper']) ){
		$ret = '&lt;div class="tourmaster-tour-info-wrap clearfix" >' . $ret . '&lt;/div>';
	}

	return $ret;
}</code></pre>



<h2 class="wp-block-heading">Method 2: Create the icon information with the page builder</h2>



<p>We have a way to setup the icon information section, so you can change the icon in the page builder and not need to touch in the plugin file, please check my step below:</p>



<h3 class="wp-block-heading">Step 1:</h3>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="859" height="628" src="https://docs.goodlayers.com/wp-content/uploads/2023/02/0KKc82q.png" alt="" class="wp-image-2836" srcset="https://docs.goodlayers.com/wp-content/uploads/2023/02/0KKc82q.png 859w, https://docs.goodlayers.com/wp-content/uploads/2023/02/0KKc82q-300x219.png 300w, https://docs.goodlayers.com/wp-content/uploads/2023/02/0KKc82q-768x561.png 768w" sizes="auto, (max-width: 859px) 100vw, 859px" /></figure>



<h3 class="wp-block-heading">Step 2:</h3>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="215" src="https://docs.goodlayers.com/wp-content/uploads/2023/02/Lr9nG4f-1024x215.png" alt="" class="wp-image-2835" srcset="https://docs.goodlayers.com/wp-content/uploads/2023/02/Lr9nG4f-1024x215.png 1024w, https://docs.goodlayers.com/wp-content/uploads/2023/02/Lr9nG4f-300x63.png 300w, https://docs.goodlayers.com/wp-content/uploads/2023/02/Lr9nG4f-768x161.png 768w, https://docs.goodlayers.com/wp-content/uploads/2023/02/Lr9nG4f.png 1329w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
