Guest User

Untitled

a guest
Nov 1st, 2022
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.75 KB | None | 0 0
  1. <?php
  2. /**
  3. * Functions which enhance the theme into WordPress
  4. *
  5. * @package designexo
  6. */
  7.  
  8. /**
  9. * Theme Custom Logo
  10. */
  11. function designexo_header_logo() {
  12.  
  13. $designexo_main_header_style = get_theme_mod('designexo_main_header_style', 'standard');
  14. $designexo_sticky_bar_logo = get_theme_mod('designexo_sticky_bar_logo');
  15. $designexo_transparent_header_logo = get_theme_mod('designexo_transparent_header_logo');
  16.  
  17. if($designexo_transparent_header_logo != null && $designexo_main_header_style == 'transparent' && is_page_template('page-templates/frontpage.php') ){ ?>
  18.  
  19. <a class="navbar-brand" href="<?php echo home_url( '/' ); ?>" ><img src="<?php echo $designexo_transparent_header_logo; ?>" class="custom-logo" alt="<?php bloginfo("name"); ?>"></a>
  20.  
  21. <?php } elseif($designexo_transparent_header_logo != null && $designexo_main_header_style == 'overlap_classic'){ ?>
  22.  
  23. <a class="navbar-brand" href="<?php echo home_url( '/' ); ?>" ><img src="<?php echo $designexo_transparent_header_logo; ?>" class="custom-logo" alt="<?php bloginfo("name"); ?>"></a>
  24.  
  25. <?php }
  26.  
  27. else {
  28. the_custom_logo();
  29. }
  30. ?>
  31.  
  32. <?php if($designexo_sticky_bar_logo != null) : ?>
  33. <a class="sticky-navbar-brand" href="<?php echo home_url( '/' ); ?>" ><img src="<?php echo $designexo_sticky_bar_logo; ?>" class="custom-logo" alt="<?php bloginfo("name"); ?>"></a>
  34. <?php endif; ?>
  35.  
  36. <?php if ( display_header_text() ) : ?>
  37. <div class="site-branding-text">
  38. <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
  39. <?php
  40. $description = get_bloginfo( 'description', 'display' );
  41. if ( $description || is_customize_preview() ) : ?>
  42. <p class="site-description"><?php echo $description; ?></p>
  43. <?php endif; ?>
  44. </div>
  45. <?php endif;
  46. }
  47.  
  48. /**
  49. * Theme Logo Class
  50. */
  51. function designexo_header_logo_class($html)
  52. {
  53. $html = str_replace('custom-logo-link', 'navbar-brand', $html);
  54. return $html;
  55. }
  56. add_filter('get_custom_logo','designexo_header_logo_class');
  57.  
  58. /**
  59. * Theme Pages
  60. */
  61. function fresh_site_activate()
  62. {
  63. $fresh_site_activate = get_option( 'fresh_site_activate' );
  64. if ( (bool) $fresh_site_activate === false ) {
  65. $pages = array( esc_html__( 'Home', 'designexo' ), esc_html__( 'Blog', 'designexo' ) );
  66. foreach ($pages as $page){
  67. $post_data = array( 'post_author' => 1, 'post_name' => $page, 'post_status' => 'publish' , 'post_title' => $page, 'post_type' => 'page', );
  68. if($page== 'Home'):
  69. $page_option = 'page_on_front';
  70. $template = 'page-templates/frontpage.php';
  71. else:
  72. $page_option = 'page_for_posts';
  73. $template = 'page.php';
  74. endif;
  75. $post_data = wp_insert_post( $post_data, false );
  76. if ( $post_data ){
  77. update_post_meta( $post_data, '_wp_page_template', $template );
  78. $page = get_page_by_title($page);
  79. update_option( 'show_on_front', 'page' );
  80. update_option( $page_option, $page->ID );
  81. }
  82. }
  83. update_option( 'fresh_site_activate', true );
  84. }
  85. }
  86. fresh_site_activate();
  87.  
  88. /**
  89. * Theme Comment Function
  90. */
  91. if ( ! function_exists( 'designexo_comment' ) ) :
  92. function designexo_comment( $comment, $args, $depth )
  93. { ?>
  94. <div <?php comment_class('media comment-box'); ?> id="comment-<?php comment_ID(); ?>">
  95. <a class="pull-left-comment">
  96. <?php echo get_avatar($comment); ?>
  97. </a>
  98. <div class="media-body">
  99. <div class="comment-detail">
  100. <h5 class="comment-detail-title"><?php printf(('%s'), get_comment_author_link()) ?>
  101. <time class="comment-date">
  102. <a href="<?php echo esc_url( get_comment_link( $comment->comment_ID ) );?>">
  103. <?php comment_date('F j, Y');?>&nbsp;<?php esc_html_e('at','designexo');?>&nbsp;<?php comment_time('g:i a'); ?>
  104. </a>
  105. </time></h5>
  106. <?php comment_text() ;?>
  107. <div class="reply">
  108. <?php comment_reply_link(array_merge( $args, array('depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
  109. </div>
  110. <?php if ( $comment->comment_approved == '0' ) : ?>
  111. <em class="comment-awaiting-moderation"><?php esc_html_e( 'Your comment is awaiting moderation.', 'designexo' ); ?></em>
  112. <br/>
  113. <?php endif; ?>
  114. </div>
  115. </div>
  116. </div>
  117. <?php
  118. }
  119. endif;
  120. add_filter('get_avatar','designexo_gravatar_class');
  121. function designexo_gravatar_class($class) {
  122. $class = str_replace("class='avatar", "class='img-fluid comment-img", $class);
  123. return $class;
  124. }
  125.  
  126. function designexo_read_more_button_class($read_class)
  127. { global $post;
  128. return '<p><a href="' . esc_url(get_permalink()) . "#more-{$post->ID}\" class=\"more-link\">" .esc_html__('Read More','designexo')."</a></p>";
  129. }
  130. add_filter( 'the_content_more_link', 'designexo_read_more_button_class' );
  131.  
  132. function designexo_post_thumbnail() {
  133. if(has_post_thumbnail()){
  134. echo '<figure class="post-thumbnail"><a href="'.esc_url(get_the_permalink()).'">';
  135. the_post_thumbnail( '', array( 'class'=>'img-fluid' ) );
  136. echo '</a></figure>';
  137. }
  138. }
  139.  
  140. /**
  141. * Theme Page Header Title
  142. */
  143. function designexo_theme_page_header_title(){
  144. $designexo_page_header_layout = get_theme_mod('designexo_page_header_layout', 'designexo_page_header_layout2');
  145. if($designexo_page_header_layout == 'designexo_page_header_layout1'):
  146. $page_title_class = 'text-center';
  147. else: $page_title_class = '';
  148. endif;
  149. if( is_archive() )
  150. {
  151. echo '<div class="page-header-title '.$page_title_class.'"><h1 class="text-white">';
  152. if ( is_day() ) :
  153. printf( __( '%1$s %2$s', 'designexo' ), __('Archives','designexo'), get_the_date() );
  154. elseif ( is_month() ) :
  155. printf( __( '%1$s %2$s', 'designexo' ), __('Archives','designexo'), get_the_date( 'F Y' ) );
  156. elseif ( is_year() ) :
  157. printf( __( '%1$s %2$s', 'designexo' ), __('Archives','designexo'), get_the_date( 'Y' ) );
  158. elseif( is_author() ):
  159. printf( __( '%1$s %2$s', 'designexo' ), __('All posts by','designexo'), get_the_author() );
  160. elseif( is_category() ):
  161. printf( __( '%1$s %2$s', 'designexo' ), __('Category','designexo'), single_cat_title( '', false ) );
  162. elseif( is_tag() ):
  163. printf( __( '%1$s %2$s', 'designexo' ), __('Tag','designexo'), single_tag_title( '', false ) );
  164. elseif( class_exists( 'WooCommerce' ) && is_shop() ):
  165. printf( __( '%1$s %2$s', 'designexo' ), __('Product','designexo'), single_tag_title( '', false ));
  166. elseif( is_archive() ):
  167. the_archive_title( '<h1 class="text-white">', '</h1>' );
  168. endif;
  169. echo '</h1></div>';
  170. }
  171. elseif( is_404() )
  172. {
  173. echo '<div class="page-header-title '.$page_title_class.'"><h1 class="text-white">';
  174. printf( __( '%1$s ', 'designexo' ) , __('404','designexo') );
  175. echo '</h1></div>';
  176. }
  177. elseif( is_search() )
  178. {
  179. echo '<div class="page-header-title '.$page_title_class.'"><h1 class="text-white">';
  180. printf( __( '%1$s %2$s', 'designexo' ), __('Search results for','designexo'), get_search_query() );
  181. echo '</h1></div>';
  182. }
  183. else
  184. {
  185. echo '<div class="page-header-title '.$page_title_class.'"><h1 class="text-white">'.get_the_title().'</h1></div>';
  186. }
  187. }
  188.  
  189. function designexo_bootstrap_menu_notitle( $menu ){
  190. return $menu = preg_replace('/ title=\"(.*?)\"/', '', $menu );
  191. }
  192. add_filter( 'wp_nav_menu', 'designexo_bootstrap_menu_notitle' );
  193.  
  194. /**
  195. * Theme Breadcrumbs Url
  196. */
  197. function designexo_page_url() {
  198. $page_url = 'http';
  199. if ( key_exists("HTTPS", $_SERVER) && ( $_SERVER["HTTPS"] == "on" ) ){
  200. $page_url .= "s";
  201. }
  202. $page_url .= "://";
  203. if ($_SERVER["SERVER_PORT"] != "80") {
  204. $page_url .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
  205. } else {
  206. $page_url .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
  207. }
  208. return $page_url;
  209. }
  210.  
  211. /**
  212. * Theme Breadcrumbs
  213. */
  214. if( !function_exists('designexo_page_header_breadcrumbs') ):
  215. function designexo_page_header_breadcrumbs() {
  216. global $post;
  217. $homeLink = home_url();
  218. $designexo_page_header_layout = get_theme_mod('designexo_page_header_layout', 'designexo_page_header_layout2');
  219. if($designexo_page_header_layout == 'designexo_page_header_layout1'):
  220. $breadcrumb_class = 'text-center';
  221. else: $breadcrumb_class = 'text-right';
  222. endif;
  223.  
  224. echo '<ul class="page-breadcrumb '.$breadcrumb_class.'">';
  225. if (is_home() || is_front_page()) :
  226. echo '<li><a href="'.$homeLink.'">'.__('Home','designexo').'</a></li>';
  227. echo '<li class="active">'; echo single_post_title(); echo '</li>';
  228. else:
  229. echo '<li><a href="'.$homeLink.'">'.__('Home','designexo').'</a></li>';
  230. if ( is_category() ) {
  231. echo '<li class="active"><a href="'. designexo_page_url() .'">' . __('Archive by category','designexo').' "' . single_cat_title('', false) . '"</a></li>';
  232. } elseif ( is_day() ) {
  233. echo '<li class="active"><a href="'. get_year_link(get_the_time('Y')) . '">'. get_the_time('Y') .'</a>';
  234. echo '<li class="active"><a href="'. get_month_link(get_the_time('Y'),get_the_time('m')) .'">'. get_the_time('F') .'</a>';
  235. echo '<li class="active"><a href="'. designexo_page_url() .'">'. get_the_time('d') .'</a></li>';
  236. } elseif ( is_month() ) {
  237. echo '<li class="active"><a href="' . get_year_link(get_the_time('Y')) . '">' . get_the_time('Y') . '</a>';
  238. echo '<li class="active"><a href="'. designexo_page_url() .'">'. get_the_time('F') .'</a></li>';
  239. } elseif ( is_year() ) {
  240. echo '<li class="active"><a href="'. designexo_page_url() .'">'. get_the_time('Y') .'</a></li>';
  241. } elseif ( is_single() && !is_attachment() && is_page('single-product') ) {
  242. if ( get_post_type() != 'post' ) {
  243. $cat = get_the_category();
  244. $cat = $cat[0];
  245. echo '<li>';
  246. echo get_category_parents($cat, TRUE, '');
  247. echo '</li>';
  248. echo '<li class="active"><a href="' . designexo_page_url() . '">'. wp_title( '',false ) .'</a></li>';
  249. } }
  250. elseif ( is_page() && $post->post_parent ) {
  251. $parent_id = $post->post_parent;
  252. $breadcrumbs = array();
  253. while ($parent_id) {
  254. $page = get_page($parent_id);
  255. $breadcrumbs[] = '<li class="active"><a href="' . get_permalink($page->ID) . '">' . get_the_title($page->ID) . '</a>';
  256. $parent_id = $page->post_parent;
  257. }
  258. $breadcrumbs = array_reverse($breadcrumbs);
  259. foreach ($breadcrumbs as $crumb) echo $crumb;
  260. echo '<li class="active"><a href="' . designexo_page_url() . '">'. get_the_title() .'</a></li>';
  261. }
  262. elseif( is_search() )
  263. {
  264. echo '<li class="active"><a href="' . designexo_page_url() . '">'. get_search_query() .'</a></li>';
  265. }
  266. elseif( is_404() )
  267. {
  268. echo '<li class="active"><a href="' . designexo_page_url() . '">'.__('Error 404','designexo').'</a></li>';
  269. }
  270. else {
  271. echo '<li class="active"><a href="' . designexo_page_url() . '">'. get_the_title() .'</a></li>';
  272. }
  273. endif;
  274. echo '</ul>';
  275. }
  276. endif;
  277.  
  278. /*
  279. * Import customizer options from Lite version
  280. */
  281. add_action( 'after_switch_theme', 'designexo_merge_lite_options' );
  282. /**
  283. * Import lite options.
  284. */
  285. function designexo_merge_lite_options() {
  286.  
  287. $designexo_mods = get_option( 'theme_mods_designexo' );
  288.  
  289. if ( ! empty( $designexo_mods ) ) {
  290.  
  291. foreach ( $designexo_mods as $designexo_mod_k => $designexo_mod_v ) {
  292. set_theme_mod( $designexo_mod_k, $designexo_mod_v );
  293. }
  294. }
  295. }
  296.  
  297. add_action( 'after_switch_theme', 'designexo_import_theme_mods_from_child_theme_to_pro_theme' );
  298.  
  299. /**
  300. * Import theme options from child theme to Designexo Pro theme
  301. */
  302. function designexo_import_theme_mods_from_child_theme_to_pro_theme() {
  303.  
  304. // Get the name of the previously active theme.
  305. $previous_theme = strtolower( get_option( 'theme_switched' ) );
  306.  
  307. if ( ! in_array(
  308. $previous_theme, array(
  309. 'empresa',
  310. 'interiorwp',
  311. 'architect-decor',
  312. 'architects',
  313. 'intecopress',
  314. 'monster-dark',
  315. 'newsmedia',
  316. 'interior-dark',
  317. 'spicemag',
  318. 'designtech',
  319. 'interiorx',
  320. )
  321. ) ) {
  322. return;
  323. }
  324.  
  325. // Get the theme mods from the previous theme.
  326. $previous_theme_content = get_option( 'theme_mods_' . $previous_theme );
  327.  
  328. if ( ! empty( $previous_theme_content ) ) {
  329. foreach ( $previous_theme_content as $previous_theme_mod_k => $previous_theme_mod_v ) {
  330. set_theme_mod( $previous_theme_mod_k, $previous_theme_mod_v );
  331. }
  332. }
  333. }
  334.  
  335. /**
  336. * Import lite project options.
  337. */
  338. $merge_project_lite_options = get_option( 'merge_project_lite_options' , 'lite');
  339. $designexo_project_content = get_theme_mod( 'designexo_project_content');
  340. if ( ! empty( $designexo_project_content ) ) {
  341. if ( $merge_project_lite_options === 'lite' ) {
  342. $allowed_html = array('br' => array(), 'em' => array(), 'strong' => array(), 'b' => array(),'i' => array());
  343. $designexo_project_content = json_decode($designexo_project_content);
  344. foreach ( $designexo_project_content as $project_item ) {
  345. $image_url = ! empty( $project_item->image_url ) ? $project_item->image_url : '';
  346. $title = ! empty( $project_item->title ) ? $project_item->title : '';
  347. $text = ! empty( $project_item->text ) ? $project_item->text : '';
  348.  
  349. if(!empty($title)){
  350. $post_id = wp_insert_post(
  351. array (
  352. 'post_type' => 'designexo_portfolio',
  353. 'post_title' => $title,
  354. 'post_status' => 'publish',
  355. ));
  356. $filename = $image_url;
  357. $filetype = wp_check_filetype( basename( $filename ), null );
  358. $wp_upload_dir = wp_upload_dir();
  359. $attachment = array(
  360. 'guid' => $wp_upload_dir['url'] . '/' . basename( $filename ),
  361. 'post_mime_type' => $filetype['type'],
  362. 'post_title' => preg_replace( '/\.[^.]+$/', '', basename( $filename ) ),
  363. 'post_content' => '',
  364. 'post_status' => 'inherit'
  365. );
  366. $attach_id = wp_insert_attachment( $attachment, $filename, $post_id );
  367. set_post_thumbnail( $post_id, $attach_id );
  368. update_post_meta($post_id, 'custom_portfolio_description', sanitize_text_field($text));
  369. $table_name = $wpdb->prefix . "term_relationships";
  370. $wpdb->insert($table_name, array('object_id' => $post_id, 'term_taxonomy_id' => 2 ,'term_order' => 0) );
  371. }
  372. }
  373. update_option( 'merge_project_lite_options', 'update' );
  374. }
  375.  
  376. }
  377.  
  378.  
  379. /**
  380. * Blog Masonry
  381. */
  382. function designexo_custom_script()
  383. {
  384. wp_reset_query();
  385. $col =6;
  386. if(is_page_template('page-templates/blog-masonry-2-col.php'))
  387. { $col =6; }
  388. elseif(is_page_template('page-templates/blog-masonry-3-col.php'))
  389. { $col =4; }
  390. elseif(is_page_template('page-templates/blog-masonry-4-col.php'))
  391. { $col =3; }
  392. ?>
  393. <script>
  394. jQuery(document).ready(function ( jQuery ) {
  395. jQuery("#blog-masonry").mpmansory(
  396. {
  397. childrenClass: 'item', // default is a div
  398. columnClasses: 'padding', //add classes to items
  399. breakpoints:{
  400. xl: <?php echo $col; ?>, //Change masonry column here like 2, 3, 4 column
  401. lg: 4,
  402. md: 6,
  403. sm: 12,
  404. xs: 12
  405. },
  406. distributeBy: { order: false, height: false, attr: 'data-order', attrOrder: 'asc' }, //default distribute by order, options => order: true/false, height: true/false, attr => 'data-order', attrOrder=> 'asc'/'desc'
  407. onload: function (items) {
  408. //make somthing with items
  409. }
  410. }
  411. );
  412. });
  413. </script>
  414. <?php
  415. }
  416. add_action('wp_footer','designexo_custom_script');
  417.  
  418.  
  419. function designexo_background_image()
  420. {
  421. $theme_boxed_image = get_theme_mod('designexo_theme_background_image','bg-patternm1');
  422. if($theme_boxed_image!='')
  423. {
  424. if($theme_boxed_image == 'bg-patternm1' || $theme_boxed_image == 'bg-patternm2' || $theme_boxed_image == 'bg-patternm3' || $theme_boxed_image == 'bg-patternm4'){ $image_format = 'png';}
  425. else { $image_format = 'jpg'; }
  426. echo '<style>body.theme-boxed{ background:url("'.DESIGNEXO_PARENT_INC_ICON_URI.'/'.$theme_boxed_image.'.'.$image_format.'") repeat fixed;}</style>';
  427. }
  428. }
  429. add_action('wp_head','designexo_background_image',10,0);
  430.  
  431. /**
  432. * Add object term default
  433. */
  434. function designexo_default_object_terms( $post_id, $post ) {
  435. if ( 'publish' === $post->post_status && $post->post_type === 'designexo_portfolio' ) {
  436. $defaults = array( 'portfolio_categories' => array( 'Show All' ) );
  437. $taxonomies = get_object_taxonomies( $post->post_type );
  438. foreach ( (array) $taxonomies as $taxonomy ) {
  439. $terms = wp_get_post_terms( $post_id, $taxonomy );
  440. if ( empty( $terms ) && array_key_exists( $taxonomy, $defaults ) ) {
  441. wp_set_object_terms( $post_id, $defaults[$taxonomy], $taxonomy );
  442. }
  443. }
  444. }
  445. }
  446. add_action( 'save_post', 'designexo_default_object_terms', 0, 2 );
  447.  
  448. /**
  449. * Custom Theme Script
  450. */
  451. function designexo_custom_owl_theme_scripts() {
  452. $designexo_main_slider_aniamte_type = get_theme_mod('designexo_main_slider_aniamte_type', 'slide');
  453. if($designexo_main_slider_aniamte_type == 'fade'):
  454. $designexo_main_slider_aniamte_in = 'fadeIn'; $designexo_main_slider_aniamte_out = 'fadeOut';
  455. else:
  456. $designexo_main_slider_aniamte_in = ''; $designexo_main_slider_aniamte_out = '';
  457. endif;
  458. $designexo_main_slider_scroll_speed = get_theme_mod('designexo_main_slider_scroll_speed', array('slider' => 6000,'suffix' => 'ms',));
  459. $designexo_main_slider_smart_speed = get_theme_mod('designexo_main_slider_smart_speed', array('slider' => 600,'suffix' => 'ms',));
  460. $designexo_main_slider_mouse_drag_disabled = get_theme_mod('designexo_main_slider_mouse_drag_disabled', true);
  461.  
  462. $designexo_project_scroll_speed = get_theme_mod('designexo_project_scroll_speed', array('slider' => 2500,'suffix' => 'ms',));
  463. $designexo_project_smart_speed = get_theme_mod('designexo_project_smart_speed', array('slider' => 1000,'suffix' => 'ms',));
  464. $designexo_project_mouse_drag_disabled = get_theme_mod('designexo_project_mouse_drag_disabled', true);
  465. $designexo_project_column_layout = get_theme_mod('designexo_project_column_layout', '4');
  466.  
  467. $designexo_testimonial_scroll_speed = get_theme_mod('designexo_testimonial_scroll_speed', array('slider' => 2500,'suffix' => 'ms',));
  468. $designexo_testimonial_smart_speed = get_theme_mod('designexo_testimonial_smart_speed', array('slider' => 1000,'suffix' => 'ms',));
  469. $designexo_testimonial_mouse_drag_disabled = get_theme_mod('designexo_testimonial_mouse_drag_disabled', true);
  470. $designexo_testimonial_column_layout = get_theme_mod('designexo_testimonial_column_layout', '3');
  471.  
  472. $designexo_wooshop_scroll_speed = get_theme_mod('designexo_wooshop_scroll_speed', array('slider' => 2500,'suffix' => 'ms',));
  473. $designexo_wooshop_smart_speed = get_theme_mod('designexo_wooshop_smart_speed', array('slider' => 1000,'suffix' => 'ms',));
  474. $designexo_wooshop_mouse_drag_disabled = get_theme_mod('designexo_wooshop_mouse_drag_disabled', true);
  475. $designexo_wooshop_column_layout = get_theme_mod('designexo_wooshop_column_layout', '4');
  476.  
  477. $designexo_team_scroll_speed = get_theme_mod('designexo_team_scroll_speed', array('slider' => 2500,'suffix' => 'ms',));
  478. $designexo_team_smart_speed = get_theme_mod('designexo_team_smart_speed', array('slider' => 1000,'suffix' => 'ms',));
  479. $designexo_team_mouse_drag_disabled = get_theme_mod('designexo_team_mouse_drag_disabled', true);
  480. $designexo_team_column_layout = get_theme_mod('designexo_team_column_layout', '3');
  481.  
  482. $designexo_client_scroll_speed = get_theme_mod('designexo_client_scroll_speed', array('slider' => 2500,'suffix' => 'ms',));
  483. $designexo_client_smart_speed = get_theme_mod('designexo_client_smart_speed', array('slider' => 1000,'suffix' => 'ms',));
  484. $designexo_client_mouse_drag_disabled = get_theme_mod('designexo_client_mouse_drag_disabled', true);
  485. $designexo_client1_column_layout = get_theme_mod('designexo_client1_column_layout', '5');
  486.  
  487. $custom_data = array(
  488. 'designexo_main_slider_aniamte_in' => $designexo_main_slider_aniamte_in,
  489. 'designexo_main_slider_aniamte_out' => $designexo_main_slider_aniamte_out,
  490. 'designexo_main_slider_scroll_speed' => $designexo_main_slider_scroll_speed['slider'],
  491. 'designexo_main_slider_smart_speed' => $designexo_main_slider_smart_speed['slider'],
  492. 'designexo_main_slider_mouse_drag_disabled' => $designexo_main_slider_mouse_drag_disabled,
  493. 'designexo_project_scroll_speed' => $designexo_project_scroll_speed['slider'],
  494. 'designexo_project_smart_speed' => $designexo_project_smart_speed['slider'],
  495. 'designexo_project_mouse_drag_disabled' => $designexo_project_mouse_drag_disabled,
  496. 'designexo_project_column_layout' => $designexo_project_column_layout,
  497. 'designexo_testimonial_scroll_speed' => $designexo_testimonial_scroll_speed['slider'],
  498. 'designexo_testimonial_smart_speed' => $designexo_testimonial_smart_speed['slider'],
  499. 'designexo_testimonial_mouse_drag_disabled' => $designexo_testimonial_mouse_drag_disabled,
  500. 'designexo_testimonial_column_layout' => $designexo_testimonial_column_layout,
  501. 'designexo_wooshop_scroll_speed' => $designexo_wooshop_scroll_speed['slider'],
  502. 'designexo_wooshop_smart_speed' => $designexo_wooshop_smart_speed['slider'],
  503. 'designexo_wooshop_mouse_drag_disabled' => $designexo_wooshop_mouse_drag_disabled,
  504. 'designexo_wooshop_column_layout' => $designexo_wooshop_column_layout,
  505. 'designexo_team_scroll_speed' => $designexo_team_scroll_speed['slider'],
  506. 'designexo_team_smart_speed' => $designexo_team_smart_speed['slider'],
  507. 'designexo_team_mouse_drag_disabled' => $designexo_team_mouse_drag_disabled,
  508. 'designexo_team_column_layout' => $designexo_team_column_layout,
  509. 'designexo_client_scroll_speed' => $designexo_client_scroll_speed['slider'],
  510. 'designexo_client_smart_speed' => $designexo_client_smart_speed['slider'],
  511. 'designexo_client_mouse_drag_disabled' => $designexo_client_mouse_drag_disabled,
  512. 'designexo_client1_column_layout' => $designexo_client1_column_layout,
  513. );
  514.  
  515. wp_register_script('designexo-custom',get_template_directory_uri().'/assets/js/custom.js',array('jquery'));
  516. wp_localize_script('designexo-custom','custom_data',$custom_data);
  517. wp_enqueue_script('designexo-custom');
  518. }
  519. add_action( 'wp_enqueue_scripts', 'designexo_custom_owl_theme_scripts' );
  520.  
  521. /**
  522. * Theme Pagination Class.
  523. */
  524. class Class_designexo_Theme_Pagination
  525. {
  526. function designexo_pagination()
  527. {
  528. global $post;
  529. global $wp_query, $wp_rewrite,$loop;
  530. if ( get_query_var( 'paged' ) ) { $paged = get_query_var( 'paged' ); }
  531. elseif ( get_query_var( 'page' ) ) { $paged = get_query_var( 'page' ); } else { $paged = 1; }
  532. if($wp_query->max_num_pages==0){ $wp_query = $loop; }
  533. ?>
  534. <div class="pagination wow animate fadeInUp" data-wow-delay=".3s">
  535. <?php if( $paged != 1 ) : ?>
  536. <a href="<?php echo get_pagenum_link(($paged-1 > 0 ? $paged-1 : 1)); ?>"><i class="fa fa-angle-double-left"></i></a><?php endif; ?><?php for($i=1;$i<=($wp_query->max_num_pages>1 ? $wp_query->max_num_pages : 0 );$i++){ ?> <a class="<?php echo ($i == $paged ? 'active ' : ''); ?>" href="<?php echo get_pagenum_link($i); ?>"><?php echo $i; ?></a> <?php } ?>
  537. <?php if($wp_query->max_num_pages!= $paged): ?>
  538. <a href="<?php echo get_pagenum_link(($paged+1 <= $wp_query->max_num_pages ? $paged+1 : $wp_query->max_num_pages )); ?>"><i class="fa fa-angle-double-right"></i></a>
  539. <?php endif; ?>
  540. </div>
  541. <?php
  542. }
  543. }
  544.  
  545. /**
  546. * Add WPML and Polylang compatibility.
  547. */
  548.  
  549. function designexo_translate_single_string( $original_value, $domain ) {
  550. if ( is_customize_preview() ) {
  551. $wpml_translation = $original_value;
  552. } else {
  553. $wpml_translation = apply_filters( 'wpml_translate_single_string', $original_value, $domain, $original_value );
  554. if ( $wpml_translation === $original_value && function_exists( 'pll__' ) ) {
  555. return pll__( $original_value );
  556. }
  557. }
  558. return $wpml_translation;
  559. }
  560. add_filter( 'designexo_translate_single_string', 'designexo_translate_single_string', 10, 2 );
  561.  
  562. /**
  563. * register pll string.
  564. */
  565. function designexo_pll_string_register( $theme_mod ) {
  566. if ( ! function_exists( 'pll_register_string' ) ) { return; }
  567. $repeater_content = get_theme_mod( $theme_mod );
  568. $repeater_content = json_decode( $repeater_content );
  569. if ( ! empty( $repeater_content ) ) {
  570. foreach ( $repeater_content as $repeater_item ) {
  571. foreach ( $repeater_item as $field_name => $field_value ) {
  572. if ( $field_value !== 'undefined' ) {
  573. if ( $field_name !== 'id' ) {
  574. $f_n = ucfirst( $field_name );
  575. pll_register_string( $f_n, $field_value);
  576. }
  577. }
  578. }
  579. }
  580. }
  581. }
  582.  
  583. /**
  584. * Top Header Info
  585. */
  586. function designexo_top_header_info_register_strings() {
  587. designexo_pll_string_register( 'designexo_top_header_info_content', 'Theme Header Info' );
  588. }
  589.  
  590. /**
  591. * Top Header Social Icon
  592. */
  593. function designexo_top_header_social_register_strings() {
  594. designexo_pll_string_register( 'designexo_top_header_social_content', 'Theme Header Social' );
  595. }
  596.  
  597. /**
  598. * Theme Info
  599. */
  600. function designexo_theme_info_register_strings() {
  601. designexo_pll_string_register( 'designexo_theme_info_content', 'Theme Info Area' );
  602. }
  603.  
  604. /**
  605. * Main Slider.
  606. */
  607. function designexo_main_slider_register_strings() {
  608. designexo_pll_string_register( 'designexo_main_slider_content', 'Theme Slider' );
  609. }
  610.  
  611. /**
  612. * Service
  613. */
  614. function designexo_service_register_strings() {
  615. designexo_pll_string_register( 'designexo_service_content', 'Theme Service' );
  616. }
  617.  
  618. /**
  619. * Funfact
  620. */
  621. function designexo_funfact_register_strings() {
  622. designexo_pll_string_register( 'designexo_funfact_content', 'Theme Funfact' );
  623. }
  624.  
  625. /**
  626. * Testimonial
  627. */
  628. function designexo_testimonial_register_strings() {
  629. designexo_pll_string_register( 'designexo_testimonial_content', 'Theme Testimonial' );
  630. }
  631.  
  632. /**
  633. * Team
  634. */
  635. function designexo_team_register_strings() {
  636. designexo_pll_string_register( 'designexo_team_content', 'Theme Team' );
  637. }
  638.  
  639. /**
  640. * Client
  641. */
  642. function designexo_clients_register_strings() {
  643. designexo_pll_string_register( 'designexo_clients_content', 'Theme Client' );
  644. }
  645.  
  646. /**
  647. * Contact Info
  648. */
  649. function designexo_contact_template_info_register_strings() {
  650. designexo_pll_string_register( 'designexo_contact_template_info_content', 'Theme Contact Info' );
  651. }
  652.  
  653. /**
  654. * Pll register
  655. */
  656. if ( function_exists( 'pll_register_string' ) ) {
  657. add_action( 'after_setup_theme', 'designexo_top_header_info_register_strings', 11 );
  658. add_action( 'after_setup_theme', 'designexo_top_header_social_register_strings', 11 );
  659. add_action( 'after_setup_theme', 'designexo_theme_info_register_strings', 11 );
  660. add_action( 'after_setup_theme', 'designexo_main_slider_register_strings', 11 );
  661. add_action( 'after_setup_theme', 'designexo_service_register_strings', 11 );
  662. add_action( 'after_setup_theme', 'designexo_funfact_register_strings', 11 );
  663. add_action( 'after_setup_theme', 'designexo_testimonial_register_strings', 11 );
  664. add_action( 'after_setup_theme', 'designexo_team_register_strings', 11 );
  665. add_action( 'after_setup_theme', 'designexo_clients_register_strings', 11 );
  666. add_action( 'after_setup_theme', 'designexo_contact_template_info_register_strings', 11 );
  667. }
  668.  
  669. /**
  670. * Import data
  671. */
  672. function designexo_pro_ocdi_import_files() {
  673. return array(
  674. array(
  675. 'import_file_name' => 'Demo 1',
  676. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo1/designexo-pro.xml',
  677. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo1/widgets.wie',
  678. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo1/customizer.dat',
  679. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro.jpg',
  680. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  681. 'preview_url' => 'https://designexo-pro.themearile.com/',
  682. ),
  683. array(
  684. 'import_file_name' => 'Demo 2',
  685. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo2/designexo-pro.xml',
  686. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo2/widgets.wie',
  687. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo2/customizer.dat',
  688. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-two.jpg',
  689. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  690. 'preview_url' => 'https://designexo-pro-two.themearile.com/',
  691. ),
  692. array(
  693. 'import_file_name' => 'Demo 3',
  694. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo3/designexo-pro.xml',
  695. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo3/widgets.wie',
  696. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo3/customizer.dat',
  697. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-three.jpg',
  698. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  699. 'preview_url' => 'https://designexo-pro-three.themearile.com/',
  700. ),
  701. array(
  702. 'import_file_name' => 'Demo 4',
  703. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo4/designexo-pro.xml',
  704. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo4/widgets.wie',
  705. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo4/customizer.dat',
  706. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-four.jpg',
  707. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  708. 'preview_url' => 'https://designexo-pro-four.themearile.com/',
  709. ),
  710. array(
  711. 'import_file_name' => 'Demo 5',
  712. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo5/designexo-pro.xml',
  713. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo5/widgets.wie',
  714. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo5/customizer.dat',
  715. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-five.jpg',
  716. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  717. 'preview_url' => 'https://designexo-pro-five.themearile.com/',
  718. ),
  719. array(
  720. 'import_file_name' => 'Demo 6',
  721. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo6/designexo-pro.xml',
  722. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo6/widgets.wie',
  723. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo6/customizer.dat',
  724. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-six.jpg',
  725. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  726. 'preview_url' => 'https://designexo-pro-six.themearile.com/',
  727. ),
  728. array(
  729. 'import_file_name' => 'Demo 7',
  730. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo7/designexo-pro.xml',
  731. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo7/widgets.wie',
  732. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo7/customizer.dat',
  733. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-seven.jpg',
  734. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  735. 'preview_url' => 'https://designexo-pro-seven.themearile.com/',
  736. ),
  737. array(
  738. 'import_file_name' => 'Demo 8',
  739. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo8/designexo-pro.xml',
  740. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo8/widgets.wie',
  741. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo8/customizer.dat',
  742. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-eight.jpg',
  743. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  744. 'preview_url' => 'https://designexo-pro-eight.themearile.com/',
  745. ),
  746. array(
  747. 'import_file_name' => 'Demo 9',
  748. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo9/designexo-pro.xml',
  749. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo9/widgets.wie',
  750. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo9/customizer.dat',
  751. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-nine.jpg',
  752. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  753. 'preview_url' => 'https://designexo-pro-nine.themearile.com/',
  754. ),
  755. array(
  756. 'import_file_name' => 'Demo 10',
  757. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo10/designexo-pro.xml',
  758. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo10/widgets.wie',
  759. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo10/customizer.dat',
  760. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-ten.jpg',
  761. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  762. 'preview_url' => 'https://designexo-pro-ten.themearile.com/',
  763. ),
  764. array(
  765. 'import_file_name' => 'Demo 11',
  766. 'import_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo11/designexo-pro.xml',
  767. 'import_widget_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo11/widgets.wie',
  768. 'import_customizer_file_url' => 'https://themearile.com/demo-data/designexo-pro-data/demo11/customizer.dat',
  769. 'import_preview_image_url' => 'https://themearile.com/wp-content/themes/themearile-pro/assets/img/designexo-pro/screenshot-designexo-pro-eleven.jpg',
  770. 'import_notice' => __( 'After you import this demo, you will have to set the menus.', 'designexo' ),
  771. 'preview_url' => 'https://designexo-pro-eleven.themearile.com/',
  772. ),
  773.  
  774.  
  775. );
  776. }
  777. add_filter( 'pt-ocdi/import_files', 'designexo_pro_ocdi_import_files' );
Advertisement
Add Comment
Please, Sign In to add comment