Installation Instructions:


1. Back up your cart database

 

2. Copy all files in root folder. (app, design, js)


3. app/addons/seo/func.php Add the following code after this code fn_seo_validate_object($seo, $path, $objects){

 

/* 4sprung web development - start */
if(Registry::get('addons.blog.status') == "A" && $seo['type'] == 't') {	// for blog categories
	if (Registry::get('runtime.company_id')) {
		 $company_id = Registry::get('runtime.company_id');
		 $condition = " WHERE company_id = $company_id"; 
	}		
	$blog_path = db_get_field("SELECT path_blog FROM ?:blog_settings $condition ");
	if($path) {
		$current_url_path = rtrim($path, '/');
		if($blog_path == $current_url_path) {
			return true;
		}	
	}
}
/* 4sprung web development - end */

 

4. app/addons/seo/func.php Replace "$option_value = Registry::get('addons.seo.' . $seo_var['option']);" by following code in function fn_check_seo_schema_option($seo_var, $option){

 

/*4sprung modify start*/
if($seo_var['dispatch'] == "blog.view" || $seo_var['dispatch'] == "blog_categories.view") {
	$option_value = "file";
} else {
	$option_value = Registry::get('addons.seo.' . $seo_var['option']);
}
/*4sprung modify end*/

 

5. app/addons/seo/func.php Add the following code after this code elseif (!empty($path)) {

  

/*4sprung Modify start*/
if($vars['dispatch'] == "blog.view" || $vars['dispatch'] == "blog_categories.view") {	   	
   	$result = true;	    
} else {
   	$result = false;
}
/*4sprung Modify end*/

  

6. app/addons/seo/func.php Add the following code before this code "if (!empty($seo_var['pager'])) {"

 

/* 4sprung Blog path settings - Start */
if ($parsed_query['dispatch'] == 'blog.view' && !empty($parsed_query['blog_news_id'])) {

	if (Registry::get('runtime.company_id')) {
		 $company_id = Registry::get('runtime.company_id');
		 $condition = "WHERE company_id = $company_id"; 
	}
	
	 $blog_path = db_get_field("SELECT path_blog FROM ?:blog_settings $condition ");
	 if($blog_path != "") {
		$parent_item_names[] .= $blog_path;
		 
		$link_parts['parent_items_names'] = !empty($parent_item_names) ? join('/', $parent_item_names) . "/" : "";
	}
				
	$link_parts['name'] = fn_seo_get_name('b', $parsed_query['blog_news_id'], '','', $lang_code);
	$link_parts['extension'] = SEO_FILENAME_EXTENSION;
	
	
	fn_seo_parced_query_unset($parsed_query, 'blog_news_id');

} elseif ($parsed_query['dispatch'] == 'blog_categories.view' && !empty($parsed_query['bcategory_id'])) {
	
	if (Registry::get('runtime.company_id')) {
		 $company_id = Registry::get('runtime.company_id');
		 $condition = "WHERE company_id = $company_id"; 
	}
	
	 $blog_path = db_get_field("SELECT path_blog FROM ?:blog_settings $condition ");
	 if($blog_path != "") {
		$parent_item_names[] .= $blog_path;
		$link_parts['parent_items_names'] = !empty($parent_item_names) ? join('/', $parent_item_names) . "/" : "";
	}
						
	$link_parts['name'] = fn_seo_get_name('t', $parsed_query['bcategory_id'], '','', $lang_code);
	$link_parts['extension'] = SEO_FILENAME_EXTENSION;
	fn_seo_parced_query_unset($parsed_query, 'bcategory_id');
}
/* Blog path settings - end */

 

6.1 changes on Addons On Google Sitemap:

Open the 'app/addons/google_sitemap/func.php' and add the following code:

Line no: 53 add the below code

 

//Blog sitemap xml code start	
case 'cblog':
	if(Registry::get('addons.blog.status')=="A"){
		$link = htmlentities('blog_categories.view?bcategory_id=' . $value);
	}
	break;			

case 'blog':
	if(Registry::get('addons.blog.status')=="A"){
		$link = htmlentities('blog.view?blog_news_id=' . $value);
	}
	break;
//Blog sitemap xml code end

 

Add this code on fn_google_sitemap_generate_link function in switch case. 


6.2 Add the following function after if ($sitemap_settings['include_products'] == "Y") {

  

//Blog Category sitemap xml code start
if(Registry::get('addons.blog.status')=="A"){		
		$cblogs = db_get_fields("SELECT bcategory_id FROM ?:blog_category_descriptions");
		//Add the all active categories
		if(!empty($cblogs))
		{
			foreach ($cblogs as $cblog) {				
				
					$links = fn_google_sitemap_generate_link('cblog', $cblog, $languages);
					$item = fn_google_sitemap_print_item_info($links, $lmod, 'daily', $cblog_array_xml_sitemap['priority']);
					fn_google_sitemap_check_counter($file, $link_counter, $file_counter, $links_blg, $simple_head, $simple_foot);
					fwrite($file, $item);
								
			}
		}
		//Blog Category sitemap xml code end

		//Blog sitemap xml code start
		$blogs = db_get_fields("SELECT blog_news_id FROM ?:blog_descriptions");
		//Add the all active categories
	
		if(!empty($blogs))
		{
			foreach ($blogs as $blog) {
			
				        
					$links = fn_google_sitemap_generate_link('blog', $blog, $languages);
					$item = fn_google_sitemap_print_item_info($links, $lmod, 'daily', $blog_array_xml_sitemap['priority']);
					fn_google_sitemap_check_counter($file, $link_counter, $file_counter, $links_blg, $simple_head, $simple_foot);
					fwrite($file, $item);
								
			}
		}

}
//Blog sitemap xml code end

 

6.3: app/addons/seo/func.php Find fn_set_hook('validate_sef_object', $path, $seo, $vars, $result, $objects); replace with //fn_set_hook('validate_sef_object', $path, $seo, $vars, $result, $objects);


6.4 : app/addons/seo/func.php Comment all deprecated function in seo/func.php except for function fn_seo_parced_query_unset


********************************************************


To Generate RSS


RSS Generate URL: YOUR_SITE_URL/index.php?dispatch=blog_rss.view

RSS URL: YOUR_SITE_URL/rss_feed.xml