From a17c578433ef543e220697813a9367a260df83e1 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Thu, 28 May 2026 19:14:31 +0000
Subject: [PATCH] =new gitblit setup

---
 seo.php |  573 +++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 474 insertions(+), 99 deletions(-)

diff --git a/seo.php b/seo.php
index 7a5097a..2bc0912 100644
--- a/seo.php
+++ b/seo.php
@@ -1,134 +1,509 @@
 <?php
-add_filter('jvb_schema', function($schema) {
+
+add_filter('ajv_OrganizationSchemaDefault', 'ajv_organization_schema');
+function ajv_organization_schema(array $schema):array {
     return array_merge($schema, [
-        'organization' => [
-            'type' => 'LocalBusiness',
-            'name' => 'JakeVan',
-            'url' => get_home_url(),
-            'description' => 'Artist. Designer. Developer. Brand Strategy. I’m a multidisciplinary Canadian artist and tech wizard in Edmonton, Alberta.',
-            'slogan' => 'Let\'s bring your idea to life.',
-            'logo' => get_theme_mod('custom_logo'),
-            'foundingDate' => '2022-02-15',
+        'id'    => '#jakevan',
+        'type' => 'JVBase\managers\SEO\render\Thing\Organization\LocalBusiness\LocalBusiness',
+        'name' => 'JakeVan',
+        'url' => get_home_url(),
+        'description' => 'Artist. Designer. Developer. Brand Strategy. I’m a multidisciplinary Canadian artist and tech wizard in Edmonton, Alberta.',
+        'slogan' => 'Let\'s bring your idea to life.',
+        'logo' => get_theme_mod('custom_logo'),
+        'foundingDate' => '2022-02-15',
 
-            'founders' => [
-                ['name' => 'Jake Vanderwerf', 'url' => 'https://jakevan.ca'],
+        'founder' => [
+            [
+                'id'=> 'jake-vanderwerf',
+                'type' => 'JVBase\managers\SEO\render\Thing\Person\Person',
+                'name' => 'Jake Vanderwerf',
+                'url' => 'https://jakevan.ca'],
+        ],
+
+        'sameAs' => [
+            'https://bsky.app/profile/jakevan.ca',
+        ],
+
+        // Contact
+        'telephone' => '+1-825-823-9916',
+        'email' => 'get@jakevan.ca',
+
+        // Address - note the key names
+        'address' => [
+//            'streetAddress' => '6551 111 St NW',
+            'addressLocality' => 'Edmonton',
+            'addressRegion' => 'AB',
+//            'postalCode' => 'T6H 4R5',
+            'addressCountry' => 'CA',
+        ],
+
+        // Geo - note the key names
+        'geo' => [
+            'latitude' => '53.5035125',
+            'longitude' => '-113.5188023',
+        ],
+
+        // Business details
+        'priceRange' => '$$',
+        'paymentAccepted' => ['Cash', 'Credit Card', 'Debit Card', 'E-Transfer'],
+        'currenciesAccepted' => ['CAD'],
+        'areaServed' => [
+            [
+                'id'    => '#edmonton',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Edmonton',
+                'sameAs'    => 'https://en.wikipedia.org/wiki/Edmonton'
             ],
+            [
+                'id'    => '#stalbert',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'St. Albert',
+                'sameAs' => 'https://en.wikipedia.org/wiki/St._Albert,_Alberta'   ],
+            [
+                'id'    => '#sherwoodpark',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Sherwood Park',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Sherwood_Park'   ],
+            [
+                'id'    => '#leduc',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Leduc',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Leduc,_Alberta'   ],
+            [
+                'id'    => '#sprucegrove',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Spruce Grove',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Spruce_Grove'    ],
+            [
+                'id'    => '#calgary',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Calgary',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Calgary'    ],
+            [
+                'id'    => '#reddeer',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Red Deer',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Red_Deer,_Alberta'   ],
+            [
+                'id'    => '#strathconacounty',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Strathcona County',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Strathcona_County'    ],
+            [
+                'id'    => '#grandprairie',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Grande Prairie',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Grande_Prairie'   ],
+            [
+                'id'    => '#lloydminster',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Lloydminster',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Lloydminster'    ],
+            [
+                'id'    => '#fortsaskatchewan',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Fort Saskatchewan',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Fort_Saskatchewan'    ],
+            [
+                'id'    => '#camrose',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Camrose',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Camrose,_Alberta'    ],
+            [
+                'id'    => '#stonyplain',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Stony Plain',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Stony_Plain,_Alberta'    ],
+            [
+                'id'    => '#coldlake',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Cold Lake',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Cold_Lake,_Alberta'    ],
+            [
+                'id'    => '#draytonvalley',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Drayton Valley',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Drayton_Valley'    ],
+            [
+                'id'    => '#ponoka',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Ponoka',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Ponoka,_Alberta'    ],
+            [
+                'id'    => '#vegreville',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Vegreville',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Vegreville'   ],
+            [
+                'id'    => '#fortmcmurray',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Fort McMurray',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Fort_McMurray'],
+            [
+                'id'    => '#lethbridge',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Lethbridge',
+                'sameAs'=> 'https://en.wikipedia.org/wiki/Lethbridge'    ],
+            [
+                'id'    => '#airdrie',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Airdrie',
+                'sameAs' =>    'https://en.wikipedia.org/wiki/Airdrie,_Alberta'],
+            [
+                'id'    => '#medicinehat',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Medicine Hat',
+                'sameAs' =>'https://en.wikipedia.org/wiki/Medicine_Hat'],
+            [
+                'id'    => '#cochrane',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Cochrane',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Cochrane,_Alberta'    ],
+            [
+                'id'    => '#okotoks',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\City',
+                'name' => 'Okotoks',
+                'sameAs' => 'https://en.wikipedia.org/wiki/Okotoks'],
 
-            'sameAs' => [
-                [ 'url' => 'https://bsky.app/profile/jakevan.ca']
+            [
+                'id'    => '#british-columbia',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\State',
+                'name' => 'British Columbia',
+                'sameAs'    => 'https://en.wikipedia.org/wiki/British_Columbia'
             ],
-
-            // Contact
-            'telephone' => '+1-825-832-9916',
-            'email' => 'get@jakevan.ca',
-
-            // Address - note the key names
-            'address' => [
-                'street' => '6551 111 St NW',      // was 'street_address'
-                'city' => 'Edmonton',                    // was 'locality'
-                'province' => 'AB',                      // was 'region'
-                'postal_code' => 'T6H 4R5',
-                'country' => 'CA',
+            [
+                'id'    => '#alberta',
+                'type'  => 'JVBase\managers\SEO\render\Thing\Place\AdministrativeArea\State',
+                'name' => 'Alberta',
+                'sameAs'    => 'https://en.wikipedia.org/wiki/Alberta'
             ],
+        ],
 
-            // Geo - note the key names
-            'geo' => [
-                'lat' => '53.5035125',                      // was 'latitude'
-                'lng' => '-113.5188023',                    // was 'longitude'
-            ],
+        // Hours - note the key names
+        'openingHoursSpecification' => [
+            [
+                'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\StructuredValue\OpeningHoursSpecification',
+                'dayOfWeek' => ['Monday','Tuesday','Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
+                'opens' => '10:00',
+                'closes' => '17:00'
+            ]
 
-            // Business details
-            'priceRange' => '$$',
-            'paymentAccepted' => ['Cash', 'Credit Card', 'Debit Card', 'E-Transfer'],
-            'currenciesAccepted' => ['CAD'],
-            'areaServed' => [
-                ['name' => 'Edmonton'],
-                ['name' => 'St. Albert'],
-                ['name' => 'Sherwood Park'],
-                ['name' => 'Leduc'],
-                ['name' => 'Spruce Grove'],
-            ],
+        ],
 
-            // Hours - note the key names
-            'openingHours' => [
-                'monday' => ['opens' => '9:00', 'closes' => '17:00'],
-                'tuesday' => ['opens' => '9:00', 'closes' => '17:00'],
-                'wednesday' => ['opens' => '9:00', 'closes' => '17:00'],
-                'thursday' => ['opens' => '9:00', 'closes' => '17:00'],
-                'friday' => ['opens' => '9:00', 'closes' => '17:00'],
-                'saturday' => ['opens' => '9:00', 'closes' => '17:00'],
-                'sunday' => ['opens' => '9:00', 'closes' => '17:00'],
-            ],
-
-            // Services as offer catalog
-            'hasOfferCatalog' => [
-                'source'    => 'manual',
-                'manual_items' => [
-                    [
-                        'type'  => 'Product',
-                        'name' => 'Sculpture',
-                        'description' => 'Canadian, human made sculpture',
-                    ],
-                    [
-                        'type'  => 'Product',
-                        'name' => 'Kinetic Sculpture',
-                        'description' => 'Canadian, human made sculpture that moves!',
-                    ],
-                    [
-                        'type'  => 'Product',
-                        'name' => 'Copper Jewellery',
-                        'description' => 'Canadian, human made copper jewellery, inspired by nature.',
-                    ],
-                    [
-                        'type' => 'Service',
+        // Services as offer catalog
+        'hasOfferCatalog' => [
+            'name'  => 'Our Services',
+            'items' => [
+                [
+                    'id'    => '#graphic-design',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#service-graphic-design',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Intangible\Service',
                         'name' => 'Graphic Design',
                         'description' => 'From logos to book covers and print media',
                     ],
-                    [
-                        'type' => 'Service',
-                        'name' => 'Web Development',
+                ],
+                [
+                    'id'    => '#website-design',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#service-website-design',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Intangible\Service',
+                        'name' => 'Website Design',
+                        'description' => 'Let\'s make your site look great and be functional',
+                    ],
+                ],
+                [
+                    'id'    => '#website-development',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#service-website-development',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Intangible\Service',
+                        'name' => 'Website Development',
                         'description' => 'From custom website development to basic landing pages - I make a website for you that works while you sleep.',
                     ],
-                    [
-                        'type' => 'Service',
+                ],
+                [
+                    'id'    => '#content-writing',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#service-content-writing',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Intangible\Service',
                         'name' => 'Content Writing',
                         'description' => 'Know what you want to say, but not how to say it? I can help!',
                     ],
-                    [
-                        'type' => 'Service',
+                ],
+                [
+                    'id'    => '#brand-strategy',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#service-brand-strategy',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Intangible\Service',
                         'name' => 'Brand Strategy',
                         'description' => 'Whether you\'re getting started with a business plan, or wanting to take a step back to determine your best steps moving forward - I can help.',
                     ],
-                ]
-            ],
+                ],
+                [
+                    'id'    => '#human-made-sculpture',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#product-human-made-sculpture',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Product\Product',
+                        'name' => 'Sculpture',
+                        'description' => 'Canadian, human made sculpture',
+                    ],
+                ],
+                [
+                    'id'    => '#human-made-kinetic-sculpture',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#product-human-made-kinetic-sculpture',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Product\Product',
+                        'name' => 'Kinetic Sculpture',
+                        'description' => 'Canadian, human made sculpture that moves!',
+                    ],
+                ],
+                [
+                    'id'    => '#human-made-copper-jewellery',
+                    'type'  => 'JVBase\managers\SEO\render\Thing\Intangible\Offer',
+//                    'price'  => '200',
+                    'priceCurrency' => 'CAD',
+//                    'priceSpecification'    => [
+//                        'type'  => 'JVBase\inc\managers\SEO\render\Thing\Intangible\StructuredValue\UnitPriceSpecification',
+//                        'price'  => '200',
+//                        'priceCurrency' => 'CAD',
+//                        'unitText' => 'treatment'
+//                    ],
+                    'itemOffered' => [
+                        'id'    => '#product-human-made-copper-jewellery',
+                        'type' => 'JVBase\managers\SEO\render\Thing\Product\Product',
+                        'name' => 'Copper Jewellery',
+                        'description' => 'Canadian, human made copper jewellery, inspired by nature.',
+                    ],
+                ],
 
-            // Rating - note the structure
-//            'aggregateRating' => [
-//                'value' => 5,
-//                'count' => 103,
-//                'best' => 5,
-//                'worst' => 1,
-//            ],
+            ]
         ],
 
-        // Website settings (optional overrides)
-        'website' => [
+        'aggregateRating' => [
+            'ratingValue' => 5,
+            'reviewCount' => 1,
+            'bestRating' => 5,
+            'worstRating' => 1,
+        ],
+    ]);
+}
+
+add_filter('ajv_WebsiteSchemaDefault', 'ajv_website_schema');
+function ajv_website_schema(array $schema):array
+{
+    return array_merge(
+        $schema,
+        [
+            'type'  => 'JVBase\managers\SEO\render\Thing\CreativeWork\WebSite',
             'name' => 'JakeVan',
             'description' => 'Let\'s bring your idea to life.',
             'inLanguage' => 'en-CA',
             'potentialAction' => [
                 [
-                    'name'  => 'Search',
-                    'type' => 'searchAction',
-                    'target' => '/?s={query}',
-                ],
-                [
-                    'type' => 'communicateAction',
+                    'id'    => 'contact',
+                    'type' => 'JVBase\inc\managers\SEO\render\Thing\Action\CommunicateAction',
                     'name' => 'Contact Us',
                     'target' => '/contact/',
                     'description' => 'Get in touch with our team',
                 ],
             ],
         ],
-    ]);
-});
\ No newline at end of file
+    );
+}
+//
+//add_filter('jvb_schema', function($schema) {
+//    return array_merge($schema, [
+//        'organization' => [
+//            'type' => 'LocalBusiness',
+//            'name' => 'JakeVan',
+//            'url' => get_home_url(),
+//            'description' => 'Artist. Designer. Developer. Brand Strategy. I’m a multidisciplinary Canadian artist and tech wizard in Edmonton, Alberta.',
+//            'slogan' => 'Let\'s bring your idea to life.',
+//            'logo' => get_theme_mod('custom_logo'),
+//            'foundingDate' => '2022-02-15',
+//
+//            'founders' => [
+//                ['name' => 'Jake Vanderwerf', 'url' => 'https://jakevan.ca'],
+//            ],
+//
+//            'sameAs' => [
+//                [ 'url' => 'https://bsky.app/profile/jakevan.ca']
+//            ],
+//
+//            // Contact
+//            'telephone' => '+1-825-832-9916',
+//            'email' => 'get@jakevan.ca',
+//
+//            // Address - note the key names
+//            'address' => [
+//                'street' => '6551 111 St NW',      // was 'street_address'
+//                'city' => 'Edmonton',                    // was 'locality'
+//                'province' => 'AB',                      // was 'region'
+//                'postal_code' => 'T6H 4R5',
+//                'country' => 'CA',
+//            ],
+//
+//            // Geo - note the key names
+//            'geo' => [
+//                'lat' => '53.5035125',                      // was 'latitude'
+//                'lng' => '-113.5188023',                    // was 'longitude'
+//            ],
+//
+//            // Business details
+//            'priceRange' => '$$',
+//            'paymentAccepted' => ['Cash', 'Credit Card', 'Debit Card', 'E-Transfer'],
+//            'currenciesAccepted' => ['CAD'],
+//            'areaServed' => [
+//                ['name' => 'Edmonton'],
+//                ['name' => 'St. Albert'],
+//                ['name' => 'Sherwood Park'],
+//                ['name' => 'Leduc'],
+//                ['name' => 'Spruce Grove'],
+//            ],
+//
+//            // Hours - note the key names
+//            'openingHours' => [
+//                'monday' => ['opens' => '9:00', 'closes' => '17:00'],
+//                'tuesday' => ['opens' => '9:00', 'closes' => '17:00'],
+//                'wednesday' => ['opens' => '9:00', 'closes' => '17:00'],
+//                'thursday' => ['opens' => '9:00', 'closes' => '17:00'],
+//                'friday' => ['opens' => '9:00', 'closes' => '17:00'],
+//                'saturday' => ['opens' => '9:00', 'closes' => '17:00'],
+//                'sunday' => ['opens' => '9:00', 'closes' => '17:00'],
+//            ],
+//
+//            // Services as offer catalog
+//            'hasOfferCatalog' => [
+//                'source'    => 'manual',
+//                'manual_items' => [
+//                    [
+//                        'type'  => 'Product',
+//                        'name' => 'Sculpture',
+//                        'description' => 'Canadian, human made sculpture',
+//                    ],
+//                    [
+//                        'type'  => 'Product',
+//                        'name' => 'Kinetic Sculpture',
+//                        'description' => 'Canadian, human made sculpture that moves!',
+//                    ],
+//                    [
+//                        'type'  => 'Product',
+//                        'name' => 'Copper Jewellery',
+//                        'description' => 'Canadian, human made copper jewellery, inspired by nature.',
+//                    ],
+//                    [
+//                        'type' => 'Service',
+//                        'name' => 'Graphic Design',
+//                        'description' => 'From logos to book covers and print media',
+//                    ],
+//                    [
+//                        'type' => 'Service',
+//                        'name' => 'Web Development',
+//                        'description' => 'From custom website development to basic landing pages - I make a website for you that works while you sleep.',
+//                    ],
+//                    [
+//                        'type' => 'Service',
+//                        'name' => 'Content Writing',
+//                        'description' => 'Know what you want to say, but not how to say it? I can help!',
+//                    ],
+//                    [
+//                        'type' => 'Service',
+//                        'name' => 'Brand Strategy',
+//                        'description' => 'Whether you\'re getting started with a business plan, or wanting to take a step back to determine your best steps moving forward - I can help.',
+//                    ],
+//                ]
+//            ],
+//
+//            // Rating - note the structure
+////            'aggregateRating' => [
+////                'value' => 5,
+////                'count' => 103,
+////                'best' => 5,
+////                'worst' => 1,
+////            ],
+//        ],
+//
+//        // Website settings (optional overrides)
+//        'website' => [
+//            'name' => 'JakeVan',
+//            'description' => 'Let\'s bring your idea to life.',
+//            'inLanguage' => 'en-CA',
+//            'potentialAction' => [
+//                [
+//                    'name'  => 'Search',
+//                    'type' => 'searchAction',
+//                    'target' => '/?s={query}',
+//                ],
+//                [
+//                    'type' => 'communicateAction',
+//                    'name' => 'Contact Us',
+//                    'target' => '/contact/',
+//                    'description' => 'Get in touch with our team',
+//                ],
+//            ],
+//        ],
+//    ]);
+//});
\ No newline at end of file

--
Gitblit v1.10.0