PluginProbe
Event Post / 6.0.0
Event Post v6.0.0
6.1.1 6.1.0 6.0.1 6.0.0 5.12.0 trunk 3.9 4.0 4.2 4.3 4.4 4.5 5.0 5.1 5.10.0 5.10.1 5.10.2 5.10.3 5.10.4 5.11.0 5.11.1 5.2 5.5 5.6 5.6.1 All 46 releases
event-post / inc / woocommerce.php

woocommerce.php in Event Post 6.0.0, at inc/woocommerce.php

51 lines 1.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Support for WooCommerce
4 *
5 * @package event-post
6 * @version 6.0.0
7 * @since 5.8.0
8 */
9
10 namespace EventPost;
11
12 if ( ! defined( 'ABSPATH' ) ) exit;
13
14 \add_filter( 'woocommerce_product_tabs', '\EventPost\woocommerce_product_tabs' );
15 \add_filter( 'event-post-rich-result', '\EventPost\woocommerce_rich_result', 10, 2 );
16
17 function woocommerce_product_tabs($tabs){
18 $event = \EventPost()->retreive();
19 if($event && $event->start){
20 $tabs['event-post'] = [
21 'title' => __('Event', 'event-post'),
22 'priority' => 20,
23 'callback' => '\EventPost\product_event_tab',
24 ];
25 }
26 return $tabs;
27 }
28
29 function product_event_tab($key, $tab){
30 $event = \EventPost()->retreive();
31 if($event){
32 \EventPost()->load_map_scripts();
33 include plugin_dir_path( __DIR__ ) . 'views/product-tab.php';
34 }
35 }
36
37 function woocommerce_rich_result($rich_data, $event){
38 $gmt_offset = get_option('gmt_offset ');
39 if($event->post_type == 'product'){
40 $rich_data['offers'] = array(
41 '@type'=>'Offer',
42 'url'=>get_permalink($event->ID),
43 'price'=>\EventPost()->get_price($event),
44 'priceCurrency'=>get_woocommerce_currency(),
45 'availability'=>'https://schema.org/InStock',
46 'validFrom'=>str_replace(' ', 'T', $event->post_date_gmt).$gmt_offset,
47 );
48 }
49 return $rich_data;
50 }
51