PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 2.13.0
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v2.13.0
4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / app / src / Integrations / RankMath / ProductSiteMap.php
surecart / app / src / Integrations / RankMath Last commit date
CollectionSiteMap.php 2 years ago ProductSiteMap.php 2 years ago RankMathService.php 2 years ago RankMathServiceProvider.php 2 years ago
ProductSiteMap.php
69 lines
1 <?php
2
3 namespace SureCart\Integrations\RankMath;
4
5 defined( 'ABSPATH' ) || exit;
6
7 /**
8 * Controls the Product Sitemap integration.
9 */
10 class ProductSiteMap implements \RankMath\Sitemap\Providers\Provider {
11 /**
12 * What type of content this provider handles.
13 *
14 * @param string $type Type of content.
15 */
16 public function handles_type( $type ) {
17 return 'sc_product' === $type;
18 }
19
20 /**
21 * Get the index links.
22 *
23 * @param int $max_entries Maximum number of entries per sitemap.
24 *
25 * @return array
26 */
27 public function get_index_links( $max_entries ) {
28 return [
29 [
30 'loc' => \RankMath\Sitemap\Router::get_base_url( 'sc_product-sitemap.xml' ),
31 'lastmod' => date( 'c', time() ),
32 ],
33 ];
34 }
35
36 /**
37 * Get the sitemap links.
38 *
39 * @param string $type Type of content.
40 * @param int $max_entries Maximum number of entries per sitemap.
41 * @param int $current_page Current page.
42 *
43 * @return array
44 */
45 public function get_sitemap_links( $type, $max_entries, $current_page ) {
46 // get products.
47 $products = \SureCart\Models\Product::where( [ 'status' => 'published' ] )->paginate(
48 [
49 'page' => $current_page,
50 'per_page' => $max_entries,
51 ]
52 );
53
54 $links = array_map(
55 function( $product ) {
56 $lastmod = new \DateTime( '@' . $product->updated_at );
57 $lastmod_w3c = $lastmod->format( 'c' );
58 return [
59 'loc' => $product->permalink,
60 'mod' => $lastmod_w3c,
61 ];
62 },
63 $products->data
64 );
65
66 return $links;
67 }
68 }
69