| @@ -1,0 +1,5829 @@ | ||
| 1 | +<?php | |
| 2 | +/* | |
| 3 | + * License: GPLv3 | |
| 4 | + * License URI: https://www.gnu.org/licenses/gpl.txt | |
| 5 | + * Copyright 2012-2026 Jean-Sebastien Morisset (https://wpsso.com/) | |
| 6 | + */ | |
| 7 | + | |
| 8 | +if ( ! defined( 'ABSPATH' ) ) { | |
| 9 | + | |
| 10 | + die( 'These aren\'t the droids you\'re looking for.' ); | |
| 11 | +} | |
| 12 | + | |
| 13 | +if ( ! class_exists( 'WpssoConfig' ) ) { | |
| 14 | + | |
| 15 | + class WpssoConfig { | |
| 16 | + | |
| 17 | + public static $cf = array( | |
| 18 | + 'packages' => array( | |
| 19 | + 'pro' => 'Premium', | |
| 20 | + 'std' => 'Standard', | |
| 21 | + ), | |
| 22 | + 'plugin' => array( | |
| 23 | + 'wpsso' => array( // Plugin acronym. | |
| 24 | + 'version' => '22.7.0', // Plugin version. | |
| 25 | + 'opt_version' => '1048', // Increment when changing default option values. | |
| 26 | + 'short' => 'WPSSO Core', // Short plugin name. | |
| 27 | + 'name' => 'WPSSO Core', | |
| 28 | + 'desc' => 'Present your content at its best for social sites and search results, no matter how URLs are shared, reshared, messaged, posted, embedded, or crawled.', | |
| 29 | + 'slug' => 'wpsso', | |
| 30 | + 'base' => 'wpsso/wpsso.php', | |
| 31 | + 'update_auth' => 'tid', | |
| 32 | + 'text_domain' => 'wpsso', | |
| 33 | + 'domain_path' => '/languages', | |
| 34 | + 'admin_l10n' => 'wpssoAdminPageL10n', | |
| 35 | + | |
| 36 | + /* | |
| 37 | + * URLs or relative paths to plugin banners and icons. | |
| 38 | + */ | |
| 39 | + 'assets' => array( | |
| 40 | + | |
| 41 | + /* | |
| 42 | + * Banner image array keys are 'low' and 'high'. | |
| 43 | + */ | |
| 44 | + 'banners' => array( | |
| 45 | + 'low' => 'https://surniaulula.github.io/wpsso/assets/banner-772x250.jpg', | |
| 46 | + 'high' => 'https://surniaulula.github.io/wpsso/assets/banner-1544x500.jpg', | |
| 47 | + ), | |
| 48 | + | |
| 49 | + /* | |
| 50 | + * Icon image array keys are '1x' and '2x'. | |
| 51 | + */ | |
| 52 | + 'icons' => array( | |
| 53 | + '1x' => 'images/icon-128x128.png', | |
| 54 | + '2x' => 'images/icon-256x256.png', | |
| 55 | + ), | |
| 56 | + ), | |
| 57 | + 'hosts' => array( | |
| 58 | + 'wp_org' => true, | |
| 59 | + 'github' => true, | |
| 60 | + 'wpsso' => true, | |
| 61 | + ), | |
| 62 | + 'url' => array( | |
| 63 | + | |
| 64 | + /* | |
| 65 | + * WordPress.org URLs. | |
| 66 | + */ | |
| 67 | + 'home' => 'https://wordpress.org/plugins/wpsso/', | |
| 68 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso', | |
| 69 | + 'review' => 'https://wordpress.org/support/plugin/wpsso/reviews/?rate=5#new-post', | |
| 70 | + | |
| 71 | + /* | |
| 72 | + * GitHub.com URLs. | |
| 73 | + */ | |
| 74 | + 'debug_html' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso/master/html/debug.html', | |
| 75 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso/master/readme.txt', | |
| 76 | + 'setup_html' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso/master/html/setup.html', | |
| 77 | + | |
| 78 | + /* | |
| 79 | + * WPSSO.com URLs. | |
| 80 | + */ | |
| 81 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso/changelog/', | |
| 82 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso/', | |
| 83 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso/installation/', | |
| 84 | + 'faqs' => 'https://wpsso.com/docs/plugins/wpsso/faqs/', | |
| 85 | + 'notes' => 'https://wpsso.com/docs/plugins/wpsso/notes/', | |
| 86 | + 'support' => 'https://surniaulula.com/support/create_ticket/', // Premium support ticket. | |
| 87 | + 'purchase' => 'https://wpsso.com/extend/plugins/wpsso/', // Purchase page. | |
| 88 | + 'info' => 'https://wpsso.com/extend/plugins/wpsso/info/', // License information. | |
| 89 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso/update/', | |
| 90 | + 'download' => '', | |
| 91 | + ), | |
| 92 | + 'lib' => array( | |
| 93 | + 'dashboard' => array( | |
| 94 | + ), | |
| 95 | + 'integ' => array( | |
| 96 | + 'data' => array( | |
| 97 | + 'aioseop-meta' => 'Import All in One SEO Pack Metadata', | |
| 98 | + 'rankmath-meta' => 'Import Rank Math SEO Metadata', | |
| 99 | + 'seoframework-meta' => 'Import The SEO Framework Metadata', | |
| 100 | + 'wpmetaseo-meta' => 'Import WP Meta SEO Metadata', | |
| 101 | + 'wpseo-blocks' => 'Import Yoast SEO Block Attrs', | |
| 102 | + 'wpseo-meta' => 'Import Yoast SEO Metadata', | |
| 103 | + ), | |
| 104 | + 'ecom' => array( | |
| 105 | + 'perfect-woocommerce-brands' => 'Perfect Brands for WooCommerce', | |
| 106 | + 'woocommerce' => 'WooCommerce', | |
| 107 | + 'woocommerce-brands' => 'WooCommerce Brands', | |
| 108 | + 'woocommerce-currency-switcher' => 'WooCommerce Currency Switcher', | |
| 109 | + 'woo-add-gtin' => 'WooCommerce UPC, EAN, and ISBN', | |
| 110 | + 'wpm-product-gtin-wc' => 'Product GTIN for WooCommerce', | |
| 111 | + 'yith-woocommerce-brands' => 'YITH WooCommerce Brands Add-on', | |
| 112 | + ), | |
| 113 | + 'event' => array( | |
| 114 | + 'the-events-calendar' => 'The Events Calendar', | |
| 115 | + ), | |
| 116 | + 'form' => array( | |
| 117 | + 'gravityforms' => 'Gravity Forms', | |
| 118 | + 'gravityview' => 'Gravity View', | |
| 119 | + ), | |
| 120 | + 'job' => array( | |
| 121 | + 'simplejobboard' => 'Simple Job Board', | |
| 122 | + 'wpjobmanager' => 'WP Job Manager', | |
| 123 | + ), | |
| 124 | + 'lang' => array( | |
| 125 | + 'polylang' => 'Polylang', | |
| 126 | + 'qtranslate-xt' => 'qTranslate-XT', | |
| 127 | + 'wpml' => 'WPML', | |
| 128 | + ), | |
| 129 | + 'media' => array( | |
| 130 | + 'wp-retina-2x' => 'Perfect Images', | |
| 131 | + ), | |
| 132 | + 'rating' => array( | |
| 133 | + 'rate-my-post' => 'Rate my Post', | |
| 134 | + 'wppostratings' => 'WP-PostRatings', | |
| 135 | + ), | |
| 136 | + 'recipe' => array( | |
| 137 | + 'wprecipemaker' => 'WP Recipe Maker', | |
| 138 | + ), | |
| 139 | + 'review' => array( | |
| 140 | + 'judgeme-for-wc' => 'Judge.me Product Reviews for WooCommerce', | |
| 141 | + 'wpproductreview' => 'WP Product Review', | |
| 142 | + 'yotpowc' => 'Yotpo Social Reviews for WooCommerce', | |
| 143 | + ), | |
| 144 | + 'seo' => array( | |
| 145 | + 'aioseop' => 'All in One SEO Pack', | |
| 146 | + 'rankmath' => 'Rank Math SEO', | |
| 147 | + 'seoframework' => 'The SEO Framework', | |
| 148 | + 'seopress' => 'SEOPress', | |
| 149 | + 'wpmetaseo' => 'WP Meta SEO', | |
| 150 | + 'wpseo' => 'Yoast SEO', | |
| 151 | + ), | |
| 152 | + 'user' => array( | |
| 153 | + 'co-authors-plus' => 'Co-Authors Plus', | |
| 154 | + 'publishpress-authors' => 'PublishPress Authors', | |
| 155 | + 'ultimate-member' => 'Ultimate Member', | |
| 156 | + ), | |
| 157 | + 'util' => array( | |
| 158 | + 'duplicate-post' => 'Yoast Duplicate Post', | |
| 159 | + 'elementor' => 'Elementor Website Builder', | |
| 160 | + 'jetpack' => 'Jetpack', | |
| 161 | + 'jetpack-boost' => 'Jetpack Boost', | |
| 162 | + ), | |
| 163 | + ), | |
| 164 | + 'json' => array( | |
| 165 | + 'type' => array( | |
| 166 | + 'article' => 'Schema Type Article', | |
| 167 | + 'audiobook' => 'Schema Type Audiobook', | |
| 168 | + 'blog' => 'Schema Type Blog', | |
| 169 | + 'book' => 'Schema Type Book', | |
| 170 | + 'brand' => 'Schema Type Brand', | |
| 171 | + 'claimreview' => 'Schema Type Claim Review', | |
| 172 | + 'collectionpage' => 'Schema Type Collection Page', | |
| 173 | + 'course' => 'Schema Type Course', | |
| 174 | + 'creativework' => 'Schema Type CreativeWork', | |
| 175 | + 'event' => 'Schema Type Event', | |
| 176 | + 'faqpage' => 'Schema Type FAQPage', | |
| 177 | + 'foodestablishment' => 'Schema Type Food Establishment', | |
| 178 | + 'howto' => 'Schema Type How-To', | |
| 179 | + 'itemlist' => 'Schema Type ItemList', | |
| 180 | + 'jobposting' => 'Schema Type Job Posting', | |
| 181 | + 'learningresource' => 'Schema Type Learning Resource', | |
| 182 | + 'localbusiness' => 'Schema Type Local Business', | |
| 183 | + 'movie' => 'Schema Type Movie', | |
| 184 | + 'organization' => 'Schema Type Organization', | |
| 185 | + 'person' => 'Schema Type Person', | |
| 186 | + 'place' => 'Schema Type Place', | |
| 187 | + 'product' => 'Schema Type Product', | |
| 188 | + 'productgroup' => 'Schema Type Product Group', | |
| 189 | + 'profilepage' => 'Schema Type Profile Page', | |
| 190 | + 'qapage' => 'Schema Type QAPage', | |
| 191 | + 'question' => 'Schema Type Question and Answer', | |
| 192 | + 'recipe' => 'Schema Type Recipe', | |
| 193 | + 'review' => 'Schema Type Review', | |
| 194 | + 'searchresultspage' => 'Schema Type Search Results Page', | |
| 195 | + 'service' => 'Schema Type Service', | |
| 196 | + 'softwareapplication' => 'Schema Type Software Application', | |
| 197 | + 'thing' => 'Schema Type Thing', | |
| 198 | + 'webpage' => 'Schema Type WebPage', | |
| 199 | + 'website' => 'Schema Type WebSite', | |
| 200 | + ), | |
| 201 | + 'prop' => array( | |
| 202 | + 'aggregaterating' => 'Schema Property aggregateRating', | |
| 203 | + 'haspart' => 'Schema Property hasPart', | |
| 204 | + 'review' => 'Schema Property review', | |
| 205 | + ), | |
| 206 | + ), | |
| 207 | + 'pro' => array( | |
| 208 | + 'admin' => array( | |
| 209 | + 'advanced' => 'Advanced Settings', | |
| 210 | + 'edit' => 'Document SSO Metabox', | |
| 211 | + 'general' => 'General Settings', | |
| 212 | + ), | |
| 213 | + 'media' => array( | |
| 214 | + 'facebook' => 'Facebook Videos', | |
| 215 | + 'gravatar' => 'Gravatar Images', | |
| 216 | + 'slideshare' => 'Slideshare Presentations', | |
| 217 | + 'soundcloud' => 'Soundcloud Tracks', | |
| 218 | + 'upscale' => 'Upscale Media Library Images', | |
| 219 | + 'vimeo' => 'Vimeo Videos', | |
| 220 | + 'wistia' => 'Wistia Videos', | |
| 221 | + 'wpvideoblock' => 'WP Media Library Video Blocks', | |
| 222 | + 'wpvideoshortcode' => 'WP Media Library Video Shortcodes', | |
| 223 | + 'youtube' => 'YouTube Videos and Playlists', | |
| 224 | + ), | |
| 225 | + 'review' => array( | |
| 226 | + 'judgeme' => 'Judge.me Reviews', | |
| 227 | + 'shopperapproved' => 'Shopper Approved Reviews', | |
| 228 | + 'stamped' => 'Stamped.io Reviews', | |
| 229 | + ), | |
| 230 | + 'util' => array( | |
| 231 | + 'shorten' => 'URL Shortening Services', | |
| 232 | + ), | |
| 233 | + ), | |
| 234 | + 'profile' => array( | |
| 235 | + 'your-sso' => 'Profile SSO - Social and Search Optimization', | |
| 236 | + ), | |
| 237 | + 'sitesubmenu' => array( | |
| 238 | + 'site-advanced' => 'Advanced Settings', | |
| 239 | + 'site-licenses' => 'Premium Licenses', | |
| 240 | + 'site-addons' => 'Plugin Add-ons', | |
| 241 | + 'site-setup' => 'Setup Guide', | |
| 242 | + 'site-debug' => 'Troubleshooting', | |
| 243 | + ), | |
| 244 | + 'std' => array( // Standard distribution modules. | |
| 245 | + 'admin' => array( | |
| 246 | + 'advanced' => 'Advanced Settings', | |
| 247 | + 'edit' => 'Document SSO Metabox', | |
| 248 | + 'general' => 'General Settings', | |
| 249 | + ), | |
| 250 | + 'media' => array( | |
| 251 | + 'facebook' => 'Facebook Videos', | |
| 252 | + 'slideshare' => 'Slideshare Presentations', | |
| 253 | + 'soundcloud' => 'Soundcloud Tracks', | |
| 254 | + 'vimeo' => 'Vimeo Videos', | |
| 255 | + 'wistia' => 'Wistia Videos', | |
| 256 | + 'wpvideoblock' => 'WP Media Library Video Blocks', | |
| 257 | + 'wpvideoshortcode' => 'WP Media Library Video Shortcodes', | |
| 258 | + 'youtube' => 'YouTube Videos and Playlists', | |
| 259 | + ), | |
| 260 | + 'review' => array( | |
| 261 | + 'judgeme' => 'Judge.me Reviews', | |
| 262 | + ), | |
| 263 | + ), | |
| 264 | + 'submenu' => array( | |
| 265 | + 'essential' => 'Essential Settings', | |
| 266 | + 'general' => 'General Settings', | |
| 267 | + 'advanced' => 'Advanced Settings', | |
| 268 | + 'licenses' => 'Premium Licenses', | |
| 269 | + 'addons' => 'Plugin Add-ons', | |
| 270 | + 'tools' => 'Tools and Actions', | |
| 271 | + 'setup' => 'Setup Guide', | |
| 272 | + 'debug' => 'Troubleshooting', | |
| 273 | + ), | |
| 274 | + 'users' => array( | |
| 275 | + 'add-person' => 'Add Person', | |
| 276 | + ), | |
| 277 | + ), | |
| 278 | + | |
| 279 | + /* | |
| 280 | + * Declare compatibility with WooCommerce HPOS. | |
| 281 | + * | |
| 282 | + * See https://github.com/woocommerce/woocommerce/wiki/High-Performance-Order-Storage-Upgrade-Recipe-Book. | |
| 283 | + */ | |
| 284 | + 'wc_compat' => array( | |
| 285 | + 'custom_order_tables', | |
| 286 | + ), | |
| 287 | + ), | |
| 288 | + 'wpssobc' => array( // Plugin acronym. | |
| 289 | + 'short' => 'WPSSO BC', // Short plugin name. | |
| 290 | + 'name' => 'WPSSO Schema Breadcrumbs Markup', | |
| 291 | + 'desc' => 'Schema BreadcrumbList markup in JSON-LD format for Google Rich Results.', | |
| 292 | + 'slug' => 'wpsso-breadcrumbs', | |
| 293 | + 'base' => 'wpsso-breadcrumbs/wpsso-breadcrumbs.php', | |
| 294 | + 'update_auth' => '', // No premium version. | |
| 295 | + | |
| 296 | + /* | |
| 297 | + * URLs or relative paths to plugin banners and icons. | |
| 298 | + */ | |
| 299 | + 'assets' => array( | |
| 300 | + | |
| 301 | + /* | |
| 302 | + * Banner image array keys are 'low' and 'high'. | |
| 303 | + */ | |
| 304 | + 'banners' => array( | |
| 305 | + 'low' => 'https://surniaulula.github.io/wpsso-breadcrumbs/assets/banner-772x250.jpg', | |
| 306 | + 'high' => 'https://surniaulula.github.io/wpsso-breadcrumbs/assets/banner-1544x500.jpg', | |
| 307 | + ), | |
| 308 | + | |
| 309 | + /* | |
| 310 | + * Icon image array keys are '1x' and '2x'. | |
| 311 | + */ | |
| 312 | + 'icons' => array( | |
| 313 | + '1x' => 'https://surniaulula.github.io/wpsso-breadcrumbs/assets/icon-128x128.png', | |
| 314 | + '2x' => 'https://surniaulula.github.io/wpsso-breadcrumbs/assets/icon-256x256.png', | |
| 315 | + ), | |
| 316 | + ), | |
| 317 | + 'hosts' => array( | |
| 318 | + 'wp_org' => true, | |
| 319 | + 'github' => true, | |
| 320 | + 'wpsso' => true, | |
| 321 | + ), | |
| 322 | + 'url' => array( | |
| 323 | + | |
| 324 | + /* | |
| 325 | + * WordPress.org URLs. | |
| 326 | + */ | |
| 327 | + 'home' => 'https://wordpress.org/plugins/wpsso-breadcrumbs/', | |
| 328 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-breadcrumbs', | |
| 329 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-breadcrumbs/reviews/?rate=5#new-post', | |
| 330 | + | |
| 331 | + /* | |
| 332 | + * GitHub.com URLs. | |
| 333 | + */ | |
| 334 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-breadcrumbs/master/readme.txt', | |
| 335 | + | |
| 336 | + /* | |
| 337 | + * WPSSO.com URLs. | |
| 338 | + */ | |
| 339 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-breadcrumbs/changelog/', | |
| 340 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-breadcrumbs/', | |
| 341 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-breadcrumbs/installation/', | |
| 342 | + 'faqs' => 'https://wpsso.com/docs/plugins/wpsso-breadcrumbs/faqs/', | |
| 343 | + 'notes' => '', | |
| 344 | + 'support' => '', // Premium support ticket. | |
| 345 | + 'purchase' => '', // Purchase page. | |
| 346 | + 'info' => '', // License information. | |
| 347 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-breadcrumbs/update/', | |
| 348 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-breadcrumbs/latest/', | |
| 349 | + ), | |
| 350 | + ), | |
| 351 | + 'wpssocmcf' => array( // Plugin acronym. | |
| 352 | + 'short' => 'WPSSO CMCF', // Short plugin name. | |
| 353 | + 'name' => 'WPSSO Commerce Manager Catalog Feed XML', | |
| 354 | + 'desc' => 'Facebook and Instagram Commerce Manager Catalog Feed XMLs for WooCommerce and custom product pages.', | |
| 355 | + 'slug' => 'wpsso-commerce-manager-catalog-feed', | |
| 356 | + 'base' => 'wpsso-commerce-manager-catalog-feed/wpsso-commerce-manager-catalog-feed.php', | |
| 357 | + 'update_auth' => '', // No premium version. | |
| 358 | + | |
| 359 | + /* | |
| 360 | + * URLs or relative paths to plugin banners and icons. | |
| 361 | + */ | |
| 362 | + 'assets' => array( | |
| 363 | + | |
| 364 | + /* | |
| 365 | + * Banner image array keys are 'low' and 'high'. | |
| 366 | + */ | |
| 367 | + 'banners' => array( | |
| 368 | + 'low' => 'https://surniaulula.github.io/wpsso-commerce-manager-catalog-feed/assets/banner-772x250.jpg', | |
| 369 | + 'high' => 'https://surniaulula.github.io/wpsso-commerce-manager-catalog-feed/assets/banner-1544x500.jpg', | |
| 370 | + ), | |
| 371 | + | |
| 372 | + /* | |
| 373 | + * Icon image array keys are '1x' and '2x'. | |
| 374 | + */ | |
| 375 | + 'icons' => array( | |
| 376 | + '1x' => 'https://surniaulula.github.io/wpsso-commerce-manager-catalog-feed/assets/icon-128x128.png', | |
| 377 | + '2x' => 'https://surniaulula.github.io/wpsso-commerce-manager-catalog-feed/assets/icon-256x256.png', | |
| 378 | + ), | |
| 379 | + ), | |
| 380 | + 'hosts' => array( | |
| 381 | + 'wp_org' => true, | |
| 382 | + 'github' => true, | |
| 383 | + 'wpsso' => true, | |
| 384 | + ), | |
| 385 | + 'url' => array( | |
| 386 | + | |
| 387 | + /* | |
| 388 | + * WordPress.org URLs. | |
| 389 | + */ | |
| 390 | + 'home' => 'https://wordpress.org/plugins/wpsso-commerce-manager-catalog-feed/', | |
| 391 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-commerce-manager-catalog-feed', | |
| 392 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-commerce-manager-catalog-feed/reviews/?rate=5#new-post', | |
| 393 | + | |
| 394 | + /* | |
| 395 | + * GitHub.com URLs. | |
| 396 | + */ | |
| 397 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-commerce-manager-catalog-feed/master/readme.txt', | |
| 398 | + | |
| 399 | + /* | |
| 400 | + * WPSSO.com URLs. | |
| 401 | + */ | |
| 402 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-commerce-manager-catalog-feed/changelog/', | |
| 403 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-commerce-manager-catalog-feed/', | |
| 404 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-commerce-manager-catalog-feed/installation/', | |
| 405 | + 'faqs' => '', | |
| 406 | + 'notes' => '', | |
| 407 | + 'support' => '', // Premium support ticket. | |
| 408 | + 'purchase' => '', // Purchase page. | |
| 409 | + 'info' => '', // License information. | |
| 410 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-commerce-manager-catalog-feed/update/', | |
| 411 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-commerce-manager-catalog-feed/latest/', | |
| 412 | + ), | |
| 413 | + ), | |
| 414 | + 'wpssofaq' => array( // Plugin acronym. | |
| 415 | + 'short' => 'WPSSO FAQ', // Short plugin name. | |
| 416 | + 'name' => 'WPSSO Schema FAQ Page Manager', | |
| 417 | + 'desc' => 'Create FAQ and Question / Answer Pages with optional shortcodes to include FAQs and Questions / Answers in your content.', | |
| 418 | + 'slug' => 'wpsso-faq', | |
| 419 | + 'base' => 'wpsso-faq/wpsso-faq.php', | |
| 420 | + 'update_auth' => '', // No premium version. | |
| 421 | + | |
| 422 | + /* | |
| 423 | + * URLs or relative paths to plugin banners and icons. | |
| 424 | + */ | |
| 425 | + 'assets' => array( | |
| 426 | + | |
| 427 | + /* | |
| 428 | + * Banner image array keys are 'low' and 'high'. | |
| 429 | + */ | |
| 430 | + 'banners' => array( | |
| 431 | + 'low' => 'https://surniaulula.github.io/wpsso-faq/assets/banner-772x250.jpg', | |
| 432 | + 'high' => 'https://surniaulula.github.io/wpsso-faq/assets/banner-1544x500.jpg', | |
| 433 | + ), | |
| 434 | + | |
| 435 | + /* | |
| 436 | + * Icon image array keys are '1x' and '2x'. | |
| 437 | + */ | |
| 438 | + 'icons' => array( | |
| 439 | + '1x' => 'https://surniaulula.github.io/wpsso-faq/assets/icon-128x128.png', | |
| 440 | + '2x' => 'https://surniaulula.github.io/wpsso-faq/assets/icon-256x256.png', | |
| 441 | + ), | |
| 442 | + ), | |
| 443 | + 'hosts' => array( | |
| 444 | + 'wp_org' => true, | |
| 445 | + 'github' => true, | |
| 446 | + 'wpsso' => true, | |
| 447 | + ), | |
| 448 | + 'url' => array( | |
| 449 | + | |
| 450 | + /* | |
| 451 | + * WordPress.org URLs. | |
| 452 | + */ | |
| 453 | + 'home' => 'https://wordpress.org/plugins/wpsso-faq/', | |
| 454 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-faq', | |
| 455 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-faq/reviews/?rate=5#new-post', | |
| 456 | + | |
| 457 | + /* | |
| 458 | + * GitHub.com URLs. | |
| 459 | + */ | |
| 460 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-faq/master/readme.txt', | |
| 461 | + | |
| 462 | + /* | |
| 463 | + * WPSSO.com URLs. | |
| 464 | + */ | |
| 465 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-faq/changelog/', | |
| 466 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-faq/', | |
| 467 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-faq/installation/', | |
| 468 | + 'faqs' => 'https://wpsso.com/docs/plugins/wpsso-faq/faqs/', | |
| 469 | + 'notes' => 'https://wpsso.com/docs/plugins/wpsso-faq/notes/', | |
| 470 | + 'support' => '', // Premium support ticket. | |
| 471 | + 'purchase' => '', // Purchase page. | |
| 472 | + 'info' => '', // License information. | |
| 473 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-faq/update/', | |
| 474 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-faq/latest/', | |
| 475 | + ), | |
| 476 | + ), | |
| 477 | + 'wpssogmf' => array( // Plugin acronym. | |
| 478 | + 'short' => 'WPSSO GMF', // Short plugin name. | |
| 479 | + 'name' => 'WPSSO Google Merchant Feed XML', | |
| 480 | + 'desc' => 'Google Merchant product and inventory feed XML for WooCommerce and custom product pages, including multilingual support.', | |
| 481 | + 'slug' => 'wpsso-google-merchant-feed', | |
| 482 | + 'base' => 'wpsso-google-merchant-feed/wpsso-google-merchant-feed.php', | |
| 483 | + 'update_auth' => '', // No premium version. | |
| 484 | + | |
| 485 | + /* | |
| 486 | + * URLs or relative paths to plugin banners and icons. | |
| 487 | + */ | |
| 488 | + 'assets' => array( | |
| 489 | + | |
| 490 | + /* | |
| 491 | + * Banner image array keys are 'low' and 'high'. | |
| 492 | + */ | |
| 493 | + 'banners' => array( | |
| 494 | + 'low' => 'https://surniaulula.github.io/wpsso-google-merchant-feed/assets/banner-772x250.jpg', | |
| 495 | + 'high' => 'https://surniaulula.github.io/wpsso-google-merchant-feed/assets/banner-1544x500.jpg', | |
| 496 | + ), | |
| 497 | + | |
| 498 | + /* | |
| 499 | + * Icon image array keys are '1x' and '2x'. | |
| 500 | + */ | |
| 501 | + 'icons' => array( | |
| 502 | + '1x' => 'https://surniaulula.github.io/wpsso-google-merchant-feed/assets/icon-128x128.png', | |
| 503 | + '2x' => 'https://surniaulula.github.io/wpsso-google-merchant-feed/assets/icon-256x256.png', | |
| 504 | + ), | |
| 505 | + ), | |
| 506 | + 'hosts' => array( | |
| 507 | + 'wp_org' => true, | |
| 508 | + 'github' => true, | |
| 509 | + 'wpsso' => true, | |
| 510 | + ), | |
| 511 | + 'url' => array( | |
| 512 | + | |
| 513 | + /* | |
| 514 | + * WordPress.org URLs. | |
| 515 | + */ | |
| 516 | + 'home' => 'https://wordpress.org/plugins/wpsso-google-merchant-feed/', | |
| 517 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-google-merchant-feed', | |
| 518 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-google-merchant-feed/reviews/?rate=5#new-post', | |
| 519 | + | |
| 520 | + /* | |
| 521 | + * GitHub.com URLs. | |
| 522 | + */ | |
| 523 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-google-merchant-feed/master/readme.txt', | |
| 524 | + | |
| 525 | + /* | |
| 526 | + * WPSSO.com URLs. | |
| 527 | + */ | |
| 528 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-google-merchant-feed/changelog/', | |
| 529 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-google-merchant-feed/', | |
| 530 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-google-merchant-feed/installation/', | |
| 531 | + 'faqs' => '', | |
| 532 | + 'notes' => '', | |
| 533 | + 'support' => '', // Premium support ticket. | |
| 534 | + 'purchase' => '', // Purchase page. | |
| 535 | + 'info' => '', // License information. | |
| 536 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-google-merchant-feed/update/', | |
| 537 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-google-merchant-feed/latest/', | |
| 538 | + ), | |
| 539 | + ), | |
| 540 | + 'wpssomrp' => array( // Plugin acronym. | |
| 541 | + 'short' => 'WPSSO MRP', // Short plugin name. | |
| 542 | + 'name' => 'WPSSO Schema Merchant Return Policy Manager', | |
| 543 | + 'desc' => 'Manage Merchant Return Policies for Google Merchant listings and Schema markup.', | |
| 544 | + 'slug' => 'wpsso-merchant-return-policy', | |
| 545 | + 'base' => 'wpsso-merchant-return-policy/wpsso-merchant-return-policy.php', | |
| 546 | + 'update_auth' => '', // No premium version. | |
| 547 | + | |
| 548 | + /* | |
| 549 | + * URLs or relative paths to plugin banners and icons. | |
| 550 | + */ | |
| 551 | + 'assets' => array( | |
| 552 | + | |
| 553 | + /* | |
| 554 | + * Banner image array keys are 'low' and 'high'. | |
| 555 | + */ | |
| 556 | + 'banners' => array( | |
| 557 | + 'low' => 'https://surniaulula.github.io/wpsso-merchant-return-policy/assets/banner-772x250.jpg', | |
| 558 | + 'high' => 'https://surniaulula.github.io/wpsso-merchant-return-policy/assets/banner-1544x500.jpg', | |
| 559 | + ), | |
| 560 | + | |
| 561 | + /* | |
| 562 | + * Icon image array keys are '1x' and '2x'. | |
| 563 | + */ | |
| 564 | + 'icons' => array( | |
| 565 | + '1x' => 'https://surniaulula.github.io/wpsso-merchant-return-policy/assets/icon-128x128.png', | |
| 566 | + '2x' => 'https://surniaulula.github.io/wpsso-merchant-return-policy/assets/icon-256x256.png', | |
| 567 | + ), | |
| 568 | + ), | |
| 569 | + 'hosts' => array( | |
| 570 | + 'wp_org' => true, | |
| 571 | + 'github' => true, | |
| 572 | + 'wpsso' => true, | |
| 573 | + ), | |
| 574 | + 'url' => array( | |
| 575 | + | |
| 576 | + /* | |
| 577 | + * WordPress.org URLs. | |
| 578 | + */ | |
| 579 | + 'home' => 'https://wordpress.org/plugins/wpsso-merchant-return-policy/', | |
| 580 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-merchant-return-policy', | |
| 581 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-merchant-return-policy/reviews/?rate=5#new-post', | |
| 582 | + | |
| 583 | + /* | |
| 584 | + * GitHub.com URLs. | |
| 585 | + */ | |
| 586 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-merchant-return-policy/master/readme.txt', | |
| 587 | + | |
| 588 | + /* | |
| 589 | + * WPSSO.com URLs. | |
| 590 | + */ | |
| 591 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-merchant-return-policy/changelog/', | |
| 592 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-merchant-return-policy/', | |
| 593 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-merchant-return-policy/installation/', | |
| 594 | + 'faqs' => '', | |
| 595 | + 'notes' => '', | |
| 596 | + 'support' => '', // Premium support ticket. | |
| 597 | + 'purchase' => '', // Purchase page. | |
| 598 | + 'info' => '', // License information. | |
| 599 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-merchant-return-policy/update/', | |
| 600 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-merchant-return-policy/latest/', | |
| 601 | + ), | |
| 602 | + ), | |
| 603 | + 'wpssoopm' => array( // Plugin acronym. | |
| 604 | + 'short' => 'WPSSO OPM', // Short plugin name. | |
| 605 | + 'name' => 'WPSSO Schema Organization and Place Manager', | |
| 606 | + 'desc' => 'Manage Organizations and Places (Local Businesses, Venues, etc.) for Google, Facebook, Pinterest, and Schema markup.', | |
| 607 | + 'slug' => 'wpsso-organization-place', | |
| 608 | + 'base' => 'wpsso-organization-place/wpsso-organization-place.php', | |
| 609 | + 'update_auth' => '', // No premium version. | |
| 610 | + | |
| 611 | + /* | |
| 612 | + * URLs or relative paths to plugin banners and icons. | |
| 613 | + */ | |
| 614 | + 'assets' => array( | |
| 615 | + | |
| 616 | + /* | |
| 617 | + * Banner image array keys are 'low' and 'high'. | |
| 618 | + */ | |
| 619 | + 'banners' => array( | |
| 620 | + 'low' => 'https://surniaulula.github.io/wpsso-organization-place/assets/banner-772x250.jpg', | |
| 621 | + 'high' => 'https://surniaulula.github.io/wpsso-organization-place/assets/banner-1544x500.jpg', | |
| 622 | + ), | |
| 623 | + | |
| 624 | + /* | |
| 625 | + * Icon image array keys are '1x' and '2x'. | |
| 626 | + */ | |
| 627 | + 'icons' => array( | |
| 628 | + '1x' => 'https://surniaulula.github.io/wpsso-organization-place/assets/icon-128x128.png', | |
| 629 | + '2x' => 'https://surniaulula.github.io/wpsso-organization-place/assets/icon-256x256.png', | |
| 630 | + ), | |
| 631 | + ), | |
| 632 | + 'hosts' => array( | |
| 633 | + 'wp_org' => true, | |
| 634 | + 'github' => true, | |
| 635 | + 'wpsso' => true, | |
| 636 | + ), | |
| 637 | + 'url' => array( | |
| 638 | + | |
| 639 | + /* | |
| 640 | + * WordPress.org URLs. | |
| 641 | + */ | |
| 642 | + 'home' => 'https://wordpress.org/plugins/wpsso-organization-place/', | |
| 643 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-organization-place', | |
| 644 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-organization-place/reviews/?rate=5#new-post', | |
| 645 | + | |
| 646 | + /* | |
| 647 | + * GitHub.com URLs. | |
| 648 | + */ | |
| 649 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-organization-place/master/readme.txt', | |
| 650 | + | |
| 651 | + /* | |
| 652 | + * WPSSO.com URLs. | |
| 653 | + */ | |
| 654 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-organization-place/changelog/', | |
| 655 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-organization-place/', | |
| 656 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-organization-place/installation/', | |
| 657 | + 'faqs' => '', | |
| 658 | + 'notes' => '', | |
| 659 | + 'support' => '', // Premium support ticket. | |
| 660 | + 'purchase' => '', // Purchase page. | |
| 661 | + 'info' => '', // License information. | |
| 662 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-organization-place/update/', | |
| 663 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-organization-place/latest/', | |
| 664 | + ), | |
| 665 | + ), | |
| 666 | + 'wpssorar' => array( // Plugin acronym. | |
| 667 | + 'short' => 'WPSSO RAR', // Short plugin name. | |
| 668 | + 'name' => 'WPSSO Ratings and Reviews', | |
| 669 | + 'desc' => 'Adds Ratings and Reviews Features to the WordPress Comments System.', | |
| 670 | + 'slug' => 'wpsso-ratings-and-reviews', | |
| 671 | + 'base' => 'wpsso-ratings-and-reviews/wpsso-ratings-and-reviews.php', | |
| 672 | + 'update_auth' => '', // No premium version. | |
| 673 | + | |
| 674 | + /* | |
| 675 | + * URLs or relative paths to plugin banners and icons. | |
| 676 | + */ | |
| 677 | + 'assets' => array( | |
| 678 | + | |
| 679 | + /* | |
| 680 | + * Banner image array keys are 'low' and 'high'. | |
| 681 | + */ | |
| 682 | + 'banners' => array( | |
| 683 | + 'low' => 'https://surniaulula.github.io/wpsso-ratings-and-reviews/assets/banner-772x250.jpg', | |
| 684 | + 'high' => 'https://surniaulula.github.io/wpsso-ratings-and-reviews/assets/banner-1544x500.jpg', | |
| 685 | + ), | |
| 686 | + | |
| 687 | + /* | |
| 688 | + * Icon image array keys are '1x' and '2x'. | |
| 689 | + */ | |
| 690 | + 'icons' => array( | |
| 691 | + '1x' => 'https://surniaulula.github.io/wpsso-ratings-and-reviews/assets/icon-128x128.png', | |
| 692 | + '2x' => 'https://surniaulula.github.io/wpsso-ratings-and-reviews/assets/icon-256x256.png', | |
| 693 | + ), | |
| 694 | + ), | |
| 695 | + 'hosts' => array( | |
| 696 | + 'wp_org' => true, | |
| 697 | + 'github' => true, | |
| 698 | + 'wpsso' => true, | |
| 699 | + ), | |
| 700 | + 'url' => array( | |
| 701 | + | |
| 702 | + /* | |
| 703 | + * WordPress.org URLs. | |
| 704 | + */ | |
| 705 | + 'home' => 'https://wordpress.org/plugins/wpsso-ratings-and-reviews/', | |
| 706 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-ratings-and-reviews', | |
| 707 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-ratings-and-reviews/reviews/?rate=5#new-post', | |
| 708 | + | |
| 709 | + /* | |
| 710 | + * GitHub.com URLs. | |
| 711 | + */ | |
| 712 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-ratings-and-reviews/master/readme.txt', | |
| 713 | + | |
| 714 | + /* | |
| 715 | + * WPSSO.com URLs. | |
| 716 | + */ | |
| 717 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-ratings-and-reviews/changelog/', | |
| 718 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-ratings-and-reviews/', | |
| 719 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-ratings-and-reviews/installation/', | |
| 720 | + 'faqs' => '', | |
| 721 | + 'notes' => 'https://wpsso.com/docs/plugins/wpsso-ratings-and-reviews/notes/', | |
| 722 | + 'support' => '', // Premium support ticket. | |
| 723 | + 'purchase' => '', // Purchase page. | |
| 724 | + 'info' => '', // License information. | |
| 725 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-ratings-and-reviews/update/', | |
| 726 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-ratings-and-reviews/latest/', | |
| 727 | + ), | |
| 728 | + ), | |
| 729 | + 'wpssorest' => array( // Plugin acronym. | |
| 730 | + 'short' => 'WPSSO REST', // Short plugin name. | |
| 731 | + 'name' => 'WPSSO REST API', | |
| 732 | + 'desc' => 'Extends the WordPress REST API post, term, and user query results with an array of meta tags and Schema JSON-LD markup.', | |
| 733 | + 'slug' => 'wpsso-rest-api', | |
| 734 | + 'base' => 'wpsso-rest-api/wpsso-rest-api.php', | |
| 735 | + 'update_auth' => '', // No premium version. | |
| 736 | + | |
| 737 | + /* | |
| 738 | + * URLs or relative paths to plugin banners and icons. | |
| 739 | + */ | |
| 740 | + 'assets' => array( | |
| 741 | + | |
| 742 | + /* | |
| 743 | + * Banner image array keys are 'low' and 'high'. | |
| 744 | + */ | |
| 745 | + 'banners' => array( | |
| 746 | + 'low' => 'https://surniaulula.github.io/wpsso-rest-api/assets/banner-772x250.jpg', | |
| 747 | + 'high' => 'https://surniaulula.github.io/wpsso-rest-api/assets/banner-1544x500.jpg', | |
| 748 | + ), | |
| 749 | + | |
| 750 | + /* | |
| 751 | + * Icon image array keys are '1x' and '2x'. | |
| 752 | + */ | |
| 753 | + 'icons' => array( | |
| 754 | + '1x' => 'https://surniaulula.github.io/wpsso-rest-api/assets/icon-128x128.png', | |
| 755 | + '2x' => 'https://surniaulula.github.io/wpsso-rest-api/assets/icon-256x256.png', | |
| 756 | + ), | |
| 757 | + ), | |
| 758 | + 'hosts' => array( | |
| 759 | + 'wp_org' => true, | |
| 760 | + 'github' => true, | |
| 761 | + 'wpsso' => true, | |
| 762 | + ), | |
| 763 | + 'url' => array( | |
| 764 | + | |
| 765 | + /* | |
| 766 | + * WordPress.org URLs. | |
| 767 | + */ | |
| 768 | + 'home' => 'https://wordpress.org/plugins/wpsso-rest-api/', | |
| 769 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-rest-api', | |
| 770 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-rest-api/reviews/?rate=5#new-post', | |
| 771 | + | |
| 772 | + /* | |
| 773 | + * GitHub.com URLs. | |
| 774 | + */ | |
| 775 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-rest-api/master/readme.txt', | |
| 776 | + | |
| 777 | + /* | |
| 778 | + * WPSSO.com URLs. | |
| 779 | + */ | |
| 780 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-rest-api/changelog/', | |
| 781 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-rest-api/', | |
| 782 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-rest-api/installation/', | |
| 783 | + 'faqs' => '', | |
| 784 | + 'notes' => '', | |
| 785 | + 'support' => '', // Premium support ticket. | |
| 786 | + 'purchase' => '', // Purchase page. | |
| 787 | + 'info' => '', // License information. | |
| 788 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-rest-api/update/', | |
| 789 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-rest-api/latest/', | |
| 790 | + ), | |
| 791 | + ), | |
| 792 | + 'wpssossm' => array( // Plugin acronym. | |
| 793 | + 'short' => 'WPSSO SSM', // Short plugin name. | |
| 794 | + 'name' => 'WPSSO Strip Schema Microdata', | |
| 795 | + 'desc' => 'Remove Schema Microdata and RDFa from the webpage for better Google Rich Results using Schema JSON-LD markup.', | |
| 796 | + 'slug' => 'wpsso-strip-schema-microdata', | |
| 797 | + 'base' => 'wpsso-strip-schema-microdata/wpsso-strip-schema-microdata.php', | |
| 798 | + 'update_auth' => '', // No premium version. | |
| 799 | + | |
| 800 | + /* | |
| 801 | + * URLs or relative paths to plugin banners and icons. | |
| 802 | + */ | |
| 803 | + 'assets' => array( | |
| 804 | + | |
| 805 | + /* | |
| 806 | + * Banner image array keys are 'low' and 'high'. | |
| 807 | + */ | |
| 808 | + 'banners' => array( | |
| 809 | + 'low' => 'https://surniaulula.github.io/wpsso-strip-schema-microdata/assets/banner-772x250.jpg', | |
| 810 | + 'high' => 'https://surniaulula.github.io/wpsso-strip-schema-microdata/assets/banner-1544x500.jpg', | |
| 811 | + ), | |
| 812 | + | |
| 813 | + /* | |
| 814 | + * Icon image array keys are '1x' and '2x'. | |
| 815 | + */ | |
| 816 | + 'icons' => array( | |
| 817 | + '1x' => 'https://surniaulula.github.io/wpsso-strip-schema-microdata/assets/icon-128x128.png', | |
| 818 | + '2x' => 'https://surniaulula.github.io/wpsso-strip-schema-microdata/assets/icon-256x256.png', | |
| 819 | + ), | |
| 820 | + ), | |
| 821 | + 'hosts' => array( | |
| 822 | + 'wp_org' => true, | |
| 823 | + 'github' => true, | |
| 824 | + 'wpsso' => true, | |
| 825 | + ), | |
| 826 | + 'url' => array( | |
| 827 | + | |
| 828 | + /* | |
| 829 | + * WordPress.org URLs. | |
| 830 | + */ | |
| 831 | + 'home' => 'https://wordpress.org/plugins/wpsso-strip-schema-microdata/', | |
| 832 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-strip-schema-microdata', | |
| 833 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-strip-schema-microdata/reviews/?rate=5#new-post', | |
| 834 | + | |
| 835 | + /* | |
| 836 | + * GitHub.com URLs. | |
| 837 | + */ | |
| 838 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-strip-schema-microdata/master/readme.txt', | |
| 839 | + | |
| 840 | + /* | |
| 841 | + * WPSSO.com URLs. | |
| 842 | + */ | |
| 843 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-strip-schema-microdata/changelog/', | |
| 844 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-strip-schema-microdata/', | |
| 845 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-strip-schema-microdata/installation/', | |
| 846 | + 'faqs' => '', | |
| 847 | + 'notes' => '', | |
| 848 | + 'support' => '', // Premium support ticket. | |
| 849 | + 'purchase' => '', // Purchase page. | |
| 850 | + 'info' => '', // License information. | |
| 851 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-strip-schema-microdata/update/', | |
| 852 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-strip-schema-microdata/latest/', | |
| 853 | + ), | |
| 854 | + ), | |
| 855 | + 'wpssotie' => array( // Plugin acronym. | |
| 856 | + 'short' => 'WPSSO TIE', // Short plugin name. | |
| 857 | + 'name' => 'WPSSO Tune WP Image Editors', | |
| 858 | + 'desc' => 'Improves the appearance of WordPress images for better click through rates from social and search sites.', | |
| 859 | + 'slug' => 'wpsso-tune-image-editors', | |
| 860 | + 'base' => 'wpsso-tune-image-editors/wpsso-tune-image-editors.php', | |
| 861 | + 'update_auth' => '', // No premium version. | |
| 862 | + | |
| 863 | + /* | |
| 864 | + * URLs or relative paths to plugin banners and icons. | |
| 865 | + */ | |
| 866 | + 'assets' => array( | |
| 867 | + | |
| 868 | + /* | |
| 869 | + * Banner image array keys are 'low' and 'high'. | |
| 870 | + */ | |
| 871 | + 'banners' => array( | |
| 872 | + 'low' => 'https://surniaulula.github.io/wpsso-tune-image-editors/assets/banner-772x250.jpg', | |
| 873 | + 'high' => 'https://surniaulula.github.io/wpsso-tune-image-editors/assets/banner-1544x500.jpg', | |
| 874 | + ), | |
| 875 | + | |
| 876 | + /* | |
| 877 | + * Icon image array keys are '1x' and '2x'. | |
| 878 | + */ | |
| 879 | + 'icons' => array( | |
| 880 | + '1x' => 'https://surniaulula.github.io/wpsso-tune-image-editors/assets/icon-128x128.png', | |
| 881 | + '2x' => 'https://surniaulula.github.io/wpsso-tune-image-editors/assets/icon-256x256.png', | |
| 882 | + ), | |
| 883 | + ), | |
| 884 | + 'hosts' => array( | |
| 885 | + 'wp_org' => true, | |
| 886 | + 'github' => true, | |
| 887 | + 'wpsso' => true, | |
| 888 | + ), | |
| 889 | + 'url' => array( | |
| 890 | + | |
| 891 | + /* | |
| 892 | + * WordPress.org URLs. | |
| 893 | + */ | |
| 894 | + 'home' => 'https://wordpress.org/plugins/wpsso-tune-image-editors/', | |
| 895 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-tune-image-editors', | |
| 896 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-tune-image-editors/reviews/?rate=5#new-post', | |
| 897 | + | |
| 898 | + /* | |
| 899 | + * GitHub.com URLs. | |
| 900 | + */ | |
| 901 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-tune-image-editors/master/readme.txt', | |
| 902 | + | |
| 903 | + /* | |
| 904 | + * WPSSO.com URLs. | |
| 905 | + */ | |
| 906 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-tune-image-editors/changelog/', | |
| 907 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-tune-image-editors/', | |
| 908 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-tune-image-editors/installation/', | |
| 909 | + 'faqs' => '', | |
| 910 | + 'notes' => '', | |
| 911 | + 'support' => '', // Premium support ticket. | |
| 912 | + 'purchase' => '', // Purchase page. | |
| 913 | + 'info' => '', // License information. | |
| 914 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-tune-image-editors/update/', | |
| 915 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-tune-image-editors/latest/', | |
| 916 | + ), | |
| 917 | + ), | |
| 918 | + 'wpssoul' => array( // Plugin acronym. | |
| 919 | + 'short' => 'WPSSO UL', // Short plugin name. | |
| 920 | + 'name' => 'WPSSO User Locale Selector', | |
| 921 | + 'desc' => 'Quick and easy locale / language / region selector for the WordPress admin toolbar.', | |
| 922 | + 'slug' => 'wpsso-user-locale', | |
| 923 | + 'base' => 'wpsso-user-locale/wpsso-user-locale.php', | |
| 924 | + 'update_auth' => '', // No premium version. | |
| 925 | + | |
| 926 | + /* | |
| 927 | + * URLs or relative paths to plugin banners and icons. | |
| 928 | + */ | |
| 929 | + 'assets' => array( | |
| 930 | + | |
| 931 | + /* | |
| 932 | + * Banner image array keys are 'low' and 'high'. | |
| 933 | + */ | |
| 934 | + 'banners' => array( | |
| 935 | + 'low' => 'https://surniaulula.github.io/wpsso-user-locale/assets/banner-772x250.jpg', | |
| 936 | + 'high' => 'https://surniaulula.github.io/wpsso-user-locale/assets/banner-1544x500.jpg', | |
| 937 | + ), | |
| 938 | + | |
| 939 | + /* | |
| 940 | + * Icon image array keys are '1x' and '2x'. | |
| 941 | + */ | |
| 942 | + 'icons' => array( | |
| 943 | + '1x' => 'https://surniaulula.github.io/wpsso-user-locale/assets/icon-128x128.png', | |
| 944 | + '2x' => 'https://surniaulula.github.io/wpsso-user-locale/assets/icon-256x256.png', | |
| 945 | + ), | |
| 946 | + ), | |
| 947 | + 'hosts' => array( | |
| 948 | + 'wp_org' => true, | |
| 949 | + 'github' => true, | |
| 950 | + 'wpsso' => true, | |
| 951 | + ), | |
| 952 | + 'url' => array( | |
| 953 | + | |
| 954 | + /* | |
| 955 | + * WordPress.org URLs. | |
| 956 | + */ | |
| 957 | + 'home' => 'https://wordpress.org/plugins/wpsso-user-locale/', | |
| 958 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-user-locale', | |
| 959 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-user-locale/reviews/?rate=5#new-post', | |
| 960 | + | |
| 961 | + /* | |
| 962 | + * GitHub.com URLs. | |
| 963 | + */ | |
| 964 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-user-locale/master/readme.txt', | |
| 965 | + | |
| 966 | + /* | |
| 967 | + * WPSSO.com URLs. | |
| 968 | + */ | |
| 969 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-user-locale/changelog/', | |
| 970 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-user-locale/', | |
| 971 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-user-locale/installation/', | |
| 972 | + 'faqs' => '', | |
| 973 | + 'notes' => 'https://wpsso.com/docs/plugins/wpsso-user-locale/notes/', | |
| 974 | + 'support' => '', // Premium support ticket. | |
| 975 | + 'purchase' => '', // Purchase page. | |
| 976 | + 'info' => '', // License information. | |
| 977 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-user-locale/update/', | |
| 978 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-user-locale/latest/', | |
| 979 | + ), | |
| 980 | + ), | |
| 981 | + 'wpssoum' => array( // Plugin acronym. | |
| 982 | + 'short' => 'WPSSO UM', // Short plugin name. | |
| 983 | + 'name' => 'WPSSO Update Manager', | |
| 984 | + 'desc' => 'Update Manager for the WPSSO Core Premium plugin.', | |
| 985 | + 'slug' => 'wpsso-um', | |
| 986 | + 'base' => 'wpsso-um/wpsso-um.php', | |
| 987 | + 'update_auth' => '', // No premium version. | |
| 988 | + | |
| 989 | + /* | |
| 990 | + * URLs or relative paths to plugin banners and icons. | |
| 991 | + */ | |
| 992 | + 'assets' => array( | |
| 993 | + | |
| 994 | + /* | |
| 995 | + * Banner image array keys are 'low' and 'high'. | |
| 996 | + */ | |
| 997 | + 'banners' => array( | |
| 998 | + 'low' => 'https://surniaulula.github.io/wpsso-um/assets/banner-772x250.jpg', | |
| 999 | + 'high' => 'https://surniaulula.github.io/wpsso-um/assets/banner-1544x500.jpg', | |
| 1000 | + ), | |
| 1001 | + | |
| 1002 | + /* | |
| 1003 | + * Icon image array keys are '1x' and '2x'. | |
| 1004 | + */ | |
| 1005 | + 'icons' => array( | |
| 1006 | + '1x' => 'https://surniaulula.github.io/wpsso-um/assets/icon-128x128.png', | |
| 1007 | + '2x' => 'https://surniaulula.github.io/wpsso-um/assets/icon-256x256.png', | |
| 1008 | + ), | |
| 1009 | + ), | |
| 1010 | + 'hosts' => array( | |
| 1011 | + 'wp_org' => false, // Add-on is not available on wordpress.org. | |
| 1012 | + 'github' => true, | |
| 1013 | + 'wpsso' => true, | |
| 1014 | + ), | |
| 1015 | + 'url' => array( | |
| 1016 | + | |
| 1017 | + /* | |
| 1018 | + * GitHub.com URLs. | |
| 1019 | + */ | |
| 1020 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-um/master/readme.txt', | |
| 1021 | + | |
| 1022 | + /* | |
| 1023 | + * WPSSO.com URLs. | |
| 1024 | + */ | |
| 1025 | + 'home' => 'https://wpsso.com/extend/plugins/wpsso-um/', | |
| 1026 | + 'forum' => '', | |
| 1027 | + 'review' => '', | |
| 1028 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-um/changelog/', | |
| 1029 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-um/', | |
| 1030 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-um/installation/', | |
| 1031 | + 'faqs' => '', | |
| 1032 | + 'notes' => '', | |
| 1033 | + 'support' => '', // Premium support ticket. | |
| 1034 | + 'purchase' => '', // Purchase page. | |
| 1035 | + 'info' => '', // License information. | |
| 1036 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-um/update/', | |
| 1037 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-um/latest/', | |
| 1038 | + ), | |
| 1039 | + ), | |
| 1040 | + 'wpssowcmd' => array( // Plugin acronym. | |
| 1041 | + 'short' => 'WPSSO WCMD', // Short plugin name. | |
| 1042 | + 'name' => 'WPSSO Schema Product Metadata for WooCommerce', | |
| 1043 | + 'desc' => 'MPN, ISBN, GTIN-8, UPC, EAN, GTIN-14, net dimensions, and fluid volume for better WooCommerce Schema markup.', | |
| 1044 | + 'slug' => 'wpsso-wc-metadata', | |
| 1045 | + 'base' => 'wpsso-wc-metadata/wpsso-wc-metadata.php', | |
| 1046 | + 'update_auth' => '', // No premium version. | |
| 1047 | + | |
| 1048 | + /* | |
| 1049 | + * URLs or relative paths to plugin banners and icons. | |
| 1050 | + */ | |
| 1051 | + 'assets' => array( | |
| 1052 | + | |
| 1053 | + /* | |
| 1054 | + * Banner image array keys are 'low' and 'high'. | |
| 1055 | + */ | |
| 1056 | + 'banners' => array( | |
| 1057 | + 'low' => 'https://surniaulula.github.io/wpsso-wc-metadata/assets/banner-772x250.jpg', | |
| 1058 | + 'high' => 'https://surniaulula.github.io/wpsso-wc-metadata/assets/banner-1544x500.jpg', | |
| 1059 | + ), | |
| 1060 | + | |
| 1061 | + /* | |
| 1062 | + * Icon image array keys are '1x' and '2x'. | |
| 1063 | + */ | |
| 1064 | + 'icons' => array( | |
| 1065 | + '1x' => 'https://surniaulula.github.io/wpsso-wc-metadata/assets/icon-128x128.png', | |
| 1066 | + '2x' => 'https://surniaulula.github.io/wpsso-wc-metadata/assets/icon-256x256.png', | |
| 1067 | + ), | |
| 1068 | + ), | |
| 1069 | + 'hosts' => array( | |
| 1070 | + 'wp_org' => true, | |
| 1071 | + 'github' => true, | |
| 1072 | + 'wpsso' => true, | |
| 1073 | + ), | |
| 1074 | + 'url' => array( | |
| 1075 | + | |
| 1076 | + /* | |
| 1077 | + * WordPress.org URLs. | |
| 1078 | + */ | |
| 1079 | + 'home' => 'https://wordpress.org/plugins/wpsso-wc-metadata/', | |
| 1080 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-wc-metadata', | |
| 1081 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-wc-metadata/reviews/?rate=5#new-post', | |
| 1082 | + | |
| 1083 | + /* | |
| 1084 | + * GitHub.com URLs. | |
| 1085 | + */ | |
| 1086 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-wc-metadata/master/readme.txt', | |
| 1087 | + | |
| 1088 | + /* | |
| 1089 | + * WPSSO.com URLs. | |
| 1090 | + */ | |
| 1091 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-wc-metadata/changelog/', | |
| 1092 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-wc-metadata/', | |
| 1093 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-wc-metadata/installation/', | |
| 1094 | + 'faqs' => '', | |
| 1095 | + 'notes' => '', | |
| 1096 | + 'support' => '', // Premium support ticket. | |
| 1097 | + 'purchase' => '', // Purchase page. | |
| 1098 | + 'info' => '', // License information. | |
| 1099 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-wc-metadata/update/', | |
| 1100 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-wc-metadata/latest/', | |
| 1101 | + ), | |
| 1102 | + ), | |
| 1103 | + 'wpssowcsdt' => array( // Plugin acronym. | |
| 1104 | + 'short' => 'WPSSO WCSDT', // Short plugin name. | |
| 1105 | + 'name' => 'WPSSO Schema Shipping Delivery Time for WooCommerce', | |
| 1106 | + 'desc' => 'Shipping delivery time estimates for WooCommerce shipping zones, methods, and classes.', | |
| 1107 | + 'slug' => 'wpsso-wc-shipping-delivery-time', | |
| 1108 | + 'base' => 'wpsso-wc-shipping-delivery-time/wpsso-wc-shipping-delivery-time.php', | |
| 1109 | + 'update_auth' => '', // No premium version. | |
| 1110 | + | |
| 1111 | + /* | |
| 1112 | + * URLs or relative paths to plugin banners and icons. | |
| 1113 | + */ | |
| 1114 | + 'assets' => array( | |
| 1115 | + | |
| 1116 | + /* | |
| 1117 | + * Banner image array keys are 'low' and 'high'. | |
| 1118 | + */ | |
| 1119 | + 'banners' => array( | |
| 1120 | + 'low' => 'https://surniaulula.github.io/wpsso-wc-shipping-delivery-time/assets/banner-772x250.jpg', | |
| 1121 | + 'high' => 'https://surniaulula.github.io/wpsso-wc-shipping-delivery-time/assets/banner-1544x500.jpg', | |
| 1122 | + ), | |
| 1123 | + | |
| 1124 | + /* | |
| 1125 | + * Icon image array keys are '1x' and '2x'. | |
| 1126 | + */ | |
| 1127 | + 'icons' => array( | |
| 1128 | + '1x' => 'https://surniaulula.github.io/wpsso-wc-shipping-delivery-time/assets/icon-128x128.png', | |
| 1129 | + '2x' => 'https://surniaulula.github.io/wpsso-wc-shipping-delivery-time/assets/icon-256x256.png', | |
| 1130 | + ), | |
| 1131 | + ), | |
| 1132 | + 'hosts' => array( | |
| 1133 | + 'wp_org' => true, | |
| 1134 | + 'github' => true, | |
| 1135 | + 'wpsso' => true, | |
| 1136 | + ), | |
| 1137 | + 'url' => array( | |
| 1138 | + | |
| 1139 | + /* | |
| 1140 | + * WordPress.org URLs. | |
| 1141 | + */ | |
| 1142 | + 'home' => 'https://wordpress.org/plugins/wpsso-wc-shipping-delivery-time/', | |
| 1143 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-wc-shipping-delivery-time', | |
| 1144 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-wc-shipping-delivery-time/reviews/?rate=5#new-post', | |
| 1145 | + | |
| 1146 | + /* | |
| 1147 | + * GitHub.com URLs. | |
| 1148 | + */ | |
| 1149 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-wc-shipping-delivery-time/main/readme.txt', | |
| 1150 | + | |
| 1151 | + /* | |
| 1152 | + * WPSSO.com URLs. | |
| 1153 | + */ | |
| 1154 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-wc-shipping-delivery-time/changelog/', | |
| 1155 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-wc-shipping-delivery-time/', | |
| 1156 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-wc-shipping-delivery-time/installation/', | |
| 1157 | + 'faqs' => 'https://wpsso.com/docs/plugins/wpsso-wc-shipping-delivery-time/faqs/', | |
| 1158 | + 'notes' => '', | |
| 1159 | + 'support' => '', // Premium support ticket. | |
| 1160 | + 'purchase' => '', // Purchase page. | |
| 1161 | + 'info' => '', // License information. | |
| 1162 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-wc-shipping-delivery-time/update/', | |
| 1163 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-wc-shipping-delivery-time/latest/', | |
| 1164 | + ), | |
| 1165 | + ), | |
| 1166 | + 'wpssowpsm' => array( // Plugin acronym. | |
| 1167 | + 'short' => 'WPSSO WPSM', // Short plugin name. | |
| 1168 | + 'name' => 'WPSSO WP Sitemaps XML', | |
| 1169 | + 'desc' => 'Improves the WordPress sitemaps XML with article modification times, alternate language URLs, images sitemaps, news sitemaps and more.', | |
| 1170 | + 'slug' => 'wpsso-wp-sitemaps', | |
| 1171 | + 'base' => 'wpsso-wp-sitemaps/wpsso-wp-sitemaps.php', | |
| 1172 | + 'update_auth' => '', // No premium version. | |
| 1173 | + | |
| 1174 | + /* | |
| 1175 | + * URLs or relative paths to plugin banners and icons. | |
| 1176 | + */ | |
| 1177 | + 'assets' => array( | |
| 1178 | + | |
| 1179 | + /* | |
| 1180 | + * Banner image array keys are 'low' and 'high'. | |
| 1181 | + */ | |
| 1182 | + 'banners' => array( | |
| 1183 | + 'low' => 'https://surniaulula.github.io/wpsso-wp-sitemaps/assets/banner-772x250.jpg', | |
| 1184 | + 'high' => 'https://surniaulula.github.io/wpsso-wp-sitemaps/assets/banner-1544x500.jpg', | |
| 1185 | + ), | |
| 1186 | + | |
| 1187 | + /* | |
| 1188 | + * Icon image array keys are '1x' and '2x'. | |
| 1189 | + */ | |
| 1190 | + 'icons' => array( | |
| 1191 | + '1x' => 'https://surniaulula.github.io/wpsso-wp-sitemaps/assets/icon-128x128.png', | |
| 1192 | + '2x' => 'https://surniaulula.github.io/wpsso-wp-sitemaps/assets/icon-256x256.png', | |
| 1193 | + ), | |
| 1194 | + ), | |
| 1195 | + 'hosts' => array( | |
| 1196 | + 'wp_org' => true, | |
| 1197 | + 'github' => true, | |
| 1198 | + 'wpsso' => true, | |
| 1199 | + ), | |
| 1200 | + 'url' => array( | |
| 1201 | + | |
| 1202 | + /* | |
| 1203 | + * WordPress.org URLs. | |
| 1204 | + */ | |
| 1205 | + 'home' => 'https://wordpress.org/plugins/wpsso-wp-sitemaps/', | |
| 1206 | + 'forum' => 'https://wordpress.org/support/plugin/wpsso-wp-sitemaps', | |
| 1207 | + 'review' => 'https://wordpress.org/support/plugin/wpsso-wp-sitemaps/reviews/?rate=5#new-post', | |
| 1208 | + | |
| 1209 | + /* | |
| 1210 | + * GitHub.com URLs. | |
| 1211 | + */ | |
| 1212 | + 'readme_txt' => 'https://raw.githubusercontent.com/SurniaUlula/wpsso-wp-sitemaps/master/readme.txt', | |
| 1213 | + | |
| 1214 | + /* | |
| 1215 | + * WPSSO.com URLs. | |
| 1216 | + */ | |
| 1217 | + 'changelog' => 'https://wpsso.com/extend/plugins/wpsso-wp-sitemaps/changelog/', | |
| 1218 | + 'docs' => 'https://wpsso.com/docs/plugins/wpsso-wp-sitemaps/', | |
| 1219 | + 'install' => 'https://wpsso.com/docs/plugins/wpsso-wp-sitemaps/installation/', | |
| 1220 | + 'faqs' => '', | |
| 1221 | + 'notes' => '', | |
| 1222 | + 'support' => '', // Premium support ticket. | |
| 1223 | + 'purchase' => '', // Purchase page. | |
| 1224 | + 'info' => '', // License information. | |
| 1225 | + 'update' => 'https://wpsso.com/extend/plugins/wpsso-wp-sitemaps/update/', | |
| 1226 | + 'download' => 'https://wpsso.com/extend/plugins/wpsso-wp-sitemaps/latest/', | |
| 1227 | + ), | |
| 1228 | + ), | |
| 1229 | + ), | |
| 1230 | + 'opt' => array( | |
| 1231 | + 'defaults' => array( | |
| 1232 | + 'checksum' => '', // Checksum of plugin versions. | |
| 1233 | + 'opt_checksum' => '', // Checksum of option versions. | |
| 1234 | + 'opt_versions' => array(), | |
| 1235 | + | |
| 1236 | + /* | |
| 1237 | + * Site options. | |
| 1238 | + */ | |
| 1239 | + 'site_name' => '', // Site Name (localized). | |
| 1240 | + 'site_name_alt' => '', // Site Alternate Name (localized). | |
| 1241 | + 'site_desc' => '', // Site Description (localized). | |
| 1242 | + 'site_home_url' => '', // Site Home URL (localized). | |
| 1243 | + 'site_pub_schema_type' => 'organization', // Site Publisher Type. | |
| 1244 | + 'site_pub_person_id' => 'none', // Site Publisher Person. | |
| 1245 | + 'site_org_logo_url' => '', // Organization Logo URL (localized) | |
| 1246 | + 'site_org_banner_url' => '', // Organization Banner URL (localized). | |
| 1247 | + 'site_org_place_id' => 'none', // Organization Location. | |
| 1248 | + 'site_org_schema_type' => 'organization', // Organization Schema Type. | |
| 1249 | + | |
| 1250 | + /* | |
| 1251 | + * Facebook options. | |
| 1252 | + */ | |
| 1253 | + 'fb_publisher_url' => '', // Facebook Business Page URL (localized). | |
| 1254 | + 'fb_app_id' => '966242223397117', // Facebook Application ID. | |
| 1255 | + 'fb_locale' => 'en_US', // Facebook Locale. | |
| 1256 | + | |
| 1257 | + /* | |
| 1258 | + * Open Graph options. | |
| 1259 | + * | |
| 1260 | + * See WpssoOpengraph->add_data_og_type_md(). | |
| 1261 | + */ | |
| 1262 | + 'og_def_img_id' => '', // Default Image ID. | |
| 1263 | + 'og_def_img_url' => '', // Default Image URL. | |
| 1264 | + 'og_def_currency' => 'USD', // Default Currency. | |
| 1265 | + 'og_def_country' => 'none', // Default Country. | |
| 1266 | + 'og_def_timezone' => 'UTC', // Default Timezone. | |
| 1267 | + 'og_def_dimension_units' => 'cm', // Default Dimension Units. | |
| 1268 | + 'og_def_weight_units' => 'kg', // Default Weight Units. | |
| 1269 | + 'og_def_fluid_volume_units' => 'ml', // Default Fluid Volume Units. | |
| 1270 | + 'og_img_width' => 1200, | |
| 1271 | + 'og_img_height' => 628, | |
| 1272 | + 'og_img_crop' => 1, | |
| 1273 | + 'og_img_crop_x' => 'center', | |
| 1274 | + 'og_img_crop_y' => 'center', | |
| 1275 | + 'og_img_max' => 1, // Maximum Images to Include. | |
| 1276 | + 'og_title_sep' => '-', // Title Separator. | |
| 1277 | + 'og_ellipsis' => '...', // Truncated Text Ellipsis. | |
| 1278 | + 'og_desc_hashtags' => 0, // Description Hashtags. | |
| 1279 | + 'og_vid_max' => 1, // Maximum Videos to Include. | |
| 1280 | + 'og_vid_autoplay' => 0, // Force Autoplay when Possible. | |
| 1281 | + 'og_vid_prev_img' => 1, // Include Video Preview Images. | |
| 1282 | + | |
| 1283 | + /* | |
| 1284 | + * Advanced Settings > Document Types > Open Graph. | |
| 1285 | + */ | |
| 1286 | + 'og_type_for_archive_page' => 'website', | |
| 1287 | + 'og_type_for_comment' => 'article', | |
| 1288 | + 'og_type_for_comment_reply' => 'article', | |
| 1289 | + 'og_type_for_comment_review' => 'article', | |
| 1290 | + 'og_type_for_home_page' => 'website', | |
| 1291 | + 'og_type_for_home_posts' => 'website', | |
| 1292 | + 'og_type_for_search_page' => 'website', | |
| 1293 | + 'og_type_for_user_page' => 'profile', | |
| 1294 | + | |
| 1295 | + /* | |
| 1296 | + * Advanced Settings > Document Types > Open Graph tab: Post Types. | |
| 1297 | + */ | |
| 1298 | + 'og_type_for_attachment' => 'website', | |
| 1299 | + 'og_type_for_article' => 'article', | |
| 1300 | + 'og_type_for_book' => 'book', | |
| 1301 | + 'og_type_for_business' => 'place', | |
| 1302 | + 'og_type_for_contact_point' => 'place', | |
| 1303 | + 'og_type_for_download' => 'product', // For Easy Digital Downloads. | |
| 1304 | + 'og_type_for_organization' => 'website', | |
| 1305 | + 'og_type_for_page' => 'article', | |
| 1306 | + 'og_type_for_place' => 'place', | |
| 1307 | + 'og_type_for_post' => 'article', | |
| 1308 | + 'og_type_for_product' => 'product', // For WooCommerce. | |
| 1309 | + 'og_type_for_product_variation' => 'product', // For WooCommerce. | |
| 1310 | + 'og_type_for_question' => 'article', | |
| 1311 | + 'og_type_for_tc_events' => 'article', // For Tickera. | |
| 1312 | + 'og_type_for_tribe_events' => 'article', // For The Events Calendar. | |
| 1313 | + 'og_type_for_website' => 'website', | |
| 1314 | + | |
| 1315 | + /* | |
| 1316 | + * Advanced Settings > Document Types > Open Graph tab: Taxonomies. | |
| 1317 | + */ | |
| 1318 | + 'og_type_for_tax_category' => 'website', | |
| 1319 | + 'og_type_for_tax_faq_category' => 'website', | |
| 1320 | + 'og_type_for_tax_link_category' => 'website', | |
| 1321 | + 'og_type_for_tax_post_tag' => 'website', | |
| 1322 | + 'og_type_for_tax_product_brand' => 'website', // For WooCommerce Brands. | |
| 1323 | + 'og_type_for_tax_product_cat' => 'website', // For WooCommerce. | |
| 1324 | + 'og_type_for_tax_product_tag' => 'website', // For WooCommerce. | |
| 1325 | + 'og_type_for_tax_pwb-brand' => 'website', // For Perfect Brands for WooCommerce. | |
| 1326 | + 'og_type_for_tax_tribe_events_cat' => 'website', // For The Events Calendar. | |
| 1327 | + 'og_type_for_tax_yith_product_brand' => 'website', // For YITH WooCommerce Brands Add-on. | |
| 1328 | + | |
| 1329 | + /* | |
| 1330 | + * Pinterest options. | |
| 1331 | + */ | |
| 1332 | + 'pin_publisher_url' => '', | |
| 1333 | + 'pin_add_nopin_header_img_tag' => 1, // Add "nopin" to Site Header Image. | |
| 1334 | + 'pin_add_nopin_media_img_tag' => 0, // Add Pinterest "nopin" to Images. | |
| 1335 | + 'pin_add_img_html' => 0, // Add Hidden Image for Pinterest. | |
| 1336 | + 'pin_img_width' => 1200, | |
| 1337 | + 'pin_img_height' => 1800, | |
| 1338 | + 'pin_img_crop' => 0, | |
| 1339 | + 'pin_img_crop_x' => 'center', | |
| 1340 | + 'pin_img_crop_y' => 'center', | |
| 1341 | + | |
| 1342 | + /* | |
| 1343 | + * Robots options. | |
| 1344 | + */ | |
| 1345 | + 'robots_max_snippet' => -1, | |
| 1346 | + 'robots_max_image_preview' => 'large', | |
| 1347 | + 'robots_max_video_preview' => -1, | |
| 1348 | + | |
| 1349 | + /* | |
| 1350 | + * Schema options. | |
| 1351 | + */ | |
| 1352 | + 'schema_1x1_img_width' => 1200, | |
| 1353 | + 'schema_1x1_img_height' => 1200, | |
| 1354 | + 'schema_1x1_img_crop' => 1, | |
| 1355 | + 'schema_1x1_img_crop_x' => 'center', | |
| 1356 | + 'schema_1x1_img_crop_y' => 'center', | |
| 1357 | + 'schema_4x3_img_width' => 1200, | |
| 1358 | + 'schema_4x3_img_height' => 900, | |
| 1359 | + 'schema_4x3_img_crop' => 1, | |
| 1360 | + 'schema_4x3_img_crop_x' => 'center', | |
| 1361 | + 'schema_4x3_img_crop_y' => 'center', | |
| 1362 | + 'schema_16x9_img_width' => 1200, | |
| 1363 | + 'schema_16x9_img_height' => 675, | |
| 1364 | + 'schema_16x9_img_crop' => 1, | |
| 1365 | + 'schema_16x9_img_crop_x' => 'center', | |
| 1366 | + 'schema_16x9_img_crop_y' => 'center', | |
| 1367 | + | |
| 1368 | + /* | |
| 1369 | + * Advanced Settings > Document Types > Schema. | |
| 1370 | + */ | |
| 1371 | + 'schema_type_for_archive_page' => 'item.list', | |
| 1372 | + 'schema_type_for_comment' => 'comment', | |
| 1373 | + 'schema_type_for_comment_reply' => 'comment', | |
| 1374 | + 'schema_type_for_comment_review' => 'review', | |
| 1375 | + 'schema_type_for_home_page' => 'website', | |
| 1376 | + 'schema_type_for_home_posts' => 'blog', | |
| 1377 | + 'schema_type_for_search_page' => 'webpage.search.results', | |
| 1378 | + 'schema_type_for_user_page' => 'webpage.profile', | |
| 1379 | + | |
| 1380 | + /* | |
| 1381 | + * Advanced Settings > Document Types > Open Graph tab: Post Types. | |
| 1382 | + */ | |
| 1383 | + 'schema_type_for_attachment' => 'webpage', | |
| 1384 | + 'schema_type_for_article' => 'article', | |
| 1385 | + 'schema_type_for_book' => 'book', | |
| 1386 | + 'schema_type_for_business' => 'local.business', | |
| 1387 | + 'schema_type_for_contact_point' => 'contact.point', | |
| 1388 | + 'schema_type_for_download' => 'product', // For Easy Digital Downloads. | |
| 1389 | + 'schema_type_for_event' => 'event', | |
| 1390 | + 'schema_type_for_howto' => 'howto', | |
| 1391 | + 'schema_type_for_job_listing' => 'job.posting', // For WP Job Manager. | |
| 1392 | + 'schema_type_for_jobpost' => 'job.posting', // For Simple Job Board. | |
| 1393 | + 'schema_type_for_organization' => 'organization', // For WPSSO OPM. | |
| 1394 | + 'schema_type_for_page' => 'article', | |
| 1395 | + 'schema_type_for_person' => 'person', | |
| 1396 | + 'schema_type_for_place' => 'place', // For WPSSO OPM. | |
| 1397 | + 'schema_type_for_post' => 'blog.posting', | |
| 1398 | + 'schema_type_for_product' => 'product', // For WooCommerce. | |
| 1399 | + 'schema_type_for_product_group' => 'product.group', // For WooCommerce. | |
| 1400 | + 'schema_type_for_qa' => 'webpage.qa', | |
| 1401 | + 'schema_type_for_question' => 'question', // For WPSSO FAQ. | |
| 1402 | + 'schema_type_for_review' => 'review', // For WP Product Review. | |
| 1403 | + 'schema_type_for_service' => 'service', // For WPSSO OPM. | |
| 1404 | + 'schema_type_for_tc_events' => 'event', // For Tickera. | |
| 1405 | + 'schema_type_for_tribe_events' => 'event', // For The Events Calendar. | |
| 1406 | + 'schema_type_for_webpage' => 'webpage', | |
| 1407 | + 'schema_type_for_website' => 'website', | |
| 1408 | + | |
| 1409 | + /* | |
| 1410 | + * Advanced Settings > Document Types > Open Graph tab: Taxonomies. | |
| 1411 | + */ | |
| 1412 | + 'schema_type_for_tax_category' => 'item.list', | |
| 1413 | + 'schema_type_for_tax_faq_category' => 'webpage.faq', // For WPSSO FAQ. | |
| 1414 | + 'schema_type_for_tax_link_category' => 'item.list', | |
| 1415 | + 'schema_type_for_tax_post_tag' => 'item.list', | |
| 1416 | + 'schema_type_for_tax_product_brand' => 'item.list', // For WooCommerce Brands. | |
| 1417 | + 'schema_type_for_tax_product_cat' => 'item.list', // For WooCommerce. | |
| 1418 | + 'schema_type_for_tax_product_tag' => 'item.list', // For WooCommerce. | |
| 1419 | + 'schema_type_for_tax_pwb-brand' => 'item.list', // For Perfect WooCommerce Brands Add-on. | |
| 1420 | + 'schema_type_for_tax_tribe_events_cat' => 'item.list', // For The Events Calendar. | |
| 1421 | + 'schema_type_for_tax_yith_product_brand' => 'item.list', // For YITH WooCommerce Brands Add-on. | |
| 1422 | + | |
| 1423 | + /* | |
| 1424 | + * Advanced Settings > Schema Defaults > Article. | |
| 1425 | + */ | |
| 1426 | + 'schema_def_add_articlebody_prop' => 0, // Add Article Body Property. | |
| 1427 | + 'schema_def_article_section' => 'none', // Default Article Section. | |
| 1428 | + | |
| 1429 | + /* | |
| 1430 | + * Advanced Settings > Schema Defaults > Book. | |
| 1431 | + */ | |
| 1432 | + 'schema_def_book_format' => 'none', // Default Book Format. | |
| 1433 | + 'schema_def_book_author_type' => 'person', // Default Book Author Type. | |
| 1434 | + | |
| 1435 | + /* | |
| 1436 | + * Advanced Settings > Schema Defaults > Creative Work. | |
| 1437 | + */ | |
| 1438 | + 'schema_def_add_date_created' => 0, // Add Date Created Property. | |
| 1439 | + 'schema_def_add_date_published' => 1, // Add Date Published Property. | |
| 1440 | + 'schema_def_add_date_modified' => 1, // Add Date Modified Property. | |
| 1441 | + 'schema_def_add_text_prop' => 0, // Add Text Property. | |
| 1442 | + 'schema_def_family_friendly' => 'none', // Default Family Friendly. | |
| 1443 | + 'schema_def_pub_org_id' => 'site', // Default Publisher Organization. | |
| 1444 | + 'schema_def_pub_person_id' => 'none', // Default Publisher Person. | |
| 1445 | + 'schema_def_prov_org_id' => 'none', // Default Provider Organization. | |
| 1446 | + 'schema_def_prov_person_id' => 'none', // Default Provider Person. | |
| 1447 | + 'schema_def_fund_org_id' => 'none', // Default Funder Organization. | |
| 1448 | + 'schema_def_fund_person_id' => 'none', // Default Funder Person. | |
| 1449 | + | |
| 1450 | + /* | |
| 1451 | + * Advanced Settings > Schema Defaults > Event. | |
| 1452 | + */ | |
| 1453 | + 'schema_def_event_attendance' => 'https://schema.org/OfflineEventAttendanceMode', // Default Event Attendance. | |
| 1454 | + 'schema_def_event_location_id' => 'none', // Default Event Venue. | |
| 1455 | + 'schema_def_event_performer_org_id' => 'none', // Default Event Performer Organization. | |
| 1456 | + 'schema_def_event_performer_person_id' => 'none', // Default Event Performer Person. | |
| 1457 | + 'schema_def_event_organizer_org_id' => 'none', // Default Event Organizer Organization. | |
| 1458 | + 'schema_def_event_organizer_person_id' => 'none', // Default Event Organizer Person. | |
| 1459 | + 'schema_def_event_fund_org_id' => 'none', // Default Event Funder Organization. | |
| 1460 | + 'schema_def_event_fund_person_id' => 'none', // Default Event Funder Person. | |
| 1461 | + | |
| 1462 | + /* | |
| 1463 | + * Advanced Settings > Schema Defaults > Job Posting. | |
| 1464 | + */ | |
| 1465 | + 'schema_def_job_hiring_org_id' => 'none', // Default Hiring Organization. | |
| 1466 | + 'schema_def_job_location_id' => 'none', // Default Job Location. | |
| 1467 | + 'schema_def_job_location_type' => 'none', // Default Job Location Type. | |
| 1468 | + | |
| 1469 | + /* | |
| 1470 | + * Advanced Settings > Schema Defaults > Place. | |
| 1471 | + */ | |
| 1472 | + 'schema_def_place_schema_type' => 'local.business', // Default Place Schema Type. | |
| 1473 | + 'schema_def_place_country' => 'none', // Default Place Country. | |
| 1474 | + 'schema_def_place_timezone' => 'UTC', // Default Place Timezone. | |
| 1475 | + | |
| 1476 | + /* | |
| 1477 | + * Advanced Settings > Schema Defaults > Product. | |
| 1478 | + */ | |
| 1479 | + 'schema_def_product_aggr_offers' => 0, // Aggregate Offers by Currency. | |
| 1480 | + 'schema_def_product_price_valid_days' => 30, // Default Product Prices Valid For. | |
| 1481 | + 'schema_def_product_adult_type' => 'none', // Default Product Adult Type. | |
| 1482 | + 'schema_def_product_age_group' => 'none', // Default Product Age Group. | |
| 1483 | + 'schema_def_product_category' => 'none', // Default Product Google Category. | |
| 1484 | + 'schema_def_product_condition' => 'https://schema.org/NewCondition', // Default Product Condition. | |
| 1485 | + 'schema_def_product_energy_efficiency_min' => 'https://schema.org/EUEnergyEfficiencyCategoryD', | |
| 1486 | + 'schema_def_product_energy_efficiency_max' => 'https://schema.org/EUEnergyEfficiencyCategoryA3Plus', | |
| 1487 | + 'schema_def_product_mrp' => 'none', // Default Product Return Policy. | |
| 1488 | + 'schema_def_product_size_group_0' => 'none', | |
| 1489 | + 'schema_def_product_size_group_1' => 'none', | |
| 1490 | + 'schema_def_product_size_system' => 'none', | |
| 1491 | + 'schema_def_product_target_gender' => 'none', // Default Product Target Gender. | |
| 1492 | + | |
| 1493 | + /* | |
| 1494 | + * Advanced Settings > Schema Defaults > Profile Page. | |
| 1495 | + */ | |
| 1496 | + 'schema_def_profile_page_mentions_prop' => 0, // Add Mentions Property. | |
| 1497 | + | |
| 1498 | + /* | |
| 1499 | + * Advanced Settings > Schema Defaults > Review. | |
| 1500 | + */ | |
| 1501 | + 'schema_def_review_rating_min' => 0.5, // Default Review Rating Min. | |
| 1502 | + 'schema_def_review_rating_max' => 5.0, // Default Review Rating Max. | |
| 1503 | + 'schema_def_review_item_type' => 'product', // Default Subject Schema Type. | |
| 1504 | + | |
| 1505 | + /* | |
| 1506 | + * Advanced Settings > Schema Defaults > Service. | |
| 1507 | + */ | |
| 1508 | + 'schema_def_service_prov_org_id' => 'none', // Default Service Provider Organization. | |
| 1509 | + 'schema_def_service_prov_person_id' => 'none', // Default Service Provider Person. | |
| 1510 | + | |
| 1511 | + /* | |
| 1512 | + * X (Twitter) Card options. | |
| 1513 | + */ | |
| 1514 | + 'tc_site' => '', // X (Twitter) Business @username (localized). | |
| 1515 | + 'tc_type_singular' => 'summary_large_image', // X (Twitter) Card for Singular with Image. | |
| 1516 | + 'tc_type_default' => 'summary', // X (Twitter) Card Type by Default. | |
| 1517 | + | |
| 1518 | + /* | |
| 1519 | + * X (Twitter) Summary Card. | |
| 1520 | + * | |
| 1521 | + * See https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/summary. | |
| 1522 | + */ | |
| 1523 | + 'tc_sum_img_width' => 1200, | |
| 1524 | + 'tc_sum_img_height' => 1200, | |
| 1525 | + 'tc_sum_img_crop' => 1, | |
| 1526 | + 'tc_sum_img_crop_x' => 'center', | |
| 1527 | + 'tc_sum_img_crop_y' => 'center', | |
| 1528 | + | |
| 1529 | + /* | |
| 1530 | + * X (Twitter) Summary Card Large Image. | |
| 1531 | + * | |
| 1532 | + * See https://developer.twitter.com/en/docs/twitter-for-websites/cards/overview/summary-card-with-large-image. | |
| 1533 | + */ | |
| 1534 | + 'tc_lrg_img_width' => 1200, | |
| 1535 | + 'tc_lrg_img_height' => 628, | |
| 1536 | + 'tc_lrg_img_crop' => 1, | |
| 1537 | + 'tc_lrg_img_crop_x' => 'center', | |
| 1538 | + 'tc_lrg_img_crop_y' => 'center', | |
| 1539 | + | |
| 1540 | + /* | |
| 1541 | + * Schema thumbnail image size. | |
| 1542 | + */ | |
| 1543 | + 'thumb_img_width' => 1200, | |
| 1544 | + 'thumb_img_height' => 628, | |
| 1545 | + 'thumb_img_crop' => 1, | |
| 1546 | + 'thumb_img_crop_x' => 'center', | |
| 1547 | + 'thumb_img_crop_y' => 'center', | |
| 1548 | + | |
| 1549 | + /* | |
| 1550 | + * Other publisher page URLs. | |
| 1551 | + */ | |
| 1552 | + 'instagram_publisher_url' => '', // Instagram Business Page URL (localized). | |
| 1553 | + 'linkedin_publisher_url' => '', // LinkedIn Company Page URL (localized). | |
| 1554 | + 'medium_publisher_url' => '', // Medium Business Page URL (localized). | |
| 1555 | + 'myspace_publisher_url' => '', // Myspace Business Page URL (localized). | |
| 1556 | + 'sc_publisher_url' => '', // Soundcloud Business Page URL (localized). | |
| 1557 | + 'tiktok_publisher_url' => '', // TikTok Business Page URL (localized). | |
| 1558 | + 'tumblr_publisher_url' => '', // Tumblr Business Page URL (localized). | |
| 1559 | + 'wikipedia_publisher_url' => '', // Wikipedia Organization Page URL (localized). | |
| 1560 | + 'yt_publisher_url' => '', // YouTube Business Channel URL (localized). | |
| 1561 | + | |
| 1562 | + /* | |
| 1563 | + * Website verification IDs. | |
| 1564 | + */ | |
| 1565 | + 'ahrefs_site_verify' => '', // Ahrefs Website Verification ID. | |
| 1566 | + 'baidu_site_verify' => '', // Baidu Website Verification ID. | |
| 1567 | + 'fb_site_verify' => '', // Facebook Domain Verification ID. | |
| 1568 | + 'g_site_verify' => '', // Google Website Verification ID. | |
| 1569 | + 'bing_site_verify' => '', // Microsoft Bing Website Verification ID. | |
| 1570 | + 'pin_site_verify' => '', // Pinterest Website Verification ID. | |
| 1571 | + 'yandex_site_verify' => '', // Yandex Website Verification ID. | |
| 1572 | + | |
| 1573 | + /* | |
| 1574 | + * Enable / disable individual head HTML tags. | |
| 1575 | + */ | |
| 1576 | + 'add_link_rel_author' => 0, // Deprecated - no longer used by Google. | |
| 1577 | + 'add_link_rel_canonical' => 1, | |
| 1578 | + 'add_link_rel_publisher' => 0, // Deprecated - no longer used by Google. | |
| 1579 | + 'add_link_rel_shortlink' => 1, | |
| 1580 | + 'add_meta_property_fb:admins' => 1, | |
| 1581 | + 'add_meta_property_fb:app_id' => 1, | |
| 1582 | + 'add_meta_property_al:android:app_name' => 1, | |
| 1583 | + 'add_meta_property_al:android:package' => 1, | |
| 1584 | + 'add_meta_property_al:android:url' => 1, | |
| 1585 | + 'add_meta_property_al:ios:app_name' => 1, | |
| 1586 | + 'add_meta_property_al:ios:app_store_id' => 1, | |
| 1587 | + 'add_meta_property_al:ios:url' => 1, | |
| 1588 | + 'add_meta_property_al:web:url' => 1, | |
| 1589 | + 'add_meta_property_al:web:should_fallback' => 1, | |
| 1590 | + 'add_meta_property_og:altitude' => 1, | |
| 1591 | + 'add_meta_property_og:description' => 1, | |
| 1592 | + 'add_meta_property_og:image:secure_url' => 0, // Use og:image instead. | |
| 1593 | + 'add_meta_property_og:image:url' => 0, // Use og:image instead. | |
| 1594 | + 'add_meta_property_og:image' => 1, | |
| 1595 | + 'add_meta_property_og:image:width' => 1, | |
| 1596 | + 'add_meta_property_og:image:height' => 1, | |
| 1597 | + 'add_meta_property_og:image:alt' => 1, | |
| 1598 | + 'add_meta_property_og:latitude' => 1, | |
| 1599 | + 'add_meta_property_og:locale' => 1, | |
| 1600 | + 'add_meta_property_og:longitude' => 1, | |
| 1601 | + 'add_meta_property_og:site_name' => 1, | |
| 1602 | + 'add_meta_property_og:title' => 1, | |
| 1603 | + 'add_meta_property_og:type' => 1, | |
| 1604 | + 'add_meta_property_og:updated_time' => 1, | |
| 1605 | + 'add_meta_property_og:url' => 1, | |
| 1606 | + 'add_meta_property_og:video:secure_url' => 0, // Use og:video instead. | |
| 1607 | + 'add_meta_property_og:video:url' => 0, // Use og:video instead. | |
| 1608 | + 'add_meta_property_og:video' => 1, | |
| 1609 | + 'add_meta_property_og:video:type' => 1, | |
| 1610 | + 'add_meta_property_og:video:width' => 1, | |
| 1611 | + 'add_meta_property_og:video:height' => 1, | |
| 1612 | + 'add_meta_property_og:video:tag' => 0, // Disabled by default. | |
| 1613 | + 'add_meta_property_article:author' => 1, | |
| 1614 | + 'add_meta_property_article:publisher' => 1, | |
| 1615 | + 'add_meta_property_article:published_time' => 1, | |
| 1616 | + 'add_meta_property_article:modified_time' => 1, | |
| 1617 | + 'add_meta_property_article:expiration_time' => 1, | |
| 1618 | + 'add_meta_property_article:section' => 1, | |
| 1619 | + 'add_meta_property_article:tag' => 1, | |
| 1620 | + 'add_meta_property_book:author' => 1, | |
| 1621 | + 'add_meta_property_book:isbn' => 1, | |
| 1622 | + 'add_meta_property_book:release_date' => 1, | |
| 1623 | + 'add_meta_property_book:tag' => 1, | |
| 1624 | + 'add_meta_property_music:album' => 1, | |
| 1625 | + 'add_meta_property_music:album:disc' => 1, | |
| 1626 | + 'add_meta_property_music:album:track' => 1, | |
| 1627 | + 'add_meta_property_music:creator' => 1, | |
| 1628 | + 'add_meta_property_music:duration' => 1, | |
| 1629 | + 'add_meta_property_music:musician' => 1, | |
| 1630 | + 'add_meta_property_music:release_date' => 1, | |
| 1631 | + 'add_meta_property_music:song' => 1, | |
| 1632 | + 'add_meta_property_music:song:disc' => 1, | |
| 1633 | + 'add_meta_property_music:song:track' => 1, | |
| 1634 | + 'add_meta_property_place:location:altitude' => 1, | |
| 1635 | + 'add_meta_property_place:location:latitude' => 1, | |
| 1636 | + 'add_meta_property_place:location:longitude' => 1, | |
| 1637 | + 'add_meta_property_place:street_address' => 1, | |
| 1638 | + 'add_meta_property_place:locality' => 1, | |
| 1639 | + 'add_meta_property_place:region' => 1, | |
| 1640 | + 'add_meta_property_place:postal_code' => 1, | |
| 1641 | + 'add_meta_property_place:country_name' => 1, | |
| 1642 | + 'add_meta_property_product:age_group' => 1, | |
| 1643 | + 'add_meta_property_product:availability' => 1, | |
| 1644 | + 'add_meta_property_product:brand' => 1, | |
| 1645 | + 'add_meta_property_product:category' => 1, // Product Google Category. | |
| 1646 | + 'add_meta_property_product:color' => 1, | |
| 1647 | + 'add_meta_property_product:condition' => 1, | |
| 1648 | + 'add_meta_property_product:ean' => 1, | |
| 1649 | + 'add_meta_property_product:expiration_time' => 1, | |
| 1650 | + 'add_meta_property_product:isbn' => 1, | |
| 1651 | + 'add_meta_property_product:item_group_id' => 1, | |
| 1652 | + 'add_meta_property_product:material' => 1, | |
| 1653 | + 'add_meta_property_product:mfr_part_no' => 1, | |
| 1654 | + 'add_meta_property_product:offers' => 1, // Internal meta tag. | |
| 1655 | + 'add_meta_property_product:variants' => 1, // Internal meta tag. | |
| 1656 | + 'add_meta_property_product:original_price:amount' => 1, | |
| 1657 | + 'add_meta_property_product:original_price:currency' => 1, | |
| 1658 | + 'add_meta_property_product:pattern' => 1, | |
| 1659 | + 'add_meta_property_product:pretax_price:amount' => 1, | |
| 1660 | + 'add_meta_property_product:pretax_price:currency' => 1, | |
| 1661 | + 'add_meta_property_product:price:amount' => 1, | |
| 1662 | + 'add_meta_property_product:price:currency' => 1, | |
| 1663 | + 'add_meta_property_product:purchase_limit' => 1, | |
| 1664 | + 'add_meta_property_product:retailer_item_id' => 1, | |
| 1665 | + 'add_meta_property_product:retailer_part_no' => 1, | |
| 1666 | + 'add_meta_property_product:sale_price:amount' => 1, | |
| 1667 | + 'add_meta_property_product:sale_price:currency' => 1, | |
| 1668 | + 'add_meta_property_product:sale_price_dates:start' => 1, | |
| 1669 | + 'add_meta_property_product:sale_price_dates:end' => 1, | |
| 1670 | + 'add_meta_property_product:shipping_cost:amount' => 1, | |
| 1671 | + 'add_meta_property_product:shipping_cost:currency' => 1, | |
| 1672 | + 'add_meta_property_product:shipping_weight:value' => 1, | |
| 1673 | + 'add_meta_property_product:shipping_weight:units' => 1, | |
| 1674 | + 'add_meta_property_product:size' => 1, | |
| 1675 | + 'add_meta_property_product:target_gender' => 1, | |
| 1676 | + 'add_meta_property_product:upc' => 1, | |
| 1677 | + 'add_meta_property_product:weight:value' => 1, | |
| 1678 | + 'add_meta_property_product:weight:units' => 1, | |
| 1679 | + 'add_meta_name_ahrefs-site-verification' => 0, // Ahrefs Website Verification ID. | |
| 1680 | + 'add_meta_name_author' => 1, | |
| 1681 | + 'add_meta_name_baidu-site-verification' => 0, // Baidu Website Verification ID. | |
| 1682 | + 'add_meta_name_description' => 1, | |
| 1683 | + 'add_meta_name_facebook-domain-verification' => 0, | |
| 1684 | + 'add_meta_name_generator' => 1, | |
| 1685 | + 'add_meta_name_google-site-verification' => 0, // Google Website Verification ID. | |
| 1686 | + 'add_meta_name_msvalidate.01' => 0, // Microsoft Bing Website Verification ID. | |
| 1687 | + 'add_meta_name_p:domain_verify' => 0, // Pinterest Website Verification ID. | |
| 1688 | + 'add_meta_name_robots' => 1, | |
| 1689 | + 'add_meta_name_thumbnail' => 1, | |
| 1690 | + 'add_meta_name_twitter:card' => 1, | |
| 1691 | + 'add_meta_name_twitter:creator' => 1, | |
| 1692 | + 'add_meta_name_twitter:domain' => 1, | |
| 1693 | + 'add_meta_name_twitter:site' => 1, | |
| 1694 | + 'add_meta_name_twitter:title' => 1, | |
| 1695 | + 'add_meta_name_twitter:description' => 1, | |
| 1696 | + 'add_meta_name_twitter:image' => 1, | |
| 1697 | + 'add_meta_name_twitter:image:width' => 1, | |
| 1698 | + 'add_meta_name_twitter:image:height' => 1, | |
| 1699 | + 'add_meta_name_twitter:image:alt' => 1, | |
| 1700 | + 'add_meta_name_twitter:player' => 1, | |
| 1701 | + 'add_meta_name_twitter:player:stream' => 1, | |
| 1702 | + 'add_meta_name_twitter:player:stream:content_type' => 1, | |
| 1703 | + 'add_meta_name_twitter:player:width' => 1, | |
| 1704 | + 'add_meta_name_twitter:player:height' => 1, | |
| 1705 | + 'add_meta_name_twitter:app:name:iphone' => 1, | |
| 1706 | + 'add_meta_name_twitter:app:id:iphone' => 1, | |
| 1707 | + 'add_meta_name_twitter:app:url:iphone' => 1, | |
| 1708 | + 'add_meta_name_twitter:app:name:ipad' => 1, | |
| 1709 | + 'add_meta_name_twitter:app:id:ipad' => 1, | |
| 1710 | + 'add_meta_name_twitter:app:url:ipad' => 1, | |
| 1711 | + 'add_meta_name_twitter:app:name:googleplay' => 1, | |
| 1712 | + 'add_meta_name_twitter:app:id:googleplay' => 1, | |
| 1713 | + 'add_meta_name_twitter:app:url:googleplay' => 1, | |
| 1714 | + 'add_meta_name_twitter:label1' => 1, | |
| 1715 | + 'add_meta_name_twitter:data1' => 1, | |
| 1716 | + 'add_meta_name_twitter:label2' => 1, | |
| 1717 | + 'add_meta_name_twitter:data2' => 1, | |
| 1718 | + 'add_meta_name_yandex-verification' => 0, // Yandex Website Verification ID. | |
| 1719 | + | |
| 1720 | + /* | |
| 1721 | + * Advanced Settings > Plugin Admin. | |
| 1722 | + */ | |
| 1723 | + 'plugin_clean_on_uninstall' => 0, // Remove Settings on Uninstall. | |
| 1724 | + 'plugin_schema_json_min' => 0, // Minimize Schema JSON-LD. | |
| 1725 | + 'plugin_load_mofiles' => 0, // Use Plugin MO Translations. | |
| 1726 | + 'plugin_debug_html' => 0, // Add Debug Messages to HTML. | |
| 1727 | + 'plugin_cache_disable' => 0, // Disable Cache for Debugging. | |
| 1728 | + | |
| 1729 | + /* | |
| 1730 | + * Advanced Settings > Integration. | |
| 1731 | + */ | |
| 1732 | + 'plugin_title_tag' => 'seo_title', // Webpage Title Tag. | |
| 1733 | + 'plugin_filter_content' => 0, // Use Filtered Content. | |
| 1734 | + 'plugin_filter_excerpt' => 0, // Use Filtered Excerpt. | |
| 1735 | + 'plugin_page_excerpt' => 0, // Enable Excerpt for Pages. | |
| 1736 | + 'plugin_page_tags' => 0, // Enable Tags for Pages. | |
| 1737 | + 'plugin_new_user_is_person' => 0, // Add Person Role for New Users. | |
| 1738 | + 'plugin_inherit_featured' => 1, // Inherit Featured Image. | |
| 1739 | + 'plugin_inherit_images' => 1, // Inherit Custom Images. | |
| 1740 | + 'plugin_attached_images' => 1, // Consider Attached Images. | |
| 1741 | + 'plugin_content_images' => 0, // Consider Content Images. | |
| 1742 | + 'plugin_check_img_dims' => 1, // Image Dimension Checks. | |
| 1743 | + 'plugin_prevent_thumb_conflicts' => 0, // Prevent Thumbnail Conflicts. | |
| 1744 | + 'plugin_upscale_images' => 1, // Upscale Media Library Images. | |
| 1745 | + 'plugin_upscale_pct_max' => 20, // Maximum Image Upscale Percent. | |
| 1746 | + | |
| 1747 | + /* | |
| 1748 | + * Advanced Settings > Integration > Plugin and Theme Integration. | |
| 1749 | + */ | |
| 1750 | + 'plugin_speakable_css_csv' => '', // Speakable CSS Selectors. | |
| 1751 | + 'plugin_check_head' => 1, // Check for Duplicate Meta Tags. | |
| 1752 | + 'plugin_page_cache_active' => 0, // Cache Plugin or Service is Active. | |
| 1753 | + 'plugin_product_include_vat' => 0, // Include VAT in Product Prices. | |
| 1754 | + 'plugin_import_aioseop_meta' => 0, // Import All in One SEO Pack Metadata. | |
| 1755 | + 'plugin_import_rankmath_meta' => 0, // Import Rank Math SEO Metadata. | |
| 1756 | + 'plugin_import_seoframework_meta' => 0, // Import The SEO Framework Metadata. | |
| 1757 | + 'plugin_import_wpmetaseo_meta' => 0, // Import WP Meta SEO Metadata. | |
| 1758 | + 'plugin_import_wpseo_meta' => 0, // Import Yoast SEO Metadata. | |
| 1759 | + 'plugin_import_wpseo_blocks' => 0, // Import Yoast SEO Block Attrs. | |
| 1760 | + | |
| 1761 | + /* | |
| 1762 | + * Advanced Settings > Default Text. | |
| 1763 | + * | |
| 1764 | + * See WpssoOptions->get_defaults() | |
| 1765 | + * See WpssoOptions->get_text() | |
| 1766 | + * | |
| 1767 | + * Advanced Settings > Interface. | |
| 1768 | + */ | |
| 1769 | + 'plugin_show_opts' => 'basic', // Options to Show by Default. | |
| 1770 | + 'plugin_og_types_select_format' => 'name', // Open Graph Type Select Format. | |
| 1771 | + 'plugin_schema_types_select_format' => 'name', // Schema Type Select Format. | |
| 1772 | + 'plugin_add_toolbar_validate' => 1, // Show Validators Toolbar Menu. | |
| 1773 | + 'plugin_add_submenu_essential' => 1, | |
| 1774 | + 'plugin_add_submenu_general' => 1, | |
| 1775 | + 'plugin_add_submenu_advanced' => 1, | |
| 1776 | + 'plugin_add_submenu_licenses' => 1, | |
| 1777 | + 'plugin_add_submenu_addons' => 1, | |
| 1778 | + 'plugin_add_submenu_tools' => 1, | |
| 1779 | + 'plugin_add_submenu_setup' => 1, | |
| 1780 | + 'plugin_add_submenu_debug' => 1, | |
| 1781 | + 'plugin_add_to_attachment' => 1, | |
| 1782 | + 'plugin_add_to_download' => 1, // For Easy Digital Downloads. | |
| 1783 | + 'plugin_add_to_page' => 1, | |
| 1784 | + 'plugin_add_to_post' => 1, | |
| 1785 | + 'plugin_add_to_product' => 1, // For WooCommerce and other e-commerce plugins. | |
| 1786 | + 'plugin_add_to_reply' => 0, // For Bbpress | |
| 1787 | + 'plugin_add_to_tax_category' => 1, | |
| 1788 | + 'plugin_add_to_tax_faq_category' => 1, | |
| 1789 | + 'plugin_add_to_tax_link_category' => 1, | |
| 1790 | + 'plugin_add_to_tax_post_tag' => 1, | |
| 1791 | + 'plugin_add_to_tax_product_brand' => 1, // For WooCommerce Brands. | |
| 1792 | + 'plugin_add_to_tax_product_cat' => 1, // For WooCommerce. | |
| 1793 | + 'plugin_add_to_tax_product_tag' => 1, // For WooCommerce. | |
| 1794 | + 'plugin_add_to_tax_pwb-brand' => 1, // For Perfect WooCommerce Brands Add-on. | |
| 1795 | + 'plugin_add_to_tax_tribe_events_cat' => 0, // For The Events Calendar. | |
| 1796 | + 'plugin_add_to_tax_yith_product_brand' => 1, // For YITH WooCommerce Brands Add-on. | |
| 1797 | + 'plugin_add_to_topic' => 0, // For Bbpress | |
| 1798 | + 'plugin_add_to_tribe_events' => 1, // For The Events Calendar. | |
| 1799 | + 'plugin_add_to_tribe-ea-record' => 1, // For The Events Calendar. | |
| 1800 | + 'plugin_add_to_user_page' => 1, | |
| 1801 | + | |
| 1802 | + /* | |
| 1803 | + * Advanced Settings > Interface > WP List Table Columns: Open Graph Description. | |
| 1804 | + */ | |
| 1805 | + 'plugin_og_desc_col_attachment' => 0, | |
| 1806 | + 'plugin_og_desc_col_download' => 0, // For Easy Digital Downloads. | |
| 1807 | + 'plugin_og_desc_col_page' => 0, | |
| 1808 | + 'plugin_og_desc_col_post' => 0, | |
| 1809 | + 'plugin_og_desc_col_product' => 0, // For WooCommerce. | |
| 1810 | + 'plugin_og_desc_col_tax_category' => 0, | |
| 1811 | + 'plugin_og_desc_col_tax_faq_category' => 0, | |
| 1812 | + 'plugin_og_desc_col_tax_link_category' => 0, | |
| 1813 | + 'plugin_og_desc_col_tax_post_tag' => 0, | |
| 1814 | + 'plugin_og_desc_col_tax_product_cat' => 0, // For WooCommerce. | |
| 1815 | + 'plugin_og_desc_col_tax_product_tag' => 0, // For WooCommerce. | |
| 1816 | + 'plugin_og_desc_col_tax_tribe_events_cat' => 0, // For The Events Calendar. | |
| 1817 | + 'plugin_og_desc_col_user_page' => 0, | |
| 1818 | + | |
| 1819 | + /* | |
| 1820 | + * Advanced Settings > Interface > WP List Table Columns: Open Graph Image. | |
| 1821 | + */ | |
| 1822 | + 'plugin_og_img_col_attachment' => 0, | |
| 1823 | + 'plugin_og_img_col_download' => 0, // For Easy Digital Downloads. | |
| 1824 | + 'plugin_og_img_col_page' => 0, | |
| 1825 | + 'plugin_og_img_col_post' => 0, | |
| 1826 | + 'plugin_og_img_col_product' => 0, // For WooCommerce. | |
| 1827 | + 'plugin_og_img_col_tax_category' => 0, | |
| 1828 | + 'plugin_og_img_col_tax_faq_category' => 0, | |
| 1829 | + 'plugin_og_img_col_tax_link_category' => 0, | |
| 1830 | + 'plugin_og_img_col_tax_post_tag' => 0, | |
| 1831 | + 'plugin_og_img_col_tax_product_cat' => 0, // For WooCommerce. | |
| 1832 | + 'plugin_og_img_col_tax_product_tag' => 0, // For WooCommerce. | |
| 1833 | + 'plugin_og_img_col_tax_tribe_events_cat' => 0, // For The Events Calendar. | |
| 1834 | + 'plugin_og_img_col_user_page' => 0, | |
| 1835 | + | |
| 1836 | + /* | |
| 1837 | + * Advanced Settings > Interface > WP List Table Columns: Open Graph Locale. | |
| 1838 | + */ | |
| 1839 | + 'plugin_schema_lang_col_attachment' => 0, | |
| 1840 | + 'plugin_schema_lang_col_download' => 0, // For Easy Digital Downloads. | |
| 1841 | + 'plugin_schema_lang_col_page' => 0, | |
| 1842 | + 'plugin_schema_lang_col_post' => 0, | |
| 1843 | + 'plugin_schema_lang_col_product' => 0, // For WooCommerce. | |
| 1844 | + 'plugin_schema_lang_col_tax_category' => 0, | |
| 1845 | + 'plugin_schema_lang_col_tax_faq_category' => 0, | |
| 1846 | + 'plugin_schema_lang_col_tax_link_category' => 0, | |
| 1847 | + 'plugin_schema_lang_col_tax_post_tag' => 0, | |
| 1848 | + 'plugin_schema_lang_col_tax_product_cat' => 0, // For WooCommerce. | |
| 1849 | + 'plugin_schema_lang_col_tax_product_tag' => 0, // For WooCommerce. | |
| 1850 | + 'plugin_schema_lang_col_tax_tribe_events_cat' => 0, // For The Events Calendar. | |
| 1851 | + 'plugin_schema_lang_col_user_page' => 0, | |
| 1852 | + | |
| 1853 | + /* | |
| 1854 | + * Advanced Settings > Interface > WP List Table Columns: Schema Type. | |
| 1855 | + */ | |
| 1856 | + 'plugin_schema_type_name_col_attachment' => 0, | |
| 1857 | + 'plugin_schema_type_name_col_download' => 0, // For Easy Digital Downloads. | |
| 1858 | + 'plugin_schema_type_name_col_page' => 0, | |
| 1859 | + 'plugin_schema_type_name_col_post' => 0, | |
| 1860 | + 'plugin_schema_type_name_col_product' => 0, // For WooCommerce. | |
| 1861 | + 'plugin_schema_type_name_col_tax_category' => 0, | |
| 1862 | + 'plugin_schema_type_name_col_tax_faq_category' => 0, | |
| 1863 | + 'plugin_schema_type_name_col_tax_link_category' => 0, | |
| 1864 | + 'plugin_schema_type_name_col_tax_post_tag' => 0, | |
| 1865 | + 'plugin_schema_type_name_col_tax_product_cat' => 0, // For WooCommerce. | |
| 1866 | + 'plugin_schema_type_name_col_tax_product_tag' => 0, // For WooCommerce. | |
| 1867 | + 'plugin_schema_type_name_col_tax_tribe_events_cat' => 0, // For The Events Calendar. | |
| 1868 | + 'plugin_schema_type_name_col_user_page' => 0, | |
| 1869 | + | |
| 1870 | + /* | |
| 1871 | + * Advanced Settings > Service APIs > Media Services. | |
| 1872 | + */ | |
| 1873 | + 'plugin_gravatar_image' => 1, // Gravatar is Default Author Image. | |
| 1874 | + 'plugin_gravatar_size' => 1200, // Gravatar Image Size. | |
| 1875 | + 'plugin_media_facebook' => 1, // Detect Embedded Media: Facebook Videos. | |
| 1876 | + 'plugin_media_slideshare' => 1, // Detect Embedded Media: Slideshare Presentations. | |
| 1877 | + 'plugin_media_soundcloud' => 1, // Detect Embedded Media: Soundcloud Tracks. | |
| 1878 | + 'plugin_media_vimeo' => 1, // Detect Embedded Media: Vimeo Videos. | |
| 1879 | + 'plugin_media_wistia' => 1, // Detect Embedded Media: Wistia Videos. | |
| 1880 | + 'plugin_media_wpvideoblock' => 1, // Detect Embedded Media: WP Media Library Video Blocks. | |
| 1881 | + 'plugin_media_wpvideoshortcode' => 1, // Detect Embedded Media: WP Media Library Video Shortcodes. | |
| 1882 | + 'plugin_media_youtube' => 1, // Detect Embedded Media: Youtube Videos and Playlists. | |
| 1883 | + | |
| 1884 | + /* | |
| 1885 | + * Advanced Settings > Service APIs > Shortening Services. | |
| 1886 | + */ | |
| 1887 | + 'plugin_shortener' => 'none', // URL Shortening Service. | |
| 1888 | + 'plugin_min_shorten' => 23, // Minimum URL Length to Shorten. | |
| 1889 | + 'plugin_wp_shortlink' => 1, // Use Short URL for WP Shortlink. | |
| 1890 | + 'plugin_bitly_access_token' => '', // Bitly Access Token. | |
| 1891 | + 'plugin_bitly_domain' => '', // Bitly Short Domain (Optional). | |
| 1892 | + 'plugin_bitly_group_name' => '', // Bitly Group Name (Optional). | |
| 1893 | + 'plugin_dlmyapp_api_key' => '', // DLMY.App API Key. | |
| 1894 | + 'plugin_owly_api_key' => '', // Ow.ly API Key. | |
| 1895 | + 'plugin_yourls_api_url' => '', // YOURLS API URL. | |
| 1896 | + 'plugin_yourls_username' => '', // YOURLS Username. | |
| 1897 | + 'plugin_yourls_password' => '', // YOURLS Password. | |
| 1898 | + 'plugin_yourls_token' => '', // YOURLS Token. | |
| 1899 | + | |
| 1900 | + /* | |
| 1901 | + * Advanced Settings > Service APIs > Ratings and Reviews. | |
| 1902 | + */ | |
| 1903 | + 'plugin_ratings_reviews_svc' => 'none', // Ratings and Reviews Service. | |
| 1904 | + 'plugin_ratings_reviews_num_max' => 100, // Maximum Number of Reviews. | |
| 1905 | + 'plugin_ratings_reviews_months_max' => 60, // Maximum Age of Reviews. | |
| 1906 | + 'plugin_ratings_reviews_for_download' => 1, // For Easy Digital Downloads. | |
| 1907 | + 'plugin_ratings_reviews_for_product' => 1, // For WooCommerce. | |
| 1908 | + 'plugin_judgeme_shop_domain' => '', // Judge.me Shop Domain. | |
| 1909 | + 'plugin_judgeme_shop_token' => '', // Judge.me Shop Token. | |
| 1910 | + 'plugin_shopperapproved_site_id' => '', // Shopper Approved Site ID. | |
| 1911 | + 'plugin_shopperapproved_token' => '', // Shopper Approved API Token. | |
| 1912 | + 'plugin_stamped_store_hash' => '', // Stamped Store Hash. | |
| 1913 | + 'plugin_stamped_key_public' => '', // Stamped API Key Public. | |
| 1914 | + | |
| 1915 | + /* | |
| 1916 | + * Advanced Settings > Contact Fields > Custom Contacts. | |
| 1917 | + */ | |
| 1918 | + 'plugin_cm_behance_name' => 'behance', | |
| 1919 | + 'plugin_cm_behance_label' => 'Behance Profile URL', | |
| 1920 | + 'plugin_cm_behance_enabled' => 1, | |
| 1921 | + 'plugin_cm_fb_name' => 'facebook', | |
| 1922 | + 'plugin_cm_fb_label' => 'Facebook User URL', | |
| 1923 | + 'plugin_cm_fb_enabled' => 1, | |
| 1924 | + 'plugin_cm_instagram_name' => 'instagram', | |
| 1925 | + 'plugin_cm_instagram_label' => 'Instagram URL', | |
| 1926 | + 'plugin_cm_instagram_enabled' => 1, | |
| 1927 | + 'plugin_cm_linkedin_name' => 'linkedin', | |
| 1928 | + 'plugin_cm_linkedin_label' => 'LinkedIn URL', | |
| 1929 | + 'plugin_cm_linkedin_enabled' => 1, | |
| 1930 | + 'plugin_cm_medium_name' => 'medium', | |
| 1931 | + 'plugin_cm_medium_label' => 'Medium URL', | |
| 1932 | + 'plugin_cm_medium_enabled' => 1, | |
| 1933 | + 'plugin_cm_myspace_name' => 'myspace', | |
| 1934 | + 'plugin_cm_myspace_label' => 'Myspace URL', | |
| 1935 | + 'plugin_cm_myspace_enabled' => 1, | |
| 1936 | + 'plugin_cm_pin_name' => 'pinterest', | |
| 1937 | + 'plugin_cm_pin_label' => 'Pinterest URL', | |
| 1938 | + 'plugin_cm_pin_enabled' => 1, | |
| 1939 | + 'plugin_cm_sc_name' => 'soundcloud', | |
| 1940 | + 'plugin_cm_sc_label' => 'Soundcloud URL', | |
| 1941 | + 'plugin_cm_sc_enabled' => 1, | |
| 1942 | + 'plugin_cm_skype_name' => 'skype', | |
| 1943 | + 'plugin_cm_skype_label' => 'Skype Username', | |
| 1944 | + 'plugin_cm_skype_enabled' => 1, | |
| 1945 | + 'plugin_cm_tiktok_name' => 'tiktok', | |
| 1946 | + 'plugin_cm_tiktok_label' => 'TikTok URL', | |
| 1947 | + 'plugin_cm_tiktok_enabled' => 1, | |
| 1948 | + 'plugin_cm_tumblr_name' => 'tumblr', | |
| 1949 | + 'plugin_cm_tumblr_label' => 'Tumblr URL', | |
| 1950 | + 'plugin_cm_tumblr_enabled' => 1, | |
| 1951 | + 'plugin_cm_wikipedia_name' => 'wikipedia', | |
| 1952 | + 'plugin_cm_wikipedia_label' => 'Wikipedia Page URL', | |
| 1953 | + 'plugin_cm_wikipedia_enabled' => 1, | |
| 1954 | + 'plugin_cm_twitter_name' => 'twitter', | |
| 1955 | + 'plugin_cm_twitter_label' => 'X (Twitter) @username', | |
| 1956 | + 'plugin_cm_twitter_enabled' => 1, | |
| 1957 | + 'plugin_cm_yt_name' => 'youtube', | |
| 1958 | + 'plugin_cm_yt_label' => 'YouTube Channel URL', | |
| 1959 | + 'plugin_cm_yt_enabled' => 1, | |
| 1960 | + | |
| 1961 | + /* | |
| 1962 | + * Advanced Settings > Contact Fields > Default Contacts. | |
| 1963 | + */ | |
| 1964 | + 'wp_cm_aim_name' => 'aim', | |
| 1965 | + 'wp_cm_aim_label' => 'AIM', | |
| 1966 | + 'wp_cm_aim_enabled' => 1, | |
| 1967 | + 'wp_cm_jabber_name' => 'jabber', | |
| 1968 | + 'wp_cm_jabber_label' => 'Google Talk', | |
| 1969 | + 'wp_cm_jabber_enabled' => 1, | |
| 1970 | + 'wp_cm_yim_name' => 'yim', | |
| 1971 | + 'wp_cm_yim_label' => 'Yahoo Messenger', | |
| 1972 | + 'wp_cm_yim_enabled' => 1, | |
| 1973 | + | |
| 1974 | + /* | |
| 1975 | + * Advanced Settings > About the User. | |
| 1976 | + */ | |
| 1977 | + 'plugin_user_about_job_title' => 1, // Job Title. | |
| 1978 | + 'plugin_user_about_honorific_prefix' => 1, // Honorific Prefix. | |
| 1979 | + 'plugin_user_about_honorific_suffix' => 1, // Honorific Suffix. | |
| 1980 | + 'plugin_user_about_additional_name' => 1, // Middle or Additional Name. | |
| 1981 | + 'plugin_user_about_award' => 1, // Awards. | |
| 1982 | + | |
| 1983 | + /* | |
| 1984 | + * Advanced Settings > Attributes and Metadata > Product Attributes. | |
| 1985 | + */ | |
| 1986 | + 'plugin_attr_book_author_name' => '', // Book Author Name. | |
| 1987 | + 'plugin_attr_book_isbn' => '', // Book ISBN Attribute. | |
| 1988 | + 'plugin_attr_product_adult_type' => 'Adult Type', // Adult Type Attribute. | |
| 1989 | + 'plugin_attr_product_adult_type#fr_BE' => 'Type adulte', | |
| 1990 | + 'plugin_attr_product_adult_type#fr_CA' => 'Type adulte', | |
| 1991 | + 'plugin_attr_product_adult_type#fr_FR' => 'Type adulte', | |
| 1992 | + 'plugin_attr_product_age_group' => 'Age Group', // Age Group Attribute. | |
| 1993 | + 'plugin_attr_product_age_group#fr_BE' => 'Groupe d\'âge', | |
| 1994 | + 'plugin_attr_product_age_group#fr_CA' => 'Groupe d\'âge', | |
| 1995 | + 'plugin_attr_product_age_group#fr_FR' => 'Groupe d\'âge', | |
| 1996 | + 'plugin_attr_product_brand' => 'Brand', // Brand Attribute. | |
| 1997 | + 'plugin_attr_product_brand#fr_BE' => 'Marque', | |
| 1998 | + 'plugin_attr_product_brand#fr_CA' => 'Marque', | |
| 1999 | + 'plugin_attr_product_brand#fr_FR' => 'Marque', | |
| 2000 | + 'plugin_attr_product_color' => 'Color', // Color Attribute. | |
| 2001 | + 'plugin_attr_product_color#fr_BE' => 'Couleur', | |
| 2002 | + 'plugin_attr_product_color#fr_CA' => 'Couleur', | |
| 2003 | + 'plugin_attr_product_color#fr_FR' => 'Couleur', | |
| 2004 | + 'plugin_attr_product_condition' => 'Condition', // Condition Attribute. | |
| 2005 | + 'plugin_attr_product_condition#fr_BE' => 'État', | |
| 2006 | + 'plugin_attr_product_condition#fr_CA' => 'État', | |
| 2007 | + 'plugin_attr_product_condition#fr_FR' => 'État', | |
| 2008 | + 'plugin_attr_product_energy_efficiency' => 'Energy Rating', // Energy Rating Attribute. | |
| 2009 | + 'plugin_attr_product_energy_efficiency#fr_BE' => 'Classe énergétique', | |
| 2010 | + 'plugin_attr_product_energy_efficiency#fr_CA' => 'Classe énergétique', | |
| 2011 | + 'plugin_attr_product_energy_efficiency#fr_FR' => 'Classe énergétique', | |
| 2012 | + 'plugin_attr_product_fluid_volume_value' => '', // Fluid Volume Attribute. | |
| 2013 | + 'plugin_attr_product_gtin14' => '', // GTIN-14 Attribute. | |
| 2014 | + 'plugin_attr_product_gtin13' => '', // GTIN-13 (EAN) Attribute. | |
| 2015 | + 'plugin_attr_product_gtin12' => '', // GTIN-12 (UPC) Attribute. | |
| 2016 | + 'plugin_attr_product_gtin8' => '', // GTIN-8 Attribute. | |
| 2017 | + 'plugin_attr_product_gtin' => '', // GTIN Attribute. | |
| 2018 | + 'plugin_attr_product_height_value' => '', // Net Height Attribute. | |
| 2019 | + 'plugin_attr_product_isbn' => '', // ISBN Attribute. | |
| 2020 | + 'plugin_attr_product_length_value' => '', // Net Len. / Depth Attribute. | |
| 2021 | + 'plugin_attr_product_material' => 'Material', // Material Attribute. | |
| 2022 | + 'plugin_attr_product_material#fr_BE' => 'Matériel', | |
| 2023 | + 'plugin_attr_product_material#fr_CA' => 'Matériel', | |
| 2024 | + 'plugin_attr_product_material#fr_FR' => 'Matériel', | |
| 2025 | + 'plugin_attr_product_mfr_part_no' => '', // MPN Attribute. | |
| 2026 | + 'plugin_attr_product_pattern' => 'Pattern', // Pattern Attribute. | |
| 2027 | + 'plugin_attr_product_pattern#fr_BE' => 'Motif', | |
| 2028 | + 'plugin_attr_product_pattern#fr_CA' => 'Motif', | |
| 2029 | + 'plugin_attr_product_pattern#fr_FR' => 'Motif', | |
| 2030 | + 'plugin_attr_product_size' => 'Size', // Size Attribute. | |
| 2031 | + 'plugin_attr_product_size#fr_BE' => 'Taille', | |
| 2032 | + 'plugin_attr_product_size#fr_CA' => 'Taille', | |
| 2033 | + 'plugin_attr_product_size#fr_FR' => 'Taille', | |
| 2034 | + 'plugin_attr_product_size_group' => 'Size Group', // Size Group Attribute. | |
| 2035 | + 'plugin_attr_product_size_group#fr_BE' => 'Groupe de taille', | |
| 2036 | + 'plugin_attr_product_size_group#fr_CA' => 'Groupe de taille', | |
| 2037 | + 'plugin_attr_product_size_group#fr_FR' => 'Groupe de taille', | |
| 2038 | + 'plugin_attr_product_size_system' => 'Size System', // Size System Attribute. | |
| 2039 | + 'plugin_attr_product_size_system#fr_BE' => 'Système de taille', | |
| 2040 | + 'plugin_attr_product_size_system#fr_CA' => 'Système de taille', | |
| 2041 | + 'plugin_attr_product_size_system#fr_FR' => 'Système de taille', | |
| 2042 | + 'plugin_attr_product_target_gender' => 'Gender', // Target Gender Attribute. | |
| 2043 | + 'plugin_attr_product_target_gender#fr_BE' => 'Sexe', | |
| 2044 | + 'plugin_attr_product_target_gender#fr_CA' => 'Sexe', | |
| 2045 | + 'plugin_attr_product_target_gender#fr_FR' => 'Sexe', | |
| 2046 | + 'plugin_attr_product_weight_value' => '', // Net Weight Attribute. | |
| 2047 | + 'plugin_attr_product_width_value' => '', // Net Width Attribute. | |
| 2048 | + | |
| 2049 | + /* | |
| 2050 | + * Advanced Settings > Attributes and Metadata > Custom Fields. | |
| 2051 | + */ | |
| 2052 | + 'plugin_cf_addl_type_urls' => '', // Microdata Type URLs Custom Field. | |
| 2053 | + 'plugin_cf_book_author_name' => '', // Book Author Name Custom Field. | |
| 2054 | + 'plugin_cf_book_isbn' => '', // Book ISBN Custom Field. | |
| 2055 | + 'plugin_cf_img_url' => '', // Image URL Custom Field. | |
| 2056 | + 'plugin_cf_product_adult_type' => '', // Product Adult Type Custom Field. | |
| 2057 | + 'plugin_cf_product_age_group' => '', // Product Age Group Custom Field. | |
| 2058 | + 'plugin_cf_product_avail' => '', // Product Availability Custom Field. | |
| 2059 | + 'plugin_cf_product_brand' => '', // Product Brand Custom Field. | |
| 2060 | + 'plugin_cf_product_category' => '', // Product Google Cat. ID Custom Field. | |
| 2061 | + 'plugin_cf_product_color' => '', // Product Color Custom Field. | |
| 2062 | + 'plugin_cf_product_condition' => '', // Product Condition Custom Field. | |
| 2063 | + 'plugin_cf_product_currency' => '', // Product Currency Custom Field. | |
| 2064 | + 'plugin_cf_product_energy_efficiency' => '', // Product Energy Rating Custom Field. | |
| 2065 | + 'plugin_cf_product_fluid_volume_value' => '', // Product Fluid Volume Custom Field. | |
| 2066 | + 'plugin_cf_product_gtin14' => '', // Product GTIN-14 Custom Field. | |
| 2067 | + 'plugin_cf_product_gtin13' => '', // Product GTIN-13 (EAN) Custom Field. | |
| 2068 | + 'plugin_cf_product_gtin12' => '', // Product GTIN-12 (UPC) Custom Field. | |
| 2069 | + 'plugin_cf_product_gtin8' => '', // Product GTIN-8 Custom Field. | |
| 2070 | + 'plugin_cf_product_gtin' => '_global_unique_id', // Product GTIN Custom Field. | |
| 2071 | + 'plugin_cf_product_isbn' => '', // Product ISBN Custom Field. | |
| 2072 | + 'plugin_cf_product_height_value' => '', // Product Net Height Custom Field. | |
| 2073 | + 'plugin_cf_product_length_value' => '', // Product Net Len. / Depth Custom Field. | |
| 2074 | + 'plugin_cf_product_material' => '', // Product Material Custom Field. | |
| 2075 | + 'plugin_cf_product_mfr_part_no' => '', // Product MPN Custom Field. | |
| 2076 | + 'plugin_cf_product_min_advert_price' => '', // Product Min Advert Price Custom Field. | |
| 2077 | + 'plugin_cf_product_pattern' => '', // Product Pattern Custom Field. | |
| 2078 | + 'plugin_cf_product_price' => '', // Product Price Custom Field. | |
| 2079 | + 'plugin_cf_product_price_type' => '', // Product Price Type Custom Field. | |
| 2080 | + 'plugin_cf_product_retailer_part_no' => '', // Product SKU Custom Field. | |
| 2081 | + 'plugin_cf_product_shipping_height_value' => '', // Product Shipping Height Custom Field. | |
| 2082 | + 'plugin_cf_product_shipping_length_value' => '', // Product Shipping Length Custom Field. | |
| 2083 | + 'plugin_cf_product_shipping_weight_value' => '', // Product Shipping Weight Custom Field. | |
| 2084 | + 'plugin_cf_product_shipping_width_value' => '', // Product Shipping Width Custom Field. | |
| 2085 | + 'plugin_cf_product_size' => '', // Product Size Custom Field. | |
| 2086 | + 'plugin_cf_product_size_group' => '', // Product Size Group Custom Field. | |
| 2087 | + 'plugin_cf_product_size_system' => '', // Product Size System Custom Field. | |
| 2088 | + 'plugin_cf_product_target_gender' => '', // Product Target Gender Custom Field. | |
| 2089 | + 'plugin_cf_product_weight_value' => '', // Product Net Weight Custom Field. | |
| 2090 | + 'plugin_cf_product_width_value' => '', // Product Net Width Custom Field. | |
| 2091 | + 'plugin_cf_review_item_name' => '', // Review Subject Name Custom Field. | |
| 2092 | + 'plugin_cf_review_item_desc' => '', // Review Subject Desc Custom Field. | |
| 2093 | + 'plugin_cf_review_rating' => '', // Review Rating Custom Field. | |
| 2094 | + 'plugin_cf_review_rating_alt_name' => '', // Review Rating Alt Name Custom Field. | |
| 2095 | + 'plugin_cf_sameas_urls' => '', // Same-As URLs Custom Field. | |
| 2096 | + 'plugin_cf_vid_embed' => '', // Video Embed HTML Custom Field. | |
| 2097 | + 'plugin_cf_vid_url' => '', // Video URL Custom Field. | |
| 2098 | + | |
| 2099 | + /* | |
| 2100 | + * Premium Licenses. | |
| 2101 | + */ | |
| 2102 | + 'plugin_wpsso_tid' => '', | |
| 2103 | + | |
| 2104 | + ), // End of 'defaults' array. | |
| 2105 | + | |
| 2106 | + /* | |
| 2107 | + * Multisite options. | |
| 2108 | + * | |
| 2109 | + * Automatically includes all advanced plugin options. | |
| 2110 | + * | |
| 2111 | + * See the WpssoOptions->get_site_defaults() method. | |
| 2112 | + */ | |
| 2113 | + 'site_defaults' => array( | |
| 2114 | + 'checksum' => '', // Checksum of plugin versions. | |
| 2115 | + 'opt_checksum' => '', // Checksum of option versions. | |
| 2116 | + 'opt_versions' => array(), | |
| 2117 | + ), | |
| 2118 | + | |
| 2119 | + /* | |
| 2120 | + * Contact method and social options prefix. | |
| 2121 | + * | |
| 2122 | + * The options prefix is used for contact method options (for example, 'plugin_cm_fb_enabled') and | |
| 2123 | + * social sharing buttons options (for example, 'fb_utm_source'). | |
| 2124 | + */ | |
| 2125 | + 'cm_prefix' => array( | |
| 2126 | + 'behance' => 'behance', | |
| 2127 | + 'email' => 'email', | |
| 2128 | + 'facebook' => 'fb', | |
| 2129 | + 'twitter' => 'twitter', | |
| 2130 | + 'instagram' => 'instagram', | |
| 2131 | + 'linkedin' => 'linkedin', | |
| 2132 | + 'medium' => 'medium', | |
| 2133 | + 'myspace' => 'myspace', | |
| 2134 | + 'pinterest' => 'pin', | |
| 2135 | + 'pocket' => 'pocket', | |
| 2136 | + 'buffer' => 'buffer', | |
| 2137 | + 'reddit' => 'reddit', | |
| 2138 | + 'managewp' => 'managewp', | |
| 2139 | + 'soundcloud' => 'sc', | |
| 2140 | + 'tiktok' => 'tiktok', | |
| 2141 | + 'tumblr' => 'tumblr', | |
| 2142 | + 'skype' => 'skype', | |
| 2143 | + 'vk' => 'vk', | |
| 2144 | + 'whatsapp' => 'wa', | |
| 2145 | + 'wikipedia' => 'wikipedia', | |
| 2146 | + 'youtube' => 'yt', | |
| 2147 | + ), | |
| 2148 | + | |
| 2149 | + /* | |
| 2150 | + * WpssoConfig::$cf[ 'opt' ][ 'attr_md_index' ] | |
| 2151 | + * | |
| 2152 | + * Provides a key index for product attributes to meta data options. | |
| 2153 | + */ | |
| 2154 | + 'attr_md_index' => array( | |
| 2155 | + 'plugin_attr_book_author_name' => 'schema_book_author_name', // Book Author Name (note schema prefix). | |
| 2156 | + 'plugin_attr_book_isbn' => 'schema_book_isbn', // Book ISBN (note schema prefix). | |
| 2157 | + 'plugin_attr_product_adult_type' => 'product_adult_type', | |
| 2158 | + 'plugin_attr_product_age_group' => 'product_age_group', | |
| 2159 | + 'plugin_attr_product_brand' => 'product_brand', | |
| 2160 | + 'plugin_attr_product_color' => 'product_color', | |
| 2161 | + 'plugin_attr_product_condition' => 'product_condition', | |
| 2162 | + 'plugin_attr_product_energy_efficiency' => 'product_energy_efficiency', | |
| 2163 | + 'plugin_attr_product_fluid_volume_value' => 'product_fluid_volume_value', | |
| 2164 | + 'plugin_attr_product_gtin14' => 'product_gtin14', | |
| 2165 | + 'plugin_attr_product_gtin13' => 'product_gtin13', | |
| 2166 | + 'plugin_attr_product_gtin12' => 'product_gtin12', | |
| 2167 | + 'plugin_attr_product_gtin8' => 'product_gtin8', | |
| 2168 | + 'plugin_attr_product_gtin' => 'product_gtin', | |
| 2169 | + 'plugin_attr_product_height_value' => 'product_height_value', | |
| 2170 | + 'plugin_attr_product_isbn' => 'product_isbn', | |
| 2171 | + 'plugin_attr_product_length_value' => 'product_length_value', | |
| 2172 | + 'plugin_attr_product_material' => 'product_material', | |
| 2173 | + 'plugin_attr_product_mfr_part_no' => 'product_mfr_part_no', | |
| 2174 | + 'plugin_attr_product_pattern' => 'product_pattern', | |
| 2175 | + 'plugin_attr_product_size' => 'product_size', | |
| 2176 | + 'plugin_attr_product_size_group' => 'product_size_group', | |
| 2177 | + 'plugin_attr_product_size_system' => 'product_size_system', | |
| 2178 | + 'plugin_attr_product_target_gender' => 'product_target_gender', | |
| 2179 | + 'plugin_attr_product_weight_value' => 'product_weight_value', | |
| 2180 | + 'plugin_attr_product_width_value' => 'product_width_value', | |
| 2181 | + ), | |
| 2182 | + | |
| 2183 | + /* | |
| 2184 | + * WpssoConfig::$cf[ 'opt' ][ 'cf_md_index' ] | |
| 2185 | + * | |
| 2186 | + * Provides a key index for custom fields to meta data options. | |
| 2187 | + */ | |
| 2188 | + 'cf_md_index' => array( | |
| 2189 | + 'plugin_cf_addl_type_urls' => 'schema_addl_type_url', // Microdata Type URLs Custom Field. | |
| 2190 | + 'plugin_cf_book_author_name' => 'schema_book_author_name', // Book Author Name (note schema prefix). | |
| 2191 | + 'plugin_cf_book_isbn' => 'schema_book_isbn', // Book ISBN (note schema prefix). | |
| 2192 | + 'plugin_cf_img_url' => 'og_img_url', | |
| 2193 | + 'plugin_cf_product_adult_type' => 'product_adult_type', | |
| 2194 | + 'plugin_cf_product_age_group' => 'product_age_group', | |
| 2195 | + 'plugin_cf_product_avail' => 'product_avail', | |
| 2196 | + 'plugin_cf_product_brand' => 'product_brand', // Product Brand Custom Field. | |
| 2197 | + 'plugin_cf_product_category' => 'product_category', // Product Google Category Custom Field. | |
| 2198 | + 'plugin_cf_product_color' => 'product_color', | |
| 2199 | + 'plugin_cf_product_condition' => 'product_condition', // Product Condition Custom Field. | |
| 2200 | + 'plugin_cf_product_currency' => 'product_currency', | |
| 2201 | + 'plugin_cf_product_energy_efficiency' => 'product_energy_efficiency', // Product Energy Rating Custom Field. | |
| 2202 | + 'plugin_cf_product_fluid_volume_value' => 'product_fluid_volume_value', // Product Fluid Volume Custom Field. | |
| 2203 | + 'plugin_cf_product_gtin14' => 'product_gtin14', | |
| 2204 | + 'plugin_cf_product_gtin13' => 'product_gtin13', | |
| 2205 | + 'plugin_cf_product_gtin12' => 'product_gtin12', | |
| 2206 | + 'plugin_cf_product_gtin8' => 'product_gtin8', | |
| 2207 | + 'plugin_cf_product_gtin' => 'product_gtin', | |
| 2208 | + 'plugin_cf_product_height_value' => 'product_height_value', // Product Net Height Custom Field. | |
| 2209 | + 'plugin_cf_product_isbn' => 'product_isbn', | |
| 2210 | + 'plugin_cf_product_length_value' => 'product_length_value', // Product Net Len. / Depth Custom Field. | |
| 2211 | + 'plugin_cf_product_material' => 'product_material', | |
| 2212 | + 'plugin_cf_product_mfr_part_no' => 'product_mfr_part_no', | |
| 2213 | + 'plugin_cf_product_min_advert_price' => 'product_min_advert_price', | |
| 2214 | + 'plugin_cf_product_pattern' => 'product_pattern', | |
| 2215 | + 'plugin_cf_product_price' => 'product_price', | |
| 2216 | + 'plugin_cf_product_price_type' => 'product_price_type', | |
| 2217 | + 'plugin_cf_product_retailer_part_no' => 'product_retailer_part_no', | |
| 2218 | + 'plugin_cf_product_shipping_height_value' => 'product_shipping_height_value', // Product Shipping Height Custom Field. | |
| 2219 | + 'plugin_cf_product_shipping_length_value' => 'product_shipping_length_value', // Product Shipping Length Custom Field. | |
| 2220 | + 'plugin_cf_product_shipping_weight_value' => 'product_shipping_weight_value', // Product Shipping Weight Custom Field. | |
| 2221 | + 'plugin_cf_product_shipping_width_value' => 'product_shipping_width_value', // Product Shipping Width Custom Field. | |
| 2222 | + 'plugin_cf_product_size' => 'product_size', | |
| 2223 | + 'plugin_cf_product_size_group' => 'product_size_group', | |
| 2224 | + 'plugin_cf_product_size_system' => 'product_size_system', | |
| 2225 | + 'plugin_cf_product_target_gender' => 'product_target_gender', | |
| 2226 | + 'plugin_cf_product_weight_value' => 'product_weight_value', // Product Net Weight Custom Field. | |
| 2227 | + 'plugin_cf_product_width_value' => 'product_width_value', // Product Net Width Custom Field. | |
| 2228 | + 'plugin_cf_review_item_name' => 'schema_review_item_name', // Review Subject Name Custom Field. | |
| 2229 | + 'plugin_cf_review_item_desc' => 'schema_review_item_desc', // Review Subject Desc Custom Field. | |
| 2230 | + 'plugin_cf_review_rating' => 'schema_review_rating', // Review Rating Custom Field. | |
| 2231 | + 'plugin_cf_review_rating_alt_name' => 'schema_review_rating_alt_name', // Review Rating Alt Name Custom Field. | |
| 2232 | + 'plugin_cf_sameas_urls' => 'schema_sameas_url', | |
| 2233 | + 'plugin_cf_vid_embed' => 'og_vid_embed', | |
| 2234 | + 'plugin_cf_vid_url' => 'og_vid_url', | |
| 2235 | + ), | |
| 2236 | + | |
| 2237 | + /* | |
| 2238 | + * WpssoConfig::$cf[ 'opt' ][ 'md_keys_multi' ] | |
| 2239 | + * | |
| 2240 | + * Provides information to re-number multiple input/textarea fields and read/split custom field | |
| 2241 | + * values into numbered options. | |
| 2242 | + */ | |
| 2243 | + 'md_keys_multi' => array( | |
| 2244 | + 'contact_sameas_url' => true, | |
| 2245 | + 'contact_service_area_id' => true, | |
| 2246 | + 'org_award' => true, // Organization Awards. | |
| 2247 | + 'org_contact_id' => true, // Organization Contact Points. | |
| 2248 | + 'org_offer_catalog' => array( // Offer Catalog Name. | |
| 2249 | + 'org_offer_catalog_text', // Offer Catalog Description. | |
| 2250 | + 'org_offer_catalog_url', // Offer Catalog URL. | |
| 2251 | + ), | |
| 2252 | + 'org_service_area_id' => true, | |
| 2253 | + 'place_sameas_url' => true, | |
| 2254 | + 'product_award' => true, // Product Awards. | |
| 2255 | + 'product_size_group' => true, // Product Size Group. | |
| 2256 | + 'schema_addl_type_url' => true, // Microdata Type URLs. | |
| 2257 | + 'schema_award' => true, // Creative Work Awards. | |
| 2258 | + 'schema_book_offer' => array( | |
| 2259 | + 'schema_book_offer_name', | |
| 2260 | + 'schema_book_offer_price', | |
| 2261 | + 'schema_book_offer_currency', | |
| 2262 | + 'schema_book_offer_avail', | |
| 2263 | + ), | |
| 2264 | + 'schema_citation' => true, // Reference Citations. | |
| 2265 | + 'schema_event_offer' => array( | |
| 2266 | + 'schema_event_offer_name', | |
| 2267 | + 'schema_event_offer_price', | |
| 2268 | + 'schema_event_offer_currency', | |
| 2269 | + 'schema_event_offer_avail', | |
| 2270 | + ), | |
| 2271 | + 'schema_howto_step' => array( // How-To Name. | |
| 2272 | + 'schema_howto_step_section', // How-To Step or Section. | |
| 2273 | + 'schema_howto_step_text', // How-To Step Description. | |
| 2274 | + 'schema_howto_step_anchor_id', // How-To Step Anchor ID. | |
| 2275 | + 'schema_howto_step_img_id', // How-To Step Image ID. | |
| 2276 | + 'schema_howto_step_img_id_lib', | |
| 2277 | + ), | |
| 2278 | + 'schema_howto_supply' => true, // How-To Supplies. | |
| 2279 | + 'schema_howto_tool' => true, // How-To Tools. | |
| 2280 | + 'schema_ispartof_url' => true, // Is Part of URLs. | |
| 2281 | + 'schema_movie_actor_person_name' => true, | |
| 2282 | + 'schema_movie_director_person_name' => true, | |
| 2283 | + 'schema_recipe_ingredient' => true, // Recipe Ingredients. | |
| 2284 | + 'schema_recipe_instruction' => array( // Recipe Instructions. | |
| 2285 | + 'schema_recipe_instruction_section', // Recipe Instruction or Section. | |
| 2286 | + 'schema_recipe_instruction_text', // Recipe Instruction Description. | |
| 2287 | + 'schema_recipe_instruction_anchor_id', // Recipe Instruction Anchor ID. | |
| 2288 | + 'schema_recipe_instruction_img_id', // Recipe Instruction Image ID. | |
| 2289 | + 'schema_recipe_instruction_img_id_lib', | |
| 2290 | + ), | |
| 2291 | + 'schema_review_item_cw_movie_actor_person_name' => true, | |
| 2292 | + 'schema_review_item_cw_movie_director_person_name' => true, | |
| 2293 | + 'schema_review_item_product_offer' => array( | |
| 2294 | + 'schema_review_item_product_offer_name', | |
| 2295 | + 'schema_review_item_product_offer_price', | |
| 2296 | + 'schema_review_item_product_offer_currency', | |
| 2297 | + 'schema_review_item_product_offer_avail', | |
| 2298 | + ), | |
| 2299 | + 'schema_review_item_software_app_offer' => array( | |
| 2300 | + 'schema_review_item_software_app_offer_name', | |
| 2301 | + 'schema_review_item_software_app_offer_price', | |
| 2302 | + 'schema_review_item_software_app_offer_currency', | |
| 2303 | + 'schema_review_item_software_app_offer_avail', | |
| 2304 | + ), | |
| 2305 | + 'schema_sameas_url' => true, // Same-As URLs. | |
| 2306 | + 'schema_service_award' => true, // Service Awards. | |
| 2307 | + 'schema_service_offer' => array( | |
| 2308 | + 'schema_service_offer_name', | |
| 2309 | + 'schema_service_offer_price', | |
| 2310 | + 'schema_service_offer_currency', | |
| 2311 | + 'schema_service_offer_avail', | |
| 2312 | + ), | |
| 2313 | + 'schema_service_offer_catalog' => array( // Offer Catalog Name. | |
| 2314 | + 'schema_service_offer_catalog_text', // Offer Catalog Description. | |
| 2315 | + 'schema_service_offer_catalog_url', // Offer Catalog URL. | |
| 2316 | + ), | |
| 2317 | + 'schema_service_area_id' => true, | |
| 2318 | + 'schema_webpage_reviewed_by_org_id' => true, | |
| 2319 | + 'schema_webpage_reviewed_by_person_id' => true, | |
| 2320 | + ), | |
| 2321 | + | |
| 2322 | + /* | |
| 2323 | + * Fallback order for custom Document SSO metadata keys. | |
| 2324 | + */ | |
| 2325 | + 'md_keys_fallback' => array( | |
| 2326 | + | |
| 2327 | + /* | |
| 2328 | + * SEO and Schema metadata keys. | |
| 2329 | + */ | |
| 2330 | + 'seo_title' => array( 'seo_title' ), | |
| 2331 | + 'seo_desc' => array( 'seo_desc' ), | |
| 2332 | + 'schema_title' => array( 'schema_title', 'seo_title' ), | |
| 2333 | + 'schema_title_alt' => array( 'schema_title_alt', 'schema_title', 'seo_title' ), | |
| 2334 | + 'schema_title_bc' => array( 'schema_title_bc', 'schema_title_alt', 'schema_title', 'seo_title' ), | |
| 2335 | + 'schema_headline' => array( 'schema_headline', 'schema_title', 'seo_title' ), | |
| 2336 | + 'schema_job_title' => array( 'schema_job_title', 'schema_title', 'seo_title' ), | |
| 2337 | + 'schema_desc' => array( 'schema_desc', 'seo_desc' ), | |
| 2338 | + 'schema_text' => array( 'schema_text' ), | |
| 2339 | + | |
| 2340 | + /* | |
| 2341 | + * Open Graph and Social metadata keys. | |
| 2342 | + */ | |
| 2343 | + 'og_title' => array( 'og_title', 'seo_title' ), | |
| 2344 | + 'og_desc' => array( 'og_desc', 'seo_desc' ), | |
| 2345 | + 'og_caption' => array( 'og_caption' ), | |
| 2346 | + 'tc_title' => array( 'tc_title', 'og_title', 'seo_title' ), | |
| 2347 | + 'tc_desc' => array( 'tc_desc', 'og_desc', 'seo_desc' ), | |
| 2348 | + 'pin_img_desc' => array( 'pin_img_desc', 'og_desc', 'seo_desc' ), | |
| 2349 | + ), | |
| 2350 | + | |
| 2351 | + /* | |
| 2352 | + * Additional fields for the user profile About Yourself / About the user sections. | |
| 2353 | + */ | |
| 2354 | + 'user_about' => array( | |
| 2355 | + 'job_title' => 'Job Title', | |
| 2356 | + 'honorific_prefix' => 'Honorific Prefix', | |
| 2357 | + 'honorific_suffix' => 'Honorific Suffix', | |
| 2358 | + 'additional_name' => 'Middle or Additional Name', | |
| 2359 | + 'award' => 'Awards', | |
| 2360 | + ), | |
| 2361 | + | |
| 2362 | + 'site_verify_meta_names' => array( | |
| 2363 | + 'ahrefs_site_verify' => 'ahrefs-site-verification', // Ahrefs Website Verification ID. | |
| 2364 | + 'baidu_site_verify' => 'baidu-site-verification', // Baidu Website Verification ID. | |
| 2365 | + 'fb_site_verify' => 'facebook-domain-verification', // Facebook Domain Verification ID. | |
| 2366 | + 'g_site_verify' => 'google-site-verification', // Google Website Verification ID. | |
| 2367 | + 'bing_site_verify' => 'msvalidate.01', // Microsoft Bing Website Verification ID. | |
| 2368 | + 'pin_site_verify' => 'p:domain_verify', // Pinterest Website Verification ID. | |
| 2369 | + 'yandex_site_verify' => 'yandex-verification', // Yandex Website Verification ID. | |
| 2370 | + ), | |
| 2371 | + ), // End of 'opt' array. | |
| 2372 | + | |
| 2373 | + /* | |
| 2374 | + * Update manager. | |
| 2375 | + */ | |
| 2376 | + 'um' => array( | |
| 2377 | + 'min_version' => '7.2.0', // Released on 2024/09/18. | |
| 2378 | + 'rec_version' => '7.3.0', // Released on 2025/10/13. | |
| 2379 | + 'version_filter' => array( | |
| 2380 | + 'dev' => 'Development and Up', | |
| 2381 | + 'alpha' => 'Alpha and Up', | |
| 2382 | + 'beta' => 'Beta and Up', | |
| 2383 | + 'rc' => 'Release Candidate and Up', | |
| 2384 | + 'stable' => 'Stable / Production', | |
| 2385 | + ), | |
| 2386 | + 'version_regex' => array( | |
| 2387 | + 'dev' => '/^[0-9][0-9\.\-]+((dev|a|alpha|b|beta|rc)[0-9\.\-]+)?$/', | |
| 2388 | + 'alpha' => '/^[0-9][0-9\.\-]+((a|alpha|b|beta|rc)[0-9\.\-]+)?$/', | |
| 2389 | + 'beta' => '/^[0-9][0-9\.\-]+((b|beta|rc)[0-9\.\-]+)?$/', | |
| 2390 | + 'rc' => '/^[0-9][0-9\.\-]+((rc)[0-9\.\-]+)?$/', | |
| 2391 | + 'stable' => '/^[0-9][0-9\.\-]+$/', | |
| 2392 | + ), | |
| 2393 | + ), // End of 'um' array. | |
| 2394 | + | |
| 2395 | + /* | |
| 2396 | + * PHP. | |
| 2397 | + */ | |
| 2398 | + 'php' => array( | |
| 2399 | + 'label' => 'PHP', | |
| 2400 | + 'min_version' => '7.4.33', // Hard limit - deactivate the plugin when activating. | |
| 2401 | + 'rec_version' => '7.4.33', // Soft limit - issue warning if lower version found. | |
| 2402 | + 'version_url' => 'https://www.php.net/supported-versions.php', | |
| 2403 | + 'extensions' => array( | |
| 2404 | + 'curl' => array( // PHP extension name. | |
| 2405 | + 'label' => 'Client URL Library (cURL)', | |
| 2406 | + 'url' => 'https://www.php.net/manual/en/book.curl.php', | |
| 2407 | + ), | |
| 2408 | + 'dom' => array( // PHP extension name. | |
| 2409 | + 'label' => 'Document Object Model', | |
| 2410 | + 'url' => 'https://www.php.net/manual/en/book.dom.php', | |
| 2411 | + 'classes' => array( // Extra checks to make sure the PHP extension is complete. | |
| 2412 | + 'DOMDocument', | |
| 2413 | + ), | |
| 2414 | + ), | |
| 2415 | + 'gd' => array( // PHP extension name. | |
| 2416 | + 'label' => 'Image Processing (GD)', | |
| 2417 | + 'url' => 'https://www.php.net/manual/en/book.image.php', | |
| 2418 | + 'wp_image_editor' => array( | |
| 2419 | + 'class' => 'WP_Image_Editor_GD', | |
| 2420 | + 'url' => 'https://developer.wordpress.org/reference/classes/wp_image_editor_gd/', | |
| 2421 | + ), | |
| 2422 | + ), | |
| 2423 | + 'json' => array( // PHP extension name. | |
| 2424 | + 'label' => 'JavaScript Object Notation (JSON)', | |
| 2425 | + 'url' => 'https://www.php.net/manual/en/book.json.php', | |
| 2426 | + ), | |
| 2427 | + 'libxml' => array( // PHP extension name. | |
| 2428 | + 'label' => 'libxml', | |
| 2429 | + 'url' => 'https://www.php.net/manual/en/book.libxml.php', | |
| 2430 | + 'functions' => array( // Extra checks to make sure the PHP extension is complete. | |
| 2431 | + 'libxml_use_internal_errors', | |
| 2432 | + ), | |
| 2433 | + ), | |
| 2434 | + 'mbstring' => array( // PHP extension name. | |
| 2435 | + 'label' => 'Multibyte String', | |
| 2436 | + 'url' => 'https://www.php.net/manual/en/book.mbstring.php', | |
| 2437 | + 'functions' => array( // Extra checks to make sure the PHP extension is complete. | |
| 2438 | + 'mb_convert_encoding', | |
| 2439 | + 'mb_decode_numericentity', | |
| 2440 | + 'mb_detect_encoding', | |
| 2441 | + 'mb_strlen', | |
| 2442 | + 'mb_strtolower', | |
| 2443 | + 'mb_substr', | |
| 2444 | + ), | |
| 2445 | + ), | |
| 2446 | + 'simplexml' => array( // PHP extension name. | |
| 2447 | + 'label' => 'SimpleXML', | |
| 2448 | + 'url' => 'https://www.php.net/manual/en/book.simplexml.php', | |
| 2449 | + 'functions' => array( // Extra checks to make sure the PHP extension is complete. | |
| 2450 | + 'simplexml_load_string', | |
| 2451 | + ), | |
| 2452 | + ), | |
| 2453 | + 'xml' => array( // PHP extension name. | |
| 2454 | + 'label' => 'XML Parser', | |
| 2455 | + 'url' => 'https://www.php.net/manual/en/book.xml.php', | |
| 2456 | + 'functions' => array( // Extra checks to make sure the PHP extension is complete. | |
| 2457 | + 'utf8_encode', | |
| 2458 | + ), | |
| 2459 | + ), | |
| 2460 | + ), | |
| 2461 | + ), // End of 'php' array. | |
| 2462 | + | |
| 2463 | + /* | |
| 2464 | + * WordPress. | |
| 2465 | + */ | |
| 2466 | + 'wp' => array( | |
| 2467 | + 'label' => 'WordPress', | |
| 2468 | + 'min_version' => '5.9', // Hard limit - deactivate the plugin when activating. | |
| 2469 | + 'rec_version' => '6.6.2', // Soft limit - issue warning if lower version found. | |
| 2470 | + 'version_url' => 'https://codex.wordpress.org/Supported_Versions?nocache=1', | |
| 2471 | + 'tb_iframe' => array( // Thickbox iframe. | |
| 2472 | + 'width' => 772, // Url query argument. | |
| 2473 | + 'height' => 550, // Url query argument. | |
| 2474 | + ), | |
| 2475 | + 'cm_names' => array( | |
| 2476 | + 'aim' => 'AIM', | |
| 2477 | + 'jabber' => 'Google Talk', | |
| 2478 | + 'yim' => 'Yahoo Messenger', | |
| 2479 | + ), | |
| 2480 | + 'admin' => array( | |
| 2481 | + 'dashboard' => array( | |
| 2482 | + 'page' => 'index.php', | |
| 2483 | + 'cap' => 'manage_options', | |
| 2484 | + ), | |
| 2485 | + 'plugins' => array( | |
| 2486 | + 'page' => 'plugins.php', | |
| 2487 | + 'cap' => 'install_plugins', | |
| 2488 | + ), | |
| 2489 | + 'profile' => array( | |
| 2490 | + 'page' => 'profile.php', | |
| 2491 | + 'cap' => 'publish_posts', | |
| 2492 | + ), | |
| 2493 | + 'settings' => array( | |
| 2494 | + 'page' => 'options-general.php', | |
| 2495 | + 'cap' => 'manage_options', | |
| 2496 | + ), | |
| 2497 | + 'sitesubmenu' => array( | |
| 2498 | + 'page' => 'admin.php', | |
| 2499 | + 'cap' => 'manage_options', | |
| 2500 | + ), | |
| 2501 | + 'submenu' => array( | |
| 2502 | + 'page' => 'admin.php', | |
| 2503 | + 'cap' => 'manage_options', | |
| 2504 | + ), | |
| 2505 | + 'tools' => array( | |
| 2506 | + 'page' => 'tools.php', | |
| 2507 | + 'cap' => 'manage_options', | |
| 2508 | + ), | |
| 2509 | + 'users' => array( | |
| 2510 | + 'page' => 'users.php', | |
| 2511 | + 'cap' => 'list_users', | |
| 2512 | + 'sub' => array( | |
| 2513 | + 'add-person' => array( | |
| 2514 | + 'cap' => 'create_users', | |
| 2515 | + 'pos' => 2, | |
| 2516 | + ), | |
| 2517 | + ), | |
| 2518 | + ), | |
| 2519 | + ), | |
| 2520 | + 'roles' => array( | |
| 2521 | + 'all' => array( | |
| 2522 | + 'administrator', | |
| 2523 | + 'editor', | |
| 2524 | + 'author', | |
| 2525 | + 'contributor', | |
| 2526 | + 'subscriber', | |
| 2527 | + ), | |
| 2528 | + 'creator' => array( // Users that can create content. | |
| 2529 | + 'administrator', | |
| 2530 | + 'editor', | |
| 2531 | + 'author', | |
| 2532 | + 'contributor', | |
| 2533 | + ), | |
| 2534 | + 'publisher' => array( // Users that can publish content. | |
| 2535 | + 'administrator', | |
| 2536 | + 'editor', | |
| 2537 | + 'author', | |
| 2538 | + ), | |
| 2539 | + 'owner' => array( // Users that can manage content (edit, publish, delete, etc.). | |
| 2540 | + 'administrator', | |
| 2541 | + 'editor', | |
| 2542 | + ), | |
| 2543 | + 'admin' => array( | |
| 2544 | + 'administrator', | |
| 2545 | + ), | |
| 2546 | + 'person' => array( // Users for Schema Person select. | |
| 2547 | + 'person', | |
| 2548 | + ), | |
| 2549 | + ), | |
| 2550 | + | |
| 2551 | + /* | |
| 2552 | + * See WpssoAdmin->get_ext_file_content(). | |
| 2553 | + */ | |
| 2554 | + 'cache' => array( | |
| 2555 | + 'file' => array( | |
| 2556 | + | |
| 2557 | + /* | |
| 2558 | + * See WpssoAdmin->get_ext_file_content(). | |
| 2559 | + */ | |
| 2560 | + 'wpsso_c_' => array( | |
| 2561 | + 'label' => 'File Content', | |
| 2562 | + 'value' => DAY_IN_SECONDS, | |
| 2563 | + 'filter' => 'wpsso_cache_expire_file_content', | |
| 2564 | + ), | |
| 2565 | + | |
| 2566 | + /* | |
| 2567 | + * See WpssoProMediaYoutube->filter_video_details(). | |
| 2568 | + */ | |
| 2569 | + 'wpsso_y_' => array( | |
| 2570 | + 'label' => 'YouTube Video Details', | |
| 2571 | + 'value' => WEEK_IN_SECONDS, | |
| 2572 | + 'filter' => 'wpsso_cache_expire_youtube_video_details', | |
| 2573 | + ), | |
| 2574 | + | |
| 2575 | + 'wpsso_' => array( | |
| 2576 | + 'label' => 'All Files', | |
| 2577 | + ), | |
| 2578 | + ), | |
| 2579 | + 'transient' => array( | |
| 2580 | + | |
| 2581 | + 'wpsso_!_' => array( | |
| 2582 | + ), | |
| 2583 | + | |
| 2584 | + /* | |
| 2585 | + * See WpssoProMediaFacebook->filter_video_details(). | |
| 2586 | + * See WpssoProMediaSlideshare->filter_video_details(). | |
| 2587 | + * See WpssoProMediaVimeo->filter_video_details(). | |
| 2588 | + * See WpssoProMediaWistia->filter_video_details(). | |
| 2589 | + * See WpssoProReviewJudgeme->filter_og(). | |
| 2590 | + * See WpssoProReviewShopperApproved->filter_og(). | |
| 2591 | + * See WpssoProReviewStamped->filter_og(). | |
| 2592 | + */ | |
| 2593 | + 'wpsso_a_' => array( | |
| 2594 | + 'label' => 'API Response Info', | |
| 2595 | + 'value' => DAY_IN_SECONDS, | |
| 2596 | + 'filter' => 'wpsso_cache_expire_api_response', | |
| 2597 | + ), | |
| 2598 | + | |
| 2599 | + /* | |
| 2600 | + * See WpssoAdmin->settings_saved_notice(). | |
| 2601 | + * See WpssoHead->clear_head_array(). | |
| 2602 | + * See WpssoHead->get_head_array(). | |
| 2603 | + */ | |
| 2604 | + 'wpsso_h_' => array( | |
| 2605 | + 'label' => 'Document Markup', | |
| 2606 | + 'value' => WEEK_IN_SECONDS, | |
| 2607 | + 'filter' => 'wpsso_cache_expire_head_markup', | |
| 2608 | + | |
| 2609 | + /* | |
| 2610 | + * If the $mod array condition is true, then use the associated value. | |
| 2611 | + */ | |
| 2612 | + 'conditional_values' => array( | |
| 2613 | + 'is_404' => 0, | |
| 2614 | + 'is_attachment' => 0, | |
| 2615 | + 'is_date' => 0, | |
| 2616 | + 'is_search' => 0, | |
| 2617 | + ), | |
| 2618 | + ), | |
| 2619 | + | |
| 2620 | + 'wpsso_i_' => array( | |
| 2621 | + 'label' => 'Image URL Info', | |
| 2622 | + 'value' => DAY_IN_SECONDS, | |
| 2623 | + 'filter' => 'wpsso_cache_expire_image_info', | |
| 2624 | + ), | |
| 2625 | + | |
| 2626 | + /* | |
| 2627 | + * See WpssoAdmin->get_readme_info(). | |
| 2628 | + */ | |
| 2629 | + 'wpsso_r_' => array( | |
| 2630 | + 'label' => 'Plugin Readme Info', | |
| 2631 | + 'value' => DAY_IN_SECONDS, | |
| 2632 | + 'filter' => 'wpsso_cache_expire_readme_info', | |
| 2633 | + ), | |
| 2634 | + | |
| 2635 | + 'wpsso_s_' => array( | |
| 2636 | + 'label' => 'Short URLs Info', | |
| 2637 | + 'value' => 3 * MONTH_IN_SECONDS, | |
| 2638 | + 'filter' => 'wpsso_cache_expire_short_url', | |
| 2639 | + ), | |
| 2640 | + | |
| 2641 | + /* | |
| 2642 | + * See WpssoSchema->get_schema_types(). | |
| 2643 | + * See WpssoSchema->get_schema_type_child_family(). | |
| 2644 | + * See WpssoSchema->get_schema_type_children(). | |
| 2645 | + * See WpssoSchema->get_schema_type_row_class(). | |
| 2646 | + */ | |
| 2647 | + 'wpsso_t_' => array( | |
| 2648 | + 'label' => 'Schema Types Info', | |
| 2649 | + 'value' => WEEK_IN_SECONDS, | |
| 2650 | + 'filter' => 'wpsso_cache_expire_schema_types', | |
| 2651 | + ), | |
| 2652 | + | |
| 2653 | + 'wpsso_' => array( | |
| 2654 | + 'label' => 'All Transients', | |
| 2655 | + ), | |
| 2656 | + ), | |
| 2657 | + 'wp_cache' => array( | |
| 2658 | + | |
| 2659 | + /* | |
| 2660 | + * See WpssoPage->get_the_content(). | |
| 2661 | + */ | |
| 2662 | + 'wpsso_c_' => array( | |
| 2663 | + 'label' => 'Filtered Content', | |
| 2664 | + 'value' => HOUR_IN_SECONDS, | |
| 2665 | + 'filter' => 'wpsso_cache_expire_the_content', | |
| 2666 | + ), | |
| 2667 | + | |
| 2668 | + 'wpsso_' => array( | |
| 2669 | + 'label' => 'All WP Objects', | |
| 2670 | + ), | |
| 2671 | + ), | |
| 2672 | + ), // End of 'cache' array. | |
| 2673 | + ), // End of 'wp' array. | |
| 2674 | + | |
| 2675 | + /* | |
| 2676 | + * Used by WpssoScript->admin_enqueue_scripts(). | |
| 2677 | + * | |
| 2678 | + * See http://qtip2.com/download. | |
| 2679 | + */ | |
| 2680 | + 'jquery-qtip' => array( | |
| 2681 | + 'label' => 'jQuery qTip', | |
| 2682 | + 'version' => '3.0.3', | |
| 2683 | + ), | |
| 2684 | + | |
| 2685 | + /* | |
| 2686 | + * Required for the datepicker popup. | |
| 2687 | + * | |
| 2688 | + * See https://developers.google.com/speed/libraries/. | |
| 2689 | + * | |
| 2690 | + * See WpssoStyle->admin_enqueue_styles(). | |
| 2691 | + */ | |
| 2692 | + 'jquery-ui' => array( | |
| 2693 | + 'label' => 'jQuery UI', | |
| 2694 | + 'version' => '1.13.3', | |
| 2695 | + ), | |
| 2696 | + | |
| 2697 | + 'menu' => array( | |
| 2698 | + 'title' => 'SSO - Social and Search Optimization', // Menu title. | |
| 2699 | + 'icon-font' => 'WpssoIcons', // Icon font family. | |
| 2700 | + 'icon-code' => '\e838', // Icon CSS code, .icon-orange-6. | |
| 2701 | + 'dashicons' => array( | |
| 2702 | + 'add-person' => 'admin-users', | |
| 2703 | + 'addons' => 'admin-plugins', | |
| 2704 | + 'advanced' => 'superhero', | |
| 2705 | + 'dashboard' => 'dashboard', | |
| 2706 | + 'essential' => 'star-filled', | |
| 2707 | + 'general' => 'admin-settings', | |
| 2708 | + 'licenses' => 'admin-network', | |
| 2709 | + 'setup' => 'welcome-learn-more', | |
| 2710 | + 'debug' => 'code-standards', | |
| 2711 | + 'site-addons' => 'admin-plugins', | |
| 2712 | + 'site-licenses' => 'admin-network', | |
| 2713 | + 'site-setup' => 'welcome-learn-more', | |
| 2714 | + 'site-debug' => 'code-standards', | |
| 2715 | + 'tools' => 'admin-tools', | |
| 2716 | + 'your-sso' => 'id-alt', | |
| 2717 | + '*' => 'admin-generic', // Default icon. | |
| 2718 | + ), | |
| 2719 | + 'must_load' => array( // Settings pages that cannot be disabled. | |
| 2720 | + 'general' => true, | |
| 2721 | + 'advanced' => true, | |
| 2722 | + 'licenses' => true, | |
| 2723 | + 'site-advanced' => true, | |
| 2724 | + 'site-licenses' => true, | |
| 2725 | + ), | |
| 2726 | + ), | |
| 2727 | + 'notice' => array( | |
| 2728 | + 'title' => 'SSO', // Notice title. | |
| 2729 | + ), | |
| 2730 | + 'meta' => array( // Post, term, user add_meta_box() settings. | |
| 2731 | + 'id' => 'sso', | |
| 2732 | + 'title' => 'Document SSO', | |
| 2733 | + ), | |
| 2734 | + 'edit' => array( // Post, term, user lists. | |
| 2735 | + | |
| 2736 | + /* | |
| 2737 | + * Array is defined by the preferred table column order. | |
| 2738 | + */ | |
| 2739 | + 'columns' => array( | |
| 2740 | + 'schema_type_name' => array( | |
| 2741 | + 'header' => 'SSO Schema', // First column. | |
| 2742 | + 'mt_name' => 'schema:type:name', | |
| 2743 | + 'meta_key' => '_wpsso_head_info_schema_type_name', | |
| 2744 | + 'orderby' => 'meta_value', | |
| 2745 | + 'width' => '10em', | |
| 2746 | + 'height' => 'auto', | |
| 2747 | + 'def_val' => 'none', | |
| 2748 | + ), | |
| 2749 | + 'schema_lang' => array( | |
| 2750 | + 'header' => 'SSO Lang', // Second column. | |
| 2751 | + 'mt_name' => 'schema:language', | |
| 2752 | + 'meta_key' => '_wpsso_head_info_schema_lang', | |
| 2753 | + 'orderby' => 'meta_value', | |
| 2754 | + 'width' => '8em', | |
| 2755 | + 'height' => 'auto', | |
| 2756 | + 'def_val' => 'none', | |
| 2757 | + ), | |
| 2758 | + 'og_img' => array( | |
| 2759 | + 'header' => 'SSO Image', // Third column. | |
| 2760 | + 'mt_name' => 'og:image', | |
| 2761 | + 'meta_key' => '_wpsso_head_info_og_img_thumb', | |
| 2762 | + 'orderby' => false, // Do not offer column sorting. | |
| 2763 | + 'width' => '75px', | |
| 2764 | + 'height' => '40px', | |
| 2765 | + 'def_val' => 'none', | |
| 2766 | + ), | |
| 2767 | + 'og_desc' => array( | |
| 2768 | + 'header' => 'SSO Desc', // Fourth column. | |
| 2769 | + 'mt_name' => 'og:description', | |
| 2770 | + 'meta_key' => '_wpsso_head_info_og_desc', | |
| 2771 | + 'orderby' => true, | |
| 2772 | + 'width' => '200px', | |
| 2773 | + 'height' => 'auto', | |
| 2774 | + 'def_val' => 'none', | |
| 2775 | + ), | |
| 2776 | + 'og_type' => array( // Open Graph Type ID. | |
| 2777 | + 'mt_name' => 'og:type', | |
| 2778 | + 'meta_key' => '_wpsso_head_info_og_type', | |
| 2779 | + 'def_val' => 'none', | |
| 2780 | + ), | |
| 2781 | + 'schema_type' => array( // Schema Type ID. | |
| 2782 | + 'mt_name' => 'schema:type:id', | |
| 2783 | + 'meta_key' => '_wpsso_head_info_schema_type', | |
| 2784 | + 'def_val' => 'none', | |
| 2785 | + ), | |
| 2786 | + 'schema_review_rating' => array( | |
| 2787 | + 'mt_name' => 'schema:review:rating', | |
| 2788 | + 'meta_key' => '_wpsso_head_info_schema_review_rating', | |
| 2789 | + 'def_val' => '0.0', // The review rating option value type is 'pos_fnum1'. | |
| 2790 | + ), | |
| 2791 | + 'is_noindex' => array( | |
| 2792 | + 'mt_name' => 'is_noindex', | |
| 2793 | + 'meta_key' => '_wpsso_head_info_is_noindex', | |
| 2794 | + 'def_val' => '0', | |
| 2795 | + ), | |
| 2796 | + 'is_redirect' => array( | |
| 2797 | + 'mt_name' => 'is_redirect', | |
| 2798 | + 'meta_key' => '_wpsso_head_info_is_redirect', | |
| 2799 | + 'def_val' => '0', | |
| 2800 | + ), | |
| 2801 | + ), | |
| 2802 | + ), | |
| 2803 | + 'form' => array( | |
| 2804 | + 'max_hashtags' => 5, | |
| 2805 | + 'max_media_items' => 5, | |
| 2806 | + 'tooltip_class' => 'sucom-tooltip', | |
| 2807 | + 'yes_no' => array( | |
| 2808 | + 1 => 'Yes', | |
| 2809 | + 0 => 'No', | |
| 2810 | + ), | |
| 2811 | + 'true_false' => array( | |
| 2812 | + 1 => 'True', | |
| 2813 | + 0 => 'False', | |
| 2814 | + ), | |
| 2815 | + 'on_off' => array( | |
| 2816 | + 1 => 'On', | |
| 2817 | + 0 => 'Off', | |
| 2818 | + ), | |
| 2819 | + 'weekdays' => array( | |
| 2820 | + 'sunday' => 'Sunday', | |
| 2821 | + 'monday' => 'Monday', | |
| 2822 | + 'tuesday' => 'Tuesday', | |
| 2823 | + 'wednesday' => 'Wednesday', | |
| 2824 | + 'thursday' => 'Thursday', | |
| 2825 | + 'friday' => 'Friday', | |
| 2826 | + 'saturday' => 'Saturday', | |
| 2827 | + 'publicholidays' => 'Public Holidays', | |
| 2828 | + ), | |
| 2829 | + 'salary_period' => array( | |
| 2830 | + 'hour' => 'Hour', | |
| 2831 | + 'day' => 'Day', | |
| 2832 | + 'week' => 'Week', | |
| 2833 | + 'month' => 'Month', | |
| 2834 | + 'year' => 'Year', | |
| 2835 | + ), | |
| 2836 | + 'notice_timeouts' => array( | |
| 2837 | + -1 => 'Do Not Auto Show', | |
| 2838 | + 0 => 'Auto Show (No Timeout)', | |
| 2839 | + 1000 => 'Auto Show for 1s', | |
| 2840 | + 2000 => 'Auto Show for 2s', | |
| 2841 | + 3000 => 'Auto Show for 3s', | |
| 2842 | + 4000 => 'Auto Show for 4s', | |
| 2843 | + 5000 => 'Auto Show for 5s', | |
| 2844 | + 6000 => 'Auto Show for 6s', | |
| 2845 | + 7000 => 'Auto Show for 7s', | |
| 2846 | + 8000 => 'Auto Show for 8s', | |
| 2847 | + 5000 => 'Auto Show for 9s', | |
| 2848 | + ), | |
| 2849 | + 'qualifiers' => array( | |
| 2850 | + '(default)', | |
| 2851 | + '(no images)', | |
| 2852 | + '(no videos)', | |
| 2853 | + '(settings value)', | |
| 2854 | + '(option disabled)', | |
| 2855 | + '%1$s (default is %2$s)', | |
| 2856 | + 'default is %s', | |
| 2857 | + 'checked', | |
| 2858 | + 'unchecked', | |
| 2859 | + 'Enabled', | |
| 2860 | + 'Disabled', | |
| 2861 | + 'enabled', | |
| 2862 | + 'disabled', | |
| 2863 | + 'at', | |
| 2864 | + 'tz', | |
| 2865 | + | |
| 2866 | + /* | |
| 2867 | + * See SucomForm->get_checklist_post_types(). | |
| 2868 | + * See SucomForm->get_checklist_post_tax_user_values(). | |
| 2869 | + */ | |
| 2870 | + 'Post Type', | |
| 2871 | + 'Taxonomy', | |
| 2872 | + 'User Profiles', | |
| 2873 | + ), | |
| 2874 | + 'document_title' => array( // Webpage Title Tag. | |
| 2875 | + 'wp_title' => '[WordPress Title]', | |
| 2876 | + 'seo_title' => 'SEO Title Tag', | |
| 2877 | + 'schema_title' => 'Schema Name', | |
| 2878 | + 'schema_title_alt' => 'Schema Alternate Name', | |
| 2879 | + ), | |
| 2880 | + 'show_options' => array( | |
| 2881 | + 'basic' => 'Basic Options', | |
| 2882 | + 'all' => 'All Options', | |
| 2883 | + ), | |
| 2884 | + 'site_option_use' => array( // Site Use. | |
| 2885 | + 'default' => 'First Activation', | |
| 2886 | + 'empty' => 'If Option Is Empty', | |
| 2887 | + 'force' => 'Always Force Value', | |
| 2888 | + ), | |
| 2889 | + 'script_locations' => array( | |
| 2890 | + 'none' => '[None]', | |
| 2891 | + 'header' => 'Header', | |
| 2892 | + 'footer' => 'Footer', | |
| 2893 | + ), | |
| 2894 | + 'caption_types' => array( | |
| 2895 | + 'none' => '[None]', | |
| 2896 | + 'title' => 'Title Only', | |
| 2897 | + 'excerpt' => 'Excerpt Only', | |
| 2898 | + 'both' => 'Title and Excerpt', | |
| 2899 | + ), | |
| 2900 | + 'author_types' => array( | |
| 2901 | + 'none' => '[None]', | |
| 2902 | + 'organization' => 'Organization', | |
| 2903 | + 'person' => 'Person', | |
| 2904 | + ), | |
| 2905 | + 'publisher_types' => array( | |
| 2906 | + 'organization' => 'Organization', | |
| 2907 | + 'person' => 'Person', | |
| 2908 | + ), | |
| 2909 | + 'user_name_fields' => array( | |
| 2910 | + 'none' => '[None]', | |
| 2911 | + 'fullname' => 'First and Last Names', | |
| 2912 | + 'display_name' => 'Display Name', | |
| 2913 | + 'nickname' => 'Nickname', | |
| 2914 | + ), | |
| 2915 | + 'addr_select' => array( | |
| 2916 | + 'none' => '[None]', | |
| 2917 | + 'custom' => '[Custom Address]', | |
| 2918 | + 'new' => '[New Address]', | |
| 2919 | + ), | |
| 2920 | + 'org_select' => array( | |
| 2921 | + 'none' => '[None]', | |
| 2922 | + 'new' => '[New Organization]', | |
| 2923 | + 'site' => '[Site Organization]', | |
| 2924 | + ), | |
| 2925 | + 'og_schema_types_select_format' => array( | |
| 2926 | + 'id' => 'ID', | |
| 2927 | + 'id_url' => 'ID | Host/Name', | |
| 2928 | + 'id_name' => 'ID | Name', | |
| 2929 | + 'name_id' => 'Name [ID]', | |
| 2930 | + 'name' => 'Name', | |
| 2931 | + ), | |
| 2932 | + | |
| 2933 | + /* | |
| 2934 | + * Image preferred cropping. | |
| 2935 | + */ | |
| 2936 | + 'position_crop_x' => array( | |
| 2937 | + 'left' => 'Left', | |
| 2938 | + 'center' => 'Center', | |
| 2939 | + 'right' => 'Right', | |
| 2940 | + ), | |
| 2941 | + 'position_crop_y' => array( | |
| 2942 | + 'top' => 'Top', | |
| 2943 | + 'center' => 'Center', | |
| 2944 | + 'bottom' => 'Bottom', | |
| 2945 | + ), | |
| 2946 | + | |
| 2947 | + /* | |
| 2948 | + * Robots meta. | |
| 2949 | + * | |
| 2950 | + * See https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag#max-image-preview. | |
| 2951 | + */ | |
| 2952 | + 'robots_max_image_preview' => array( | |
| 2953 | + 'none' => '[None]', | |
| 2954 | + 'standard' => 'Standard', | |
| 2955 | + 'large' => 'Large', | |
| 2956 | + ), | |
| 2957 | + | |
| 2958 | + /* | |
| 2959 | + * Breadcrumbs settings. | |
| 2960 | + */ | |
| 2961 | + 'breadcrumbs_for_posts' => array( // Breadcrumbs by Post Type. | |
| 2962 | + 'none' => '[No Breadcrumbs]', | |
| 2963 | + 'categories' => 'Home Page(s) and Categories', | |
| 2964 | + 'ancestors' => 'Home Page(s) and Parents', | |
| 2965 | + 'primary_cat' => 'Home Page(s) and Primary Category', | |
| 2966 | + ), | |
| 2967 | + 'breadcrumbs_for_terms' => array( // Breadcrumbs by Taxonomy. | |
| 2968 | + 'none' => '[No Breadcrumbs]', | |
| 2969 | + 'ancestors' => 'Home Page(s) and Parents', | |
| 2970 | + ), | |
| 2971 | + | |
| 2972 | + /* | |
| 2973 | + * Shortening service. | |
| 2974 | + */ | |
| 2975 | + 'shorteners' => array( | |
| 2976 | + 'none' => '[None]', | |
| 2977 | + 'bitly' => 'Bitly', // Requires lib/pro/com/bitly.php. | |
| 2978 | + 'dlmyapp' => 'DLMY.App', // Requires lib/pro/ext/dlmy.php. | |
| 2979 | + 'owly' => 'Ow.ly', // Requires lib/pro/ext/owly.php. | |
| 2980 | + 'tinyurl' => 'TinyURL', // Requires lib/pro/ext/tinyurl.php. | |
| 2981 | + 'yourls' => 'YOURLS', // Requires lib/pro/ext/yourls.php. | |
| 2982 | + ), | |
| 2983 | + | |
| 2984 | + /* | |
| 2985 | + * Ratings and reviews services. | |
| 2986 | + */ | |
| 2987 | + 'ratings_reviews' => array( | |
| 2988 | + 'none' => '[None]', | |
| 2989 | + 'judgeme' => 'Judge.me', | |
| 2990 | + 'shopperapproved' => 'Shopper Approved', | |
| 2991 | + 'stamped' => 'Stamped.io', | |
| 2992 | + ), | |
| 2993 | + | |
| 2994 | + /* | |
| 2995 | + * Social account keys and labels for Organization SameAs. | |
| 2996 | + */ | |
| 2997 | + 'social_accounts' => array( | |
| 2998 | + 'behance_publisher_url' => 'Behance Business Profile URL', | |
| 2999 | + 'fb_publisher_url' => 'Facebook Business Page URL', | |
| 3000 | + 'instagram_publisher_url' => 'Instagram Business Profile URL', | |
| 3001 | + 'linkedin_publisher_url' => 'LinkedIn Business Page URL', | |
| 3002 | + 'medium_publisher_url' => 'Medium Business Page URL', | |
| 3003 | + 'myspace_publisher_url' => 'Myspace Business Page URL', | |
| 3004 | + 'pin_publisher_url' => 'Pinterest Business Page URL', | |
| 3005 | + 'sc_publisher_url' => 'Soundcloud Business Page URL', | |
| 3006 | + 'tiktok_publisher_url' => 'TikTok Business Page URL', | |
| 3007 | + 'tumblr_publisher_url' => 'Tumblr Business Page URL', | |
| 3008 | + 'wikipedia_publisher_url' => 'Wikipedia Organization Page URL', | |
| 3009 | + 'tc_site' => 'X (Twitter) Business @username', | |
| 3010 | + 'yt_publisher_url' => 'YouTube Business Channel URL', | |
| 3011 | + ), | |
| 3012 | + | |
| 3013 | + 'embed_media' => array( // Check for Embedded Media. | |
| 3014 | + 'plugin_media_facebook' => 'Facebook Videos', | |
| 3015 | + 'plugin_media_slideshare' => 'Slideshare Presentations', | |
| 3016 | + 'plugin_media_soundcloud' => 'Soundcloud Tracks', | |
| 3017 | + 'plugin_media_vimeo' => 'Vimeo Videos', | |
| 3018 | + 'plugin_media_wistia' => 'Wistia Videos', | |
| 3019 | + 'plugin_media_wpvideoblock' => 'WP Media Library Video Blocks', | |
| 3020 | + 'plugin_media_wpvideoshortcode' => 'WP Media Library Video Shortcodes', | |
| 3021 | + 'plugin_media_youtube' => 'YouTube Videos and Playlists', | |
| 3022 | + ), | |
| 3023 | + | |
| 3024 | + /* | |
| 3025 | + * Attribute option labels. | |
| 3026 | + */ | |
| 3027 | + 'attr_labels' => array( | |
| 3028 | + 'plugin_attr_book_author_name' => 'Book Author Name Attribute', | |
| 3029 | + 'plugin_attr_book_isbn' => 'Book ISBN Attribute', | |
| 3030 | + 'plugin_attr_product_adult_type' => 'Adult Type Attribute', | |
| 3031 | + 'plugin_attr_product_age_group' => 'Age Group Attribute', | |
| 3032 | + 'plugin_attr_product_brand' => 'Brand Attribute', | |
| 3033 | + 'plugin_attr_product_color' => 'Color Attribute', | |
| 3034 | + 'plugin_attr_product_condition' => 'Condition Attribute', | |
| 3035 | + 'plugin_attr_product_energy_efficiency' => 'Energy Rating Attribute', | |
| 3036 | + 'plugin_attr_product_fluid_volume_value' => 'Fluid Volume Attribute', | |
| 3037 | + 'plugin_attr_product_gtin14' => 'GTIN-14 Attribute', | |
| 3038 | + 'plugin_attr_product_gtin13' => 'GTIN-13 (EAN) Attribute', | |
| 3039 | + 'plugin_attr_product_gtin12' => 'GTIN-12 (UPC) Attribute', | |
| 3040 | + 'plugin_attr_product_gtin8' => 'GTIN-8 Attribute', | |
| 3041 | + 'plugin_attr_product_gtin' => 'GTIN Attribute', | |
| 3042 | + 'plugin_attr_product_height_value' => 'Net Height Attribute', | |
| 3043 | + 'plugin_attr_product_isbn' => 'ISBN Attribute', | |
| 3044 | + 'plugin_attr_product_length_value' => 'Net Len. / Depth Attribute', | |
| 3045 | + 'plugin_attr_product_material' => 'Material Attribute', | |
| 3046 | + 'plugin_attr_product_mfr_part_no' => 'MPN Attribute', | |
| 3047 | + 'plugin_attr_product_pattern' => 'Pattern Attribute', | |
| 3048 | + 'plugin_attr_product_size' => 'Size Attribute', | |
| 3049 | + 'plugin_attr_product_size_group' => 'Size Group Attribute', | |
| 3050 | + 'plugin_attr_product_size_system' => 'Size System Attribute', | |
| 3051 | + 'plugin_attr_product_target_gender' => 'Target Gender Attribute', | |
| 3052 | + 'plugin_attr_product_weight_value' => 'Net Weight Attribute', | |
| 3053 | + 'plugin_attr_product_width_value' => 'Net Width Attribute', | |
| 3054 | + ), | |
| 3055 | + | |
| 3056 | + /* | |
| 3057 | + * Custom field option labels. | |
| 3058 | + */ | |
| 3059 | + 'cf_labels' => array( | |
| 3060 | + 'plugin_cf_addl_type_urls' => 'Microdata Type URLs Custom Field', | |
| 3061 | + 'plugin_cf_book_author_name' => 'Book Author Name Custom Field', | |
| 3062 | + 'plugin_cf_book_isbn' => 'Book ISBN Custom Field', | |
| 3063 | + 'plugin_cf_img_url' => 'Image URL Custom Field', | |
| 3064 | + 'plugin_cf_product_adult_type' => 'Product Adult Type Custom Field', | |
| 3065 | + 'plugin_cf_product_age_group' => 'Product Age Group Custom Field', | |
| 3066 | + 'plugin_cf_product_avail' => 'Product Availability Custom Field', | |
| 3067 | + 'plugin_cf_product_brand' => 'Product Brand Custom Field', | |
| 3068 | + 'plugin_cf_product_category' => 'Product Google Cat. ID Custom Field', | |
| 3069 | + 'plugin_cf_product_color' => 'Product Color Custom Field', | |
| 3070 | + 'plugin_cf_product_condition' => 'Product Condition Custom Field', | |
| 3071 | + 'plugin_cf_product_currency' => 'Product Currency Custom Field', | |
| 3072 | + 'plugin_cf_product_energy_efficiency' => 'Product Energy Rating Custom Field', | |
| 3073 | + 'plugin_cf_product_fluid_volume_value' => 'Product Fluid Volume Custom Field', | |
| 3074 | + 'plugin_cf_product_gtin14' => 'Product GTIN-14 Custom Field', | |
| 3075 | + 'plugin_cf_product_gtin13' => 'Product GTIN-13 (EAN) Custom Field', | |
| 3076 | + 'plugin_cf_product_gtin12' => 'Product GTIN-12 (UPC) Custom Field', | |
| 3077 | + 'plugin_cf_product_gtin8' => 'Product GTIN-8 Custom Field', | |
| 3078 | + 'plugin_cf_product_gtin' => 'Product GTIN Custom Field', | |
| 3079 | + 'plugin_cf_product_isbn' => 'Product ISBN Custom Field', | |
| 3080 | + 'plugin_cf_product_height_value' => 'Product Net Height Custom Field', | |
| 3081 | + 'plugin_cf_product_length_value' => 'Product Net Len. / Depth Custom Field', | |
| 3082 | + 'plugin_cf_product_material' => 'Product Material Custom Field', | |
| 3083 | + 'plugin_cf_product_mfr_part_no' => 'Product MPN Custom Field', | |
| 3084 | + 'plugin_cf_product_min_advert_price' => 'Product Min Advert Price Custom Field', | |
| 3085 | + 'plugin_cf_product_pattern' => 'Product Pattern Custom Field', | |
| 3086 | + 'plugin_cf_product_price' => 'Product Price Custom Field', | |
| 3087 | + 'plugin_cf_product_price_type' => 'Product Price Type Custom Field', | |
| 3088 | + 'plugin_cf_product_retailer_part_no' => 'Product SKU Custom Field', | |
| 3089 | + 'plugin_cf_product_shipping_height_value' => 'Product Shipping Height Custom Field', | |
| 3090 | + 'plugin_cf_product_shipping_length_value' => 'Product Shipping Length Custom Field', | |
| 3091 | + 'plugin_cf_product_shipping_weight_value' => 'Product Shipping Weight Custom Field', | |
| 3092 | + 'plugin_cf_product_shipping_width_value' => 'Product Shipping Width Custom Field', | |
| 3093 | + 'plugin_cf_product_size' => 'Product Size Custom Field', | |
| 3094 | + 'plugin_cf_product_size_group' => 'Product Size Group Custom Field', | |
| 3095 | + 'plugin_cf_product_size_system' => 'Product Size System Custom Field', | |
| 3096 | + 'plugin_cf_product_target_gender' => 'Product Target Gender Custom Field', | |
| 3097 | + 'plugin_cf_product_weight_value' => 'Product Net Weight Custom Field', | |
| 3098 | + 'plugin_cf_product_width_value' => 'Product Net Width Custom Field', | |
| 3099 | + 'plugin_cf_review_item_name' => 'Review Subject Name Custom Field', | |
| 3100 | + 'plugin_cf_review_item_desc' => 'Review Subject Desc Custom Field', | |
| 3101 | + 'plugin_cf_review_rating' => 'Review Rating Custom Field', | |
| 3102 | + 'plugin_cf_review_rating_alt_name' => 'Review Rating Alt Name Custom Field', | |
| 3103 | + 'plugin_cf_sameas_urls' => 'Same-As URLs Custom Field', | |
| 3104 | + 'plugin_cf_vid_url' => 'Video URL Custom Field', | |
| 3105 | + 'plugin_cf_vid_embed' => 'Video Embed HTML Custom Field', | |
| 3106 | + ), | |
| 3107 | + | |
| 3108 | + /* | |
| 3109 | + * Used with array_intersect_key() to determine which metadata keys can be inherited. | |
| 3110 | + * | |
| 3111 | + * See WpssoAbstractWpMeta->get_inherited_md_opts(). | |
| 3112 | + */ | |
| 3113 | + 'inherit_md_opts' => array( | |
| 3114 | + | |
| 3115 | + /* | |
| 3116 | + * Inherited image options. | |
| 3117 | + */ | |
| 3118 | + 'og_img_max' => null, | |
| 3119 | + 'og_img_id' => null, | |
| 3120 | + 'og_img_id_lib' => null, | |
| 3121 | + 'og_img_url' => null, | |
| 3122 | + 'pin_img_id' => null, | |
| 3123 | + 'pin_img_id_lib' => null, | |
| 3124 | + 'pin_img_url' => null, | |
| 3125 | + 'schema_img_id' => null, | |
| 3126 | + 'schema_img_id_lib' => null, | |
| 3127 | + 'schema_img_url' => null, | |
| 3128 | + 'tc_lrg_img_id' => null, | |
| 3129 | + 'tc_lrg_img_id_lib' => null, | |
| 3130 | + 'tc_lrg_img_url' => null, | |
| 3131 | + 'tc_sum_img_id' => null, | |
| 3132 | + 'tc_sum_img_id_lib' => null, | |
| 3133 | + 'tc_sum_img_url' => null, | |
| 3134 | + | |
| 3135 | + /* | |
| 3136 | + * Inherited product options. | |
| 3137 | + */ | |
| 3138 | + 'product_adult_type' => null, | |
| 3139 | + 'product_age_group' => null, | |
| 3140 | + 'product_brand' => null, | |
| 3141 | + 'product_category' => null, // Product Google Category. | |
| 3142 | + 'product_energy_efficiency' => null, | |
| 3143 | + 'product_energy_efficiency_min' => null, | |
| 3144 | + 'product_energy_efficiency_max' => null, | |
| 3145 | + 'product_min_advert_price' => null, | |
| 3146 | + 'product_mrp' => null, // Product Return Policy. | |
| 3147 | + 'product_price_type' => null, | |
| 3148 | + 'product_size_group_0' => null, | |
| 3149 | + 'product_size_group_1' => null, | |
| 3150 | + 'product_size_system' => null, | |
| 3151 | + 'product_target_gender' => null, | |
| 3152 | + | |
| 3153 | + /* | |
| 3154 | + * Inherited Schema options. | |
| 3155 | + */ | |
| 3156 | + 'schema_article_section' => null, | |
| 3157 | + ), | |
| 3158 | + | |
| 3159 | + /* | |
| 3160 | + * Inherit required properties from the product group for Google. | |
| 3161 | + * | |
| 3162 | + * Use an associative array to avoid property names from being translated. | |
| 3163 | + * | |
| 3164 | + * See WpssoJsonTypeProductGroup->filter_json_data_https_schema_org_productgroup(). | |
| 3165 | + */ | |
| 3166 | + 'inherit_variant_props' => array( | |
| 3167 | + 'name' => null, | |
| 3168 | + 'description' => null, | |
| 3169 | + 'brand' => null, | |
| 3170 | + ), | |
| 3171 | + 'excl_varies_by_props' => array( | |
| 3172 | + '@id' => null, | |
| 3173 | + '@context' => null, | |
| 3174 | + '@type' => null, | |
| 3175 | + 'url' => null, | |
| 3176 | + 'name' => null, | |
| 3177 | + 'description' => null, | |
| 3178 | + 'image' => null, | |
| 3179 | + 'subjectOf' => null, | |
| 3180 | + 'inProductGroupWithID' => null, | |
| 3181 | + ), | |
| 3182 | + | |
| 3183 | + /* | |
| 3184 | + * Organization and Place default selection. | |
| 3185 | + */ | |
| 3186 | + 'contact_is_defaults' => array( | |
| 3187 | + ), | |
| 3188 | + 'org_is_defaults' => array( | |
| 3189 | + 'schema_def_pub_org_id' => 'Default Creative Work Publisher Organization', | |
| 3190 | + 'schema_def_prov_org_id' => 'Default Creative Work Provider Organization', | |
| 3191 | + 'schema_def_fund_org_id' => 'Default Creative Work Funder Organization', | |
| 3192 | + 'schema_def_event_performer_org_id' => 'Default Event Performer Organization', | |
| 3193 | + 'schema_def_event_organizer_org_id' => 'Default Event Organizer Organization', | |
| 3194 | + 'schema_def_event_fund_org_id' => 'Default Event Funder Organization', | |
| 3195 | + 'schema_def_job_hiring_org_id' => 'Default Job Hiring Organization', | |
| 3196 | + 'schema_def_service_prov_org_id' => 'Default Service Provider Organization', | |
| 3197 | + ), | |
| 3198 | + 'place_is_defaults' => array( | |
| 3199 | + 'schema_def_event_location_id' => 'Default Event Venue', | |
| 3200 | + 'schema_def_job_location_id' => 'Default Job Location', | |
| 3201 | + ), | |
| 3202 | + | |
| 3203 | + /* | |
| 3204 | + * Validated on 2022/12/26. | |
| 3205 | + * | |
| 3206 | + * Used for the Schema Product and Offer 'hasAdultConsideration' property. | |
| 3207 | + * | |
| 3208 | + * See https://schema.org/AdultOrientedEnumeration. | |
| 3209 | + * See https://support.google.com/merchants/answer/6324508. | |
| 3210 | + */ | |
| 3211 | + 'adult_type' => array( | |
| 3212 | + 'none' => '[None]', // Removed for checklists. | |
| 3213 | + 'https://schema.org/AlcoholConsideration' => 'Alcohol', | |
| 3214 | + 'https://schema.org/DangerousGoodConsideration' => 'Dangerous Good', | |
| 3215 | + 'https://schema.org/HealthcareConsideration' => 'Healthcare', | |
| 3216 | + 'https://schema.org/NarcoticConsideration' => 'Narcotic', | |
| 3217 | + 'https://schema.org/ReducedRelevanceForChildrenConsideration' => 'Reduced Relevance for Children', | |
| 3218 | + 'https://schema.org/SexualContentConsideration' => 'Sexual Content', | |
| 3219 | + 'https://schema.org/TobaccoNicotineConsideration' => 'Tobacco Nicotine', | |
| 3220 | + 'https://schema.org/UnclassifiedAdultConsideration' => 'Unclassified Adult', | |
| 3221 | + 'https://schema.org/ViolenceConsideration' => 'Violence', | |
| 3222 | + 'https://schema.org/WeaponConsideration' => 'Weapon', | |
| 3223 | + ), | |
| 3224 | + | |
| 3225 | + /* | |
| 3226 | + * Validated on 2022/09/24. | |
| 3227 | + * | |
| 3228 | + * See https://developers.facebook.com/docs/marketing-api/catalog/reference/. | |
| 3229 | + * See https://support.google.com/merchants/answer/6324463. | |
| 3230 | + */ | |
| 3231 | + 'age_group' => array( | |
| 3232 | + 'none' => '[None]', // Removed for checklists. | |
| 3233 | + 'adult' => 'Adult (13 years old or more)', | |
| 3234 | + 'all ages' => 'All Ages (13 years old or more)', | |
| 3235 | + 'infant' => 'Infant (3–12 months old)', | |
| 3236 | + 'kids' => 'Kids (5–13 years old)', | |
| 3237 | + 'newborn' => 'Newborn (0-3 months old)', | |
| 3238 | + 'teen' => 'Teen (13 years old or more)', | |
| 3239 | + 'toddler' => 'Toddler (1–5 years old)', | |
| 3240 | + ), | |
| 3241 | + | |
| 3242 | + /* | |
| 3243 | + * Validated on 2022/12/26. | |
| 3244 | + * | |
| 3245 | + * See https://schema.org/BookFormatType. | |
| 3246 | + */ | |
| 3247 | + 'book_format' => array( | |
| 3248 | + 'none' => '[None]', // Removed for checklists. | |
| 3249 | + 'https://schema.org/AudiobookFormat' => 'Audiobook', | |
| 3250 | + 'https://schema.org/EBook' => 'eBook', | |
| 3251 | + 'https://schema.org/GraphicNovel' => 'Graphic Novel', | |
| 3252 | + 'https://schema.org/Hardcover' => 'Hardcover', | |
| 3253 | + 'https://schema.org/Paperback' => 'Paperback', | |
| 3254 | + ), | |
| 3255 | + | |
| 3256 | + /* | |
| 3257 | + * Validated on 2025/06/13. | |
| 3258 | + * | |
| 3259 | + * See https://schema.org/ContactPointOption. | |
| 3260 | + */ | |
| 3261 | + 'contact_point_option' => array( | |
| 3262 | + 'none' => '[None]', // Removed for checklists. | |
| 3263 | + 'https://schema.org/HearingImpairedSupported' => 'Hearing Impaired', | |
| 3264 | + 'https://schema.org/TollFree' => 'Toll Free', | |
| 3265 | + ), | |
| 3266 | + | |
| 3267 | + /* | |
| 3268 | + * Validated on 2026/05/25. | |
| 3269 | + * | |
| 3270 | + * See https://schema.org/DayOfWeek. | |
| 3271 | + */ | |
| 3272 | + 'day_of_week' => array( | |
| 3273 | + 'sunday' => 'https://schema.org/Sunday', | |
| 3274 | + 'monday' => 'https://schema.org/Monday', | |
| 3275 | + 'tuesday' => 'https://schema.org/Tuesday', | |
| 3276 | + 'wednesday' => 'https://schema.org/Wednesday', | |
| 3277 | + 'thursday' => 'https://schema.org/Thursday', | |
| 3278 | + 'friday' => 'https://schema.org/Friday', | |
| 3279 | + 'saturday' => 'https://schema.org/Saturday', | |
| 3280 | + 'publicholidays' => 'https://schema.org/PublicHolidays', | |
| 3281 | + ), | |
| 3282 | + | |
| 3283 | + /* | |
| 3284 | + * Validated on 2020/08/17. | |
| 3285 | + * | |
| 3286 | + * See https://developers.google.com/search/docs/data-types/job-postings. | |
| 3287 | + */ | |
| 3288 | + 'employment_type' => array( | |
| 3289 | + 'none' => '[None]', // Removed for checklists. | |
| 3290 | + 'FULL_TIME' => 'Full Time', | |
| 3291 | + 'PART_TIME' => 'Part Time', | |
| 3292 | + 'CONTRACTOR' => 'Contractor', | |
| 3293 | + 'TEMPORARY' => 'Temporary', | |
| 3294 | + 'INTERN' => 'Intern', | |
| 3295 | + 'VOLUNTEER' => 'Volunteer', | |
| 3296 | + 'PER_DIEM' => 'Per Diem', | |
| 3297 | + 'OTHER' => 'Other', | |
| 3298 | + ), | |
| 3299 | + | |
| 3300 | + /* | |
| 3301 | + * Validated on 2022/12/26. | |
| 3302 | + * | |
| 3303 | + * See https://schema.org/EUEnergyEfficiencyEnumeration. | |
| 3304 | + * See https://support.google.com/merchants/answer/7562785. | |
| 3305 | + */ | |
| 3306 | + 'energy_efficiency' => array( | |
| 3307 | + 'none' => '[None]', // Removed for checklists. | |
| 3308 | + 'https://schema.org/EUEnergyEfficiencyCategoryA3Plus' => 'A+++', | |
| 3309 | + 'https://schema.org/EUEnergyEfficiencyCategoryA2Plus' => 'A++', | |
| 3310 | + 'https://schema.org/EUEnergyEfficiencyCategoryA1Plus' => 'A+', | |
| 3311 | + 'https://schema.org/EUEnergyEfficiencyCategoryA' => 'A', | |
| 3312 | + 'https://schema.org/EUEnergyEfficiencyCategoryB' => 'B', | |
| 3313 | + 'https://schema.org/EUEnergyEfficiencyCategoryC' => 'C', | |
| 3314 | + 'https://schema.org/EUEnergyEfficiencyCategoryD' => 'D', | |
| 3315 | + 'https://schema.org/EUEnergyEfficiencyCategoryE' => 'E', | |
| 3316 | + 'https://schema.org/EUEnergyEfficiencyCategoryF' => 'F', | |
| 3317 | + 'https://schema.org/EUEnergyEfficiencyCategoryG' => 'G', | |
| 3318 | + ), | |
| 3319 | + | |
| 3320 | + /* | |
| 3321 | + * Validated on 2022/12/26. | |
| 3322 | + * | |
| 3323 | + * Used by WpssoSchema->filter_sanitize_md_options(). | |
| 3324 | + * | |
| 3325 | + * See https://schema.org/EventAttendanceModeEnumeration. | |
| 3326 | + */ | |
| 3327 | + 'event_attendance' => array( | |
| 3328 | + 'none' => '[None]', // Removed for checklists. | |
| 3329 | + 'https://schema.org/MixedEventAttendanceMode' => 'Mixed', | |
| 3330 | + 'https://schema.org/OnlineEventAttendanceMode' => 'Online', | |
| 3331 | + 'https://schema.org/OfflineEventAttendanceMode' => 'Physical Location', | |
| 3332 | + ), | |
| 3333 | + | |
| 3334 | + /* | |
| 3335 | + * Validated on 2022/12/26. | |
| 3336 | + * | |
| 3337 | + * Used by WpssoSchema->filter_sanitize_md_options(). | |
| 3338 | + * | |
| 3339 | + * See https://schema.org/EventStatusType. | |
| 3340 | + */ | |
| 3341 | + 'event_status' => array( | |
| 3342 | + 'none' => '[None]', // Removed for checklists. | |
| 3343 | + 'https://schema.org/EventCancelled' => 'Cancelled', | |
| 3344 | + 'https://schema.org/EventMovedOnline' => 'Moved Online', | |
| 3345 | + 'https://schema.org/EventPostponed' => 'Postponed', | |
| 3346 | + 'https://schema.org/EventRescheduled' => 'Rescheduled', | |
| 3347 | + 'https://schema.org/EventScheduled' => 'Scheduled', // Default. | |
| 3348 | + ), | |
| 3349 | + | |
| 3350 | + /* | |
| 3351 | + * Validated on 2022/12/26. | |
| 3352 | + * | |
| 3353 | + * Used by WpssoSchema->filter_sanitize_md_options(). | |
| 3354 | + * | |
| 3355 | + * See https://schema.org/ItemAvailability. | |
| 3356 | + */ | |
| 3357 | + 'item_availability' => array( | |
| 3358 | + 'none' => '[None]', // Removed for checklists. | |
| 3359 | + 'https://schema.org/BackOrder' => 'Back Order', // Indicates that the item is available on back order. | |
| 3360 | + 'https://schema.org/Discontinued' => 'Discontinued', | |
| 3361 | + 'https://schema.org/InStock' => 'In Stock', | |
| 3362 | + 'https://schema.org/InStoreOnly' => 'In Store Only', | |
| 3363 | + 'https://schema.org/LimitedAvailability' => 'Limited Availability', | |
| 3364 | + 'https://schema.org/OnlineOnly' => 'Online Only', | |
| 3365 | + 'https://schema.org/OutOfStock' => 'Out Of Stock', | |
| 3366 | + 'https://schema.org/PreOrder' => 'Pre-Order', | |
| 3367 | + 'https://schema.org/PreSale' => 'Pre-Sale', | |
| 3368 | + 'https://schema.org/SoldOut' => 'Sold Out', | |
| 3369 | + ), | |
| 3370 | + | |
| 3371 | + /* | |
| 3372 | + * Validated on 2022/12/26. | |
| 3373 | + * | |
| 3374 | + * Used by WpssoSchema->filter_sanitize_md_options(). | |
| 3375 | + * | |
| 3376 | + * See https://schema.org/OfferItemCondition. | |
| 3377 | + * See https://support.google.com/merchants/answer/6324469. | |
| 3378 | + */ | |
| 3379 | + 'item_condition' => array( | |
| 3380 | + 'none' => '[None]', // Removed for checklists. | |
| 3381 | + 'https://schema.org/DamagedCondition' => 'Damaged', | |
| 3382 | + 'https://schema.org/NewCondition' => 'New', | |
| 3383 | + 'https://schema.org/RefurbishedCondition' => 'Refurbished', | |
| 3384 | + 'https://schema.org/UsedCondition' => 'Used', | |
| 3385 | + ), | |
| 3386 | + | |
| 3387 | + /* | |
| 3388 | + * Validated on 2021/04/15. | |
| 3389 | + * | |
| 3390 | + * See https://developers.google.com/search/docs/data-types/job-postings. | |
| 3391 | + */ | |
| 3392 | + 'job_location_type' => array( | |
| 3393 | + 'none' => '[None]', // Removed for checklists. | |
| 3394 | + 'TELECOMMUTE' => 'Telecommute (100% Remote)', | |
| 3395 | + ), | |
| 3396 | + | |
| 3397 | + /* | |
| 3398 | + * Validated on 2025/07/09. | |
| 3399 | + * | |
| 3400 | + * See https://schema.org/RefundTypeEnumeration. | |
| 3401 | + * See https://developers.google.com/search/docs/appearance/structured-data/return-policy. | |
| 3402 | + */ | |
| 3403 | + 'refund_type' => array( | |
| 3404 | + 'https://schema.org/ExchangeRefund' => 'Exchange Refund', | |
| 3405 | + 'https://schema.org/FullRefund' => 'Full Refund', | |
| 3406 | + 'https://schema.org/StoreCreditRefund' => 'Store Credit Refund', | |
| 3407 | + ), | |
| 3408 | + | |
| 3409 | + /* | |
| 3410 | + * Validated on 2024/07/31. | |
| 3411 | + * | |
| 3412 | + * See https://schema.org/MerchantReturnEnumeration. | |
| 3413 | + * See https://developers.google.com/search/docs/appearance/structured-data/return-policy. | |
| 3414 | + */ | |
| 3415 | + 'merchant_return' => array( | |
| 3416 | + 'https://schema.org/MerchantReturnFiniteReturnWindow' => 'Limited Return Window', | |
| 3417 | + 'https://schema.org/MerchantReturnNotPermitted' => 'Not Permitted', | |
| 3418 | + 'https://schema.org/MerchantReturnUnlimitedWindow' => 'Unlimited Window', | |
| 3419 | + 'https://schema.org/MerchantReturnUnspecified' => 'Unspecified', | |
| 3420 | + ), | |
| 3421 | + | |
| 3422 | + /* | |
| 3423 | + * Validated on 2025/01/21. | |
| 3424 | + * | |
| 3425 | + * Used by WpssoSchema->filter_sanitize_md_options(). | |
| 3426 | + * | |
| 3427 | + * See https://schema.org/PriceTypeEnumeration. | |
| 3428 | + */ | |
| 3429 | + 'price_type' => array( | |
| 3430 | + 'none' => '[None]', // Removed for checklists. | |
| 3431 | + 'https://schema.org/InvoicePrice' => 'Invoice Price', | |
| 3432 | + 'https://schema.org/ListPrice' => 'List Price', | |
| 3433 | + 'https://schema.org/MSRP' => 'Manufacturer Suggested Retail Price', | |
| 3434 | + 'https://schema.org/MinimumAdvertisedPrice' => 'Minimum Advertised Price', | |
| 3435 | + 'https://schema.org/RegularPrice' => 'Regular Price', | |
| 3436 | + 'https://schema.org/SalePrice' => 'Sale Price', | |
| 3437 | + 'https://schema.org/SRP' => 'Suggested Retail Price', | |
| 3438 | + 'https://schema.org/StrikethroughPrice' => 'Strikethrough Price', | |
| 3439 | + ), | |
| 3440 | + | |
| 3441 | + /* | |
| 3442 | + * Validated on 2024/07/31. | |
| 3443 | + * | |
| 3444 | + * See https://schema.org/ReturnFeesEnumeration. | |
| 3445 | + */ | |
| 3446 | + 'return_fees' => array( | |
| 3447 | + 'https://schema.org/FreeReturn' => 'Free Return', | |
| 3448 | + 'https://schema.org/ReturnFeesCustomerResponsibility' => 'Customer Pays Shipping', | |
| 3449 | + 'https://schema.org/ReturnShippingFees' => 'Return Has Shipping Fees', | |
| 3450 | + ), | |
| 3451 | + | |
| 3452 | + /* | |
| 3453 | + * Validated on 2025/07/09. | |
| 3454 | + * | |
| 3455 | + * See https://schema.org/ReturnLabelSourceEnumeration. | |
| 3456 | + * See https://developers.google.com/search/docs/appearance/structured-data/return-policy. | |
| 3457 | + */ | |
| 3458 | + 'return_label_source' => array( | |
| 3459 | + 'https://schema.org/ReturnLabelCustomerResponsibility' => 'Customer Responsibility', | |
| 3460 | + 'https://schema.org/ReturnLabelDownloadAndPrint' => 'Download And Print', | |
| 3461 | + 'https://schema.org/ReturnLabelInBox' => 'Label In Box', | |
| 3462 | + ), | |
| 3463 | + | |
| 3464 | + /* | |
| 3465 | + * Validated on 2023/06/02. | |
| 3466 | + * | |
| 3467 | + * See https://schema.org/ReturnMethodEnumeration. | |
| 3468 | + * See https://developers.google.com/search/docs/appearance/structured-data/merchant-listing#returns. | |
| 3469 | + */ | |
| 3470 | + 'return_method' => array( | |
| 3471 | + 'https://schema.org/ReturnAtKiosk' => 'At Kiosk', | |
| 3472 | + 'https://schema.org/ReturnByMail' => 'By Mail', | |
| 3473 | + 'https://schema.org/ReturnInStore' => 'In Store', | |
| 3474 | + ), | |
| 3475 | + | |
| 3476 | + /* | |
| 3477 | + * Validated on 2021/11/09. | |
| 3478 | + * | |
| 3479 | + * Used by WpssoSchema->filter_sanitize_md_options(). | |
| 3480 | + * | |
| 3481 | + * See https://support.google.com/merchants/answer/6324497. | |
| 3482 | + */ | |
| 3483 | + 'size_group' => array( | |
| 3484 | + 'none' => '[None]', // Removed for checklists. | |
| 3485 | + 'https://schema.org/WearableSizeGroupRegular' => 'Regular', | |
| 3486 | + 'https://schema.org/WearableSizeGroupPetite' => 'Petite', | |
| 3487 | + 'https://schema.org/WearableSizeGroupPlus' => 'Plus', | |
| 3488 | + 'https://schema.org/WearableSizeGroupTall' => 'Tall', | |
| 3489 | + 'https://schema.org/WearableSizeGroupBig' => 'Big', | |
| 3490 | + 'https://schema.org/WearableSizeGroupMaternity' => 'Maternity', | |
| 3491 | + ), | |
| 3492 | + | |
| 3493 | + /* | |
| 3494 | + * Validated on 2022/12/26. | |
| 3495 | + * | |
| 3496 | + * Used by WpssoSchema->filter_sanitize_md_options(). | |
| 3497 | + * | |
| 3498 | + * Not supposed by Google: | |
| 3499 | + * | |
| 3500 | + * https://schema.org/WearableSizeSystemContinental | |
| 3501 | + * https://schema.org/WearableSizeSystemEN13402 | |
| 3502 | + * https://schema.org/WearableSizeSystemGS1 | |
| 3503 | + * | |
| 3504 | + * See https://support.google.com/merchants/answer/6324502. | |
| 3505 | + */ | |
| 3506 | + 'size_system' => array( | |
| 3507 | + 'none' => '[None]', // Removed for checklists. | |
| 3508 | + 'https://schema.org/WearableSizeSystemAU' => 'AU', | |
| 3509 | + 'https://schema.org/WearableSizeSystemBR' => 'BR', | |
| 3510 | + 'https://schema.org/WearableSizeSystemCN' => 'CN', | |
| 3511 | + 'https://schema.org/WearableSizeSystemDE' => 'DE', | |
| 3512 | + 'https://schema.org/WearableSizeSystemEurope' => 'EU', | |
| 3513 | + 'https://schema.org/WearableSizeSystemFR' => 'FR', | |
| 3514 | + 'https://schema.org/WearableSizeSystemIT' => 'IT', | |
| 3515 | + 'https://schema.org/WearableSizeSystemJP' => 'JP', | |
| 3516 | + 'https://schema.org/WearableSizeSystemMX' => 'MX', | |
| 3517 | + 'https://schema.org/WearableSizeSystemUK' => 'UK', | |
| 3518 | + 'https://schema.org/WearableSizeSystemUS' => 'US', | |
| 3519 | + ), | |
| 3520 | + | |
| 3521 | + /* | |
| 3522 | + * Validated on 2020/08/17. | |
| 3523 | + * | |
| 3524 | + * See https://developers.facebook.com/docs/marketing-api/catalog/reference/. | |
| 3525 | + * See https://schema.org/suggestedGender. | |
| 3526 | + * See https://support.google.com/merchants/answer/6324479. | |
| 3527 | + */ | |
| 3528 | + 'target_gender' => array( | |
| 3529 | + 'none' => '[None]', // Removed for checklists. | |
| 3530 | + 'female' => 'Female', | |
| 3531 | + 'male' => 'Male', | |
| 3532 | + 'unisex' => 'Unisex', | |
| 3533 | + ), | |
| 3534 | + | |
| 3535 | + /* | |
| 3536 | + * The default warning is 90% of the maximum length. | |
| 3537 | + * | |
| 3538 | + * See sucomTextLen() in wpsso/live/js/com/jquery-admin-page.js. | |
| 3539 | + */ | |
| 3540 | + 'input_limits' => array( | |
| 3541 | + | |
| 3542 | + /* | |
| 3543 | + * While Google does not specify a recommended length for title tags, most desktop and | |
| 3544 | + * mobile browsers are able to display the first 50–60 characters of a title tag. If you | |
| 3545 | + * keep your titles under 60 characters, our research suggests that you can expect about | |
| 3546 | + * 90% of your titles to display properly in the SERPs. (There's no exact character limit | |
| 3547 | + * because characters can vary in pixel width. Google SERPs can usually display up to 600 | |
| 3548 | + * pixels.) While writing concise titles is important for human readability and | |
| 3549 | + * comprehension, Google’s spiders will take into account the entire title tag (within | |
| 3550 | + * reason) when they crawl the page, even if it is not displayed in full in the SERPs. | |
| 3551 | + * | |
| 3552 | + * See https://moz.com/learn/seo/title-tag. | |
| 3553 | + */ | |
| 3554 | + 'seo_title' => array( | |
| 3555 | + 'min' => 10, | |
| 3556 | + 'warn' => 60, | |
| 3557 | + 'max' => 70, | |
| 3558 | + ), | |
| 3559 | + | |
| 3560 | + /* | |
| 3561 | + * Meta descriptions can technically be any length, but Google generally truncates snippets | |
| 3562 | + * to ~155-160 characters. It's best to keep meta descriptions long enough that they're | |
| 3563 | + * sufficiently descriptive, so we recommend descriptions between 50 and 160 characters. | |
| 3564 | + * | |
| 3565 | + * See https://moz.com/learn/seo/meta-description. | |
| 3566 | + */ | |
| 3567 | + 'seo_desc' => array( | |
| 3568 | + 'min' => 50, | |
| 3569 | + 'warn' => 150, | |
| 3570 | + 'max' => 180, | |
| 3571 | + ), | |
| 3572 | + | |
| 3573 | + /* | |
| 3574 | + * Keep it short to prevent overflow. There’s no official guidance on this, but 40 | |
| 3575 | + * characters for mobile and 60 for desktop is roughly the sweet spot. | |
| 3576 | + * | |
| 3577 | + * See https://ahrefs.com/blog/open-graph-meta-tags/. | |
| 3578 | + */ | |
| 3579 | + 'og_title' => array( | |
| 3580 | + 'warn' => 40, | |
| 3581 | + 'max' => 70, | |
| 3582 | + ), | |
| 3583 | + | |
| 3584 | + /* | |
| 3585 | + * Keep it short and sweet. Facebook recommends 2–4 sentences, but that often truncates. | |
| 3586 | + * | |
| 3587 | + * See https://ahrefs.com/blog/open-graph-meta-tags/. | |
| 3588 | + */ | |
| 3589 | + 'og_desc' => array( | |
| 3590 | + 'warn' => 200, | |
| 3591 | + 'max' => 300, | |
| 3592 | + ), | |
| 3593 | + 'schema_title' => array( | |
| 3594 | + 'min' => 10, | |
| 3595 | + 'warn' => 60, | |
| 3596 | + 'max' => 70, | |
| 3597 | + ), | |
| 3598 | + 'schema_title_alt' => array( | |
| 3599 | + 'max' => 110, | |
| 3600 | + ), | |
| 3601 | + 'schema_title_bc' => array( | |
| 3602 | + 'max' => 70, | |
| 3603 | + ), | |
| 3604 | + | |
| 3605 | + /* | |
| 3606 | + * The headline of the article. Headlines should not exceed 110 characters. For AMP | |
| 3607 | + * stories, the headline should match the text in the first cover page in the AMP Story. | |
| 3608 | + * | |
| 3609 | + * See https://developers.google.com/search/docs/advanced/structured-data/article. | |
| 3610 | + */ | |
| 3611 | + 'schema_headline' => array( | |
| 3612 | + 'max' => 110, | |
| 3613 | + ), | |
| 3614 | + 'schema_desc' => array( | |
| 3615 | + 'min' => 50, | |
| 3616 | + 'warn' => 150, | |
| 3617 | + 'max' => 300, | |
| 3618 | + ), | |
| 3619 | + 'schema_text' => array( | |
| 3620 | + 'max' => 10000, | |
| 3621 | + ), | |
| 3622 | + 'pin_img_desc' => array( | |
| 3623 | + 'warn' => 100, | |
| 3624 | + 'max' => 300, | |
| 3625 | + ), | |
| 3626 | + 'tc_title' => array( | |
| 3627 | + 'max' => 70, | |
| 3628 | + ), | |
| 3629 | + 'tc_desc' => array( | |
| 3630 | + 'max' => 200, | |
| 3631 | + ), | |
| 3632 | + ), | |
| 3633 | + ), // End of 'form' array. | |
| 3634 | + | |
| 3635 | + /* | |
| 3636 | + * Reference for meta tags and Schema property values (limits, conversions, etc.). | |
| 3637 | + */ | |
| 3638 | + 'head' => array( | |
| 3639 | + 'limit' => array( | |
| 3640 | + 'schema_1x1_img_ratio' => 1.000, | |
| 3641 | + 'schema_4x3_img_ratio' => 1.333, | |
| 3642 | + 'schema_16x9_img_ratio' => 1.778, | |
| 3643 | + 'org_banner_width' => 600, | |
| 3644 | + 'org_banner_height' => 60, | |
| 3645 | + ), | |
| 3646 | + 'limit_min' => array( | |
| 3647 | + 'og_desc_len' => 160, | |
| 3648 | + 'og_img_width' => 200, | |
| 3649 | + 'og_img_height' => 200, | |
| 3650 | + 'schema_desc_len' => 156, | |
| 3651 | + 'seo_desc_len' => 156, | |
| 3652 | + 'tc_desc_len' => 160, | |
| 3653 | + 'tc_sum_img_width' => 144, | |
| 3654 | + 'tc_sum_img_height' => 144, | |
| 3655 | + 'tc_lrg_img_width' => 300, | |
| 3656 | + 'tc_lrg_img_height' => 157, | |
| 3657 | + 'schema_1x1_img_width' => 1200, | |
| 3658 | + 'schema_1x1_img_height' => 1200, | |
| 3659 | + 'schema_4x3_img_width' => 1200, | |
| 3660 | + 'schema_4x3_img_height' => 900, | |
| 3661 | + 'schema_16x9_img_width' => 1200, | |
| 3662 | + 'schema_16x9_img_height' => 675, | |
| 3663 | + 'thumb_img_width' => 300, | |
| 3664 | + 'thumb_img_height' => 200, | |
| 3665 | + 'org_logo_width' => 112, | |
| 3666 | + 'org_logo_height' => 112, | |
| 3667 | + ), | |
| 3668 | + 'limit_max' => array( | |
| 3669 | + 'og_img_ratio' => 3.000, | |
| 3670 | + 'schema_headline_len' => 110, | |
| 3671 | + 'tc_sum_img_width' => 4096, | |
| 3672 | + 'tc_sum_img_height' => 4096, | |
| 3673 | + 'tc_lrg_img_width' => 4096, | |
| 3674 | + 'tc_lrg_img_height' => 4096, | |
| 3675 | + ), | |
| 3676 | + | |
| 3677 | + /* | |
| 3678 | + * Hard-code the Open Graph type based on the WordPress post type. | |
| 3679 | + * | |
| 3680 | + * Example, if the post type is 'product', hard-code the Open Graph type to 'product'. | |
| 3681 | + */ | |
| 3682 | + 'og_type_by_post_type' => array( | |
| 3683 | + 'book' => 'book', | |
| 3684 | + 'download' => 'product', | |
| 3685 | + 'organization' => 'website', | |
| 3686 | + 'place' => 'place', | |
| 3687 | + 'product' => 'product', | |
| 3688 | + 'profile' => 'profile', | |
| 3689 | + 'question' => 'article', | |
| 3690 | + ), | |
| 3691 | + | |
| 3692 | + /* | |
| 3693 | + * Hard-code the Open Graph type based on the Schema type. | |
| 3694 | + * | |
| 3695 | + * Example, if the Schema type is 'product', hard-code the Open Graph type to 'product'. | |
| 3696 | + */ | |
| 3697 | + 'og_type_by_schema_type' => array( | |
| 3698 | + 'article' => 'article', | |
| 3699 | + 'book' => 'book', | |
| 3700 | + 'webpage.checkout' => 'website', | |
| 3701 | + 'event' => 'product', | |
| 3702 | + 'item.list' => 'website', | |
| 3703 | + 'place' => 'place', // Check for Schema place before Schema organization. | |
| 3704 | + 'organization' => 'website', // Check for Schema place before Schema organization. | |
| 3705 | + 'product' => 'product', // Allows for product offer options. | |
| 3706 | + 'question' => 'article', | |
| 3707 | + 'review' => 'article', | |
| 3708 | + 'service' => 'product', | |
| 3709 | + 'software.application' => 'product', // Allows for product offer options. | |
| 3710 | + 'webpage.profile' => 'profile', | |
| 3711 | + 'website' => 'website', | |
| 3712 | + ), | |
| 3713 | + | |
| 3714 | + 'og_type_ns' => array( // See https://ogp.me/#types. | |
| 3715 | + 'article' => 'https://ogp.me/ns/article#', | |
| 3716 | + 'book' => 'https://ogp.me/ns/book#', | |
| 3717 | + 'books.author' => 'https://ogp.me/ns/books#', | |
| 3718 | + 'books.book' => 'https://ogp.me/ns/books#', | |
| 3719 | + 'books.genre' => 'https://ogp.me/ns/books#', | |
| 3720 | + 'business.business' => 'https://ogp.me/ns/business#', | |
| 3721 | + 'music.album' => 'https://ogp.me/ns/music#', | |
| 3722 | + 'music.playlist' => 'https://ogp.me/ns/music#', | |
| 3723 | + 'music.radio_station' => 'https://ogp.me/ns/music#', | |
| 3724 | + 'music.song' => 'https://ogp.me/ns/music#', | |
| 3725 | + 'place' => 'https://ogp.me/ns/place#', // Supported by Facebook and Pinterest. | |
| 3726 | + 'product' => 'https://ogp.me/ns/product#', // Supported by Facebook and Pinterest. | |
| 3727 | + 'profile' => 'https://ogp.me/ns/profile#', | |
| 3728 | + 'video.episode' => 'https://ogp.me/ns/video#', | |
| 3729 | + 'video.movie' => 'https://ogp.me/ns/video#', | |
| 3730 | + 'video.other' => 'https://ogp.me/ns/video#', | |
| 3731 | + 'video.tv_show' => 'https://ogp.me/ns/video#', | |
| 3732 | + 'website' => 'https://ogp.me/ns/website#', | |
| 3733 | + ), | |
| 3734 | + 'og_type_ns_compat' => array( | |
| 3735 | + 'article' => 'https://ogp.me/ns/article#', | |
| 3736 | + 'book' => 'https://ogp.me/ns/book#', | |
| 3737 | + 'place' => 'https://ogp.me/ns/place#', // Supported by Facebook and Pinterest. | |
| 3738 | + 'product' => 'https://ogp.me/ns/product#', // Supported by Facebook and Pinterest. | |
| 3739 | + 'profile' => 'https://ogp.me/ns/profile#', | |
| 3740 | + 'website' => 'https://ogp.me/ns/website#', | |
| 3741 | + ), | |
| 3742 | + | |
| 3743 | + /* | |
| 3744 | + * An array of Open Graph types, their meta tags, and their associated metadata keys. | |
| 3745 | + * | |
| 3746 | + * See WpssoOpengraph->add_data_og_type_md(). | |
| 3747 | + * See WpssoOpengraph->sanitize_mt_array(). | |
| 3748 | + * See https://developers.facebook.com/docs/reference/opengraph/. | |
| 3749 | + */ | |
| 3750 | + 'og_type_mt' => array( | |
| 3751 | + | |
| 3752 | + /* | |
| 3753 | + * See https://developers.facebook.com/docs/reference/opengraph/object-type/article/. | |
| 3754 | + */ | |
| 3755 | + 'article' => array( | |
| 3756 | + 'article:author' => '', | |
| 3757 | + 'article:publisher' => '', | |
| 3758 | + 'article:published_time' => '', | |
| 3759 | + 'article:modified_time' => '', | |
| 3760 | + 'article:expiration_time' => '', | |
| 3761 | + 'article:section' => 'schema_article_section', | |
| 3762 | + 'article:tag' => '', | |
| 3763 | + ), | |
| 3764 | + 'book' => array( | |
| 3765 | + 'book:author' => 'schema_book_author_url', | |
| 3766 | + 'book:isbn' => 'schema_book_isbn', | |
| 3767 | + 'book:release_date' => '', | |
| 3768 | + 'book:tag' => '', | |
| 3769 | + ), | |
| 3770 | + 'books.author' => array( | |
| 3771 | + 'books:book' => '', | |
| 3772 | + 'books:gender' => '', | |
| 3773 | + 'books:genre' => '', | |
| 3774 | + 'books:official_site' => '', | |
| 3775 | + ), | |
| 3776 | + 'books.book' => array( | |
| 3777 | + 'books:author' => '', | |
| 3778 | + 'books:genre' => '', | |
| 3779 | + 'books:initial_release_date' => '', | |
| 3780 | + 'books:isbn' => '', | |
| 3781 | + 'books:language:locale' => '', | |
| 3782 | + 'books:language:alternate' => '', | |
| 3783 | + 'books:page_count' => '', | |
| 3784 | + 'books:rating:value' => '', | |
| 3785 | + 'books:rating:scale' => '', | |
| 3786 | + 'books:rating:normalized_value' => '', | |
| 3787 | + 'books:release_date' => '', | |
| 3788 | + 'books:sample' => '', | |
| 3789 | + ), | |
| 3790 | + 'books.genre' => array( | |
| 3791 | + 'books:author' => '', | |
| 3792 | + 'books:book' => '', | |
| 3793 | + 'books:canonical_name' => '', | |
| 3794 | + ), | |
| 3795 | + 'business.business' => array( | |
| 3796 | + 'business:contact_data:street_address' => '', | |
| 3797 | + 'business:contact_data:locality' => '', | |
| 3798 | + 'business:contact_data:region' => '', | |
| 3799 | + 'business:contact_data:postal_code' => '', | |
| 3800 | + 'business:contact_data:country_name' => '', | |
| 3801 | + 'business:contact_data:email' => '', | |
| 3802 | + 'business:contact_data:phone_number' => '', | |
| 3803 | + 'business:contact_data:phone_number' => '', | |
| 3804 | + 'business:contact_data:website' => '', | |
| 3805 | + 'business:hours:day' => '', | |
| 3806 | + 'business:hours:start' => '', | |
| 3807 | + 'business:hours:end' => '', | |
| 3808 | + ), | |
| 3809 | + 'music.album' => array( | |
| 3810 | + 'music:song' => '', | |
| 3811 | + 'music:song:disc' => '', | |
| 3812 | + 'music:song:track' => '', | |
| 3813 | + 'music:musician' => '', | |
| 3814 | + 'music:release_date' => '', | |
| 3815 | + ), | |
| 3816 | + 'music.playlist' => array( | |
| 3817 | + 'music:creator' => '', | |
| 3818 | + 'music:song' => '', | |
| 3819 | + 'music:song:disc' => '', | |
| 3820 | + 'music:song:track' => '', | |
| 3821 | + ), | |
| 3822 | + 'music.radio_station' => array( | |
| 3823 | + 'music:creator' => '', | |
| 3824 | + ), | |
| 3825 | + 'music.song' => array( | |
| 3826 | + 'music:album' => '', | |
| 3827 | + 'music:album:disc' => '', | |
| 3828 | + 'music:album:track' => '', | |
| 3829 | + 'music:duration' => '', | |
| 3830 | + 'music:musician' => '', | |
| 3831 | + ), | |
| 3832 | + 'place' => array( | |
| 3833 | + 'place:location:latitude' => '', | |
| 3834 | + 'place:location:longitude' => '', | |
| 3835 | + 'place:location:altitude' => '', | |
| 3836 | + 'place:street_address' => '', | |
| 3837 | + 'place:locality' => '', | |
| 3838 | + 'place:region' => '', | |
| 3839 | + 'place:postal_code' => '', | |
| 3840 | + 'place:country_name' => '', | |
| 3841 | + ), | |
| 3842 | + | |
| 3843 | + /* | |
| 3844 | + * See https://developers.facebook.com/docs/marketing-api/catalog/reference/. | |
| 3845 | + */ | |
| 3846 | + 'product' => array( | |
| 3847 | + 'product:adult_type' => 'product_adult_type', // Internal meta tag. | |
| 3848 | + 'product:age_group' => 'product_age_group', | |
| 3849 | + 'product:availability' => 'product_avail', | |
| 3850 | + 'product:awards' => '', // Internal meta tag. | |
| 3851 | + 'product:brand' => 'product_brand', | |
| 3852 | + 'product:category' => 'product_category', // Product Google Category. | |
| 3853 | + 'product:color' => 'product_color', | |
| 3854 | + 'product:condition' => 'product_condition', | |
| 3855 | + 'product:ean' => 'product_gtin13', | |
| 3856 | + 'product:energy_efficiency:value' => 'product_energy_efficiency', // Internal meta tag. | |
| 3857 | + 'product:energy_efficiency:min_value' => 'product_energy_efficiency_min', // Internal meta tag. | |
| 3858 | + 'product:energy_efficiency:max_value' => 'product_energy_efficiency_max', // Internal meta tag. | |
| 3859 | + 'product:expiration_time' => '', | |
| 3860 | + 'product:fluid_volume:value' => 'product_fluid_volume_value', // Internal meta tag. | |
| 3861 | + 'product:fluid_volume:units' => 'product_fluid_volume_units', // Internal meta tag. | |
| 3862 | + 'product:gtin14' => 'product_gtin14', // Internal meta tag. | |
| 3863 | + 'product:gtin13' => 'product_gtin13', // Internal meta tag. | |
| 3864 | + 'product:gtin12' => 'product_gtin12', // Internal meta tag. | |
| 3865 | + 'product:gtin8' => 'product_gtin8', // Internal meta tag. | |
| 3866 | + 'product:gtin' => 'product_gtin', // Internal meta tag. | |
| 3867 | + 'product:height:value' => 'product_height_value', // Internal meta tag. | |
| 3868 | + 'product:height:units' => 'product_height_units', // Internal meta tag. | |
| 3869 | + 'product:isbn' => 'product_isbn', | |
| 3870 | + 'product:item_group_id' => '', // Product variant group ID. | |
| 3871 | + 'product:length:value' => 'product_length_value', // Internal meta tag. | |
| 3872 | + 'product:length:units' => 'product_length_units', // Internal meta tag. | |
| 3873 | + 'product:material' => 'product_material', | |
| 3874 | + 'product:mfr_part_no' => 'product_mfr_part_no', // Product MPN. | |
| 3875 | + 'product:min_advert_price:amount' => 'product_min_advert_price', // Internal meta tag. | |
| 3876 | + 'product:min_advert_price:currency' => '', // Internal meta tag. | |
| 3877 | + 'product:mrp_id' => 'product_mrp', // Internal meta tag. | |
| 3878 | + 'product:original_price:amount' => '', // Used by WooCommerce module. | |
| 3879 | + 'product:original_price:currency' => '', // Used by WooCommerce module. | |
| 3880 | + 'product:pattern' => 'product_pattern', | |
| 3881 | + 'product:pretax_price:amount' => '', // Used by WooCommerce module. | |
| 3882 | + 'product:pretax_price:currency' => '', // Used by WooCommerce module. | |
| 3883 | + 'product:price:type' => 'product_price_type', // Internal meta tag. | |
| 3884 | + 'product:price:amount' => 'product_price', | |
| 3885 | + 'product:price:currency' => 'product_currency', | |
| 3886 | + 'product:purchase_limit' => '', | |
| 3887 | + 'product:retailer_category' => '', // Internal meta tag. | |
| 3888 | + 'product:retailer_item_id' => '', // Product ID. | |
| 3889 | + 'product:retailer_part_no' => 'product_retailer_part_no', // Product SKU. | |
| 3890 | + 'product:sale_price:amount' => '', // Used by WooCommerce module. | |
| 3891 | + 'product:sale_price:currency' => '', // Used by WooCommerce module. | |
| 3892 | + 'product:sale_price_dates:start' => '', // Used by WooCommerce module. | |
| 3893 | + 'product:sale_price_dates:end' => '', // Used by WooCommerce module. | |
| 3894 | + 'product:shipping_cost:amount' => '', | |
| 3895 | + 'product:shipping_cost:currency' => '', | |
| 3896 | + 'product:shipping_height:value' => 'product_shipping_height_value', // Internal meta tag. | |
| 3897 | + 'product:shipping_height:units' => 'product_shipping_height_units', // Internal meta tag. | |
| 3898 | + 'product:shipping_length:value' => 'product_shipping_length_value', // Internal meta tag. | |
| 3899 | + 'product:shipping_length:units' => 'product_shipping_length_units', // Internal meta tag. | |
| 3900 | + 'product:shipping_weight:value' => 'product_shipping_weight_value', | |
| 3901 | + 'product:shipping_weight:units' => 'product_shipping_weight_units', | |
| 3902 | + 'product:shipping_width:value' => 'product_shipping_width_value', // Internal meta tag. | |
| 3903 | + 'product:shipping_width:units' => 'product_shipping_width_units', // Internal meta tag. | |
| 3904 | + 'product:size' => 'product_size', | |
| 3905 | + 'product:size_group' => 'product_size_group', // Internal meta tag. | |
| 3906 | + 'product:size_system' => 'product_size_system', // Internal meta tag. | |
| 3907 | + 'product:target_gender' => 'product_target_gender', | |
| 3908 | + 'product:upc' => 'product_gtin12', | |
| 3909 | + 'product:weight:value' => 'product_weight_value', | |
| 3910 | + 'product:weight:units' => 'product_weight_units', | |
| 3911 | + 'product:width:value' => 'product_width_value', // Internal meta tag. | |
| 3912 | + 'product:width:units' => 'product_width_units', // Internal meta tag. | |
| 3913 | + ), | |
| 3914 | + 'profile' => array( | |
| 3915 | + 'profile:first_name' => '', | |
| 3916 | + 'profile:last_name' => '', | |
| 3917 | + 'profile:username' => '', | |
| 3918 | + 'profile:gender' => '', | |
| 3919 | + ), | |
| 3920 | + 'video.episode' => array( | |
| 3921 | + 'video:actor' => '', | |
| 3922 | + 'video:actor:role' => '', | |
| 3923 | + 'video:director' => '', | |
| 3924 | + 'video:writer' => '', | |
| 3925 | + 'video:duration' => '', | |
| 3926 | + 'video:release_date' => '', | |
| 3927 | + 'video:tag' => '', | |
| 3928 | + 'video:series' => '', | |
| 3929 | + ), | |
| 3930 | + 'video.movie' => array( | |
| 3931 | + 'video:actor' => '', | |
| 3932 | + 'video:actor:role' => '', | |
| 3933 | + 'video:director' => '', | |
| 3934 | + 'video:writer' => '', | |
| 3935 | + 'video:duration' => '', | |
| 3936 | + 'video:release_date' => '', | |
| 3937 | + 'video:tag' => '', | |
| 3938 | + ), | |
| 3939 | + 'video.other' => array( | |
| 3940 | + 'video:actor' => '', | |
| 3941 | + 'video:actor:role' => '', | |
| 3942 | + 'video:director' => '', | |
| 3943 | + 'video:writer' => '', | |
| 3944 | + 'video:duration' => '', | |
| 3945 | + 'video:release_date' => '', | |
| 3946 | + 'video:tag' => '', | |
| 3947 | + ), | |
| 3948 | + 'video.tv_show' => array( | |
| 3949 | + 'video:actor' => '', | |
| 3950 | + 'video:actor:role' => '', | |
| 3951 | + 'video:director' => '', | |
| 3952 | + 'video:writer' => '', | |
| 3953 | + 'video:duration' => '', | |
| 3954 | + 'video:release_date' => '', | |
| 3955 | + 'video:tag' => '', | |
| 3956 | + ), | |
| 3957 | + ), | |
| 3958 | + 'og_content_map' => array( // Element of 'head' array. | |
| 3959 | + | |
| 3960 | + /* | |
| 3961 | + * Validated on 2021/07/22. | |
| 3962 | + * | |
| 3963 | + * See https://developers.facebook.com/docs/marketing-api/catalog/reference/#og-tags. | |
| 3964 | + * | |
| 3965 | + * Required. Current availability of the item: in stock, out of stock, available for order, | |
| 3966 | + * discontinued. Supports pixel-based catalogs. | |
| 3967 | + */ | |
| 3968 | + 'product:availability' => array( | |
| 3969 | + 'https://schema.org/BackOrder' => 'available for order', | |
| 3970 | + 'https://schema.org/Discontinued' => 'discontinued', | |
| 3971 | + 'https://schema.org/InStock' => 'in stock', | |
| 3972 | + 'https://schema.org/InStoreOnly' => 'in stock', | |
| 3973 | + 'https://schema.org/LimitedAvailability' => 'in stock', | |
| 3974 | + 'https://schema.org/OnlineOnly' => 'in stock', | |
| 3975 | + 'https://schema.org/OutOfStock' => 'out of stock', | |
| 3976 | + 'https://schema.org/PreOrder' => 'available for order', | |
| 3977 | + 'https://schema.org/PreSale' => 'available for order', | |
| 3978 | + 'https://schema.org/SoldOut' => 'out of stock', | |
| 3979 | + ), | |
| 3980 | + | |
| 3981 | + /* | |
| 3982 | + * Validated on 2020/08/17. | |
| 3983 | + * | |
| 3984 | + * See https://developers.facebook.com/docs/marketing-api/catalog/reference/#og-tags. | |
| 3985 | + * | |
| 3986 | + * Required. Current condition of the item: new, refurbished, used. Supports pixel-based | |
| 3987 | + * catalogs. | |
| 3988 | + */ | |
| 3989 | + 'product:condition' => array( | |
| 3990 | + 'https://schema.org/DamagedCondition' => 'used', | |
| 3991 | + 'https://schema.org/NewCondition' => 'new', | |
| 3992 | + 'https://schema.org/RefurbishedCondition' => 'refurbished', | |
| 3993 | + 'https://schema.org/UsedCondition' => 'used', | |
| 3994 | + ), | |
| 3995 | + ), | |
| 3996 | + 'schema_type' => array( // Element of 'head' array. | |
| 3997 | + 'thing' => array( // Most generic type. | |
| 3998 | + 'creative.work' => array( // Creative work, including books, movies, photographs, software programs, etc. | |
| 3999 | + 'amp.story' => 'https://schema.org/AmpStory', | |
| 4000 | + 'article' => array( | |
| 4001 | + 'article' => 'https://schema.org/Article', | |
| 4002 | + 'article.advertiser.content' => 'https://schema.org/AdvertiserContentArticle', | |
| 4003 | + 'article.news' => array( | |
| 4004 | + 'article.news' => 'https://schema.org/NewsArticle', | |
| 4005 | + 'article.news.analysis' => 'https://schema.org/AnalysisNewsArticle', | |
| 4006 | + 'article.news.ask.public' => 'https://schema.org/AskPublicNewsArticle', | |
| 4007 | + 'article.news.background' => 'https://schema.org/BackgroundNewsArticle', | |
| 4008 | + 'article.news.opinion' => 'https://schema.org/OpinionNewsArticle', | |
| 4009 | + 'article.news.reportage' => 'https://schema.org/ReportageNewsArticle', | |
| 4010 | + 'article.news.review' => 'https://schema.org/ReviewNewsArticle', | |
| 4011 | + ), | |
| 4012 | + 'article.satirical' => 'https://schema.org/SatiricalArticle', | |
| 4013 | + 'article.scholarly' => array( | |
| 4014 | + 'article.scholarly' => 'https://schema.org/ScholarlyArticle', | |
| 4015 | + 'article.scholarly.medical' => 'https://schema.org/MedicalScholarlyArticle', | |
| 4016 | + ), | |
| 4017 | + 'article.tech' => array( | |
| 4018 | + 'article.tech' => 'https://schema.org/TechArticle', | |
| 4019 | + 'article.tech.reference.api' => 'https://schema.org/APIReference', | |
| 4020 | + ), | |
| 4021 | + 'report' => 'https://schema.org/Report', | |
| 4022 | + 'social.media.posting' => array( | |
| 4023 | + 'blog.posting' => array( | |
| 4024 | + 'blog.posting' => 'https://schema.org/BlogPosting', | |
| 4025 | + 'blog.posting.live' => 'https://schema.org/LiveBlogPosting', | |
| 4026 | + ), | |
| 4027 | + 'discussion.forum.posting' => 'https://schema.org/DiscussionForumPosting', | |
| 4028 | + 'social.media.posting' => 'https://schema.org/SocialMediaPosting', | |
| 4029 | + ), | |
| 4030 | + ), | |
| 4031 | + 'blog' => 'https://schema.org/Blog', | |
| 4032 | + 'book' => array( | |
| 4033 | + 'book' => 'https://schema.org/Book', | |
| 4034 | + 'book.audio' => 'https://schema.org/Audiobook', | |
| 4035 | + ), | |
| 4036 | + 'claim' => 'https://schema.org/Claim', | |
| 4037 | + 'clip' => 'https://schema.org/Clip', | |
| 4038 | + 'comic.story' => 'https://schema.org/ComicStory', | |
| 4039 | + 'comment' => array( | |
| 4040 | + 'answer' => 'https://schema.org/Answer', | |
| 4041 | + 'comment' => 'https://schema.org/Comment', | |
| 4042 | + 'question' => 'https://schema.org/Question', | |
| 4043 | + ), | |
| 4044 | + 'conversation' => 'https://schema.org/Conversation', | |
| 4045 | + 'course' => 'https://schema.org/Course', | |
| 4046 | + 'creative.work' => 'https://schema.org/CreativeWork', | |
| 4047 | + 'creative.work.season' => array( | |
| 4048 | + 'creative.work.season' => 'https://schema.org/CreativeWorkSeason', | |
| 4049 | + 'podcast.season' => 'https://schema.org/PodcastSeason', | |
| 4050 | + 'radio.season' => 'https://schema.org/RadioSeason', | |
| 4051 | + 'tv.season' => 'https://schema.org/TVSeason', | |
| 4052 | + ), | |
| 4053 | + 'creative.work.series' => array( | |
| 4054 | + 'book.series' => 'https://schema.org/BookSeries', | |
| 4055 | + 'creative.work.series' => 'https://schema.org/CreativeWorkSeries', | |
| 4056 | + 'movie.series' => 'https://schema.org/MovieSeries', | |
| 4057 | + 'periodical' => 'https://schema.org/Periodical', | |
| 4058 | + 'podcast.series' => 'https://schema.org/PodcastSeries', | |
| 4059 | + 'radio.series' => 'https://schema.org/RadioSeries', | |
| 4060 | + 'tv.series' => 'https://schema.org/TVSeries', | |
| 4061 | + 'video.game.series' => 'https://schema.org/VideoGameSeries', | |
| 4062 | + ), | |
| 4063 | + 'data.catalog' => 'https://schema.org/DataCatalog', | |
| 4064 | + 'data.set' => 'https://schema.org/DataSet', | |
| 4065 | + 'digital.document' => 'https://schema.org/DigitalDocument', | |
| 4066 | + 'episode' => array( | |
| 4067 | + 'episode' => 'https://schema.org/Episode', | |
| 4068 | + 'episode.podcast' => 'https://schema.org/PodcastEpisode', | |
| 4069 | + 'episode.radio' => 'https://schema.org/RadioEpisode', | |
| 4070 | + 'episode.tv' => 'https://schema.org/TVEpisode', | |
| 4071 | + ), | |
| 4072 | + 'game' => 'https://schema.org/Game', | |
| 4073 | + 'howto' => array( | |
| 4074 | + 'howto' => 'https://schema.org/HowTo', | |
| 4075 | + 'recipe' => 'https://schema.org/Recipe', // Recipe is a sub-type of HowTo. | |
| 4076 | + ), | |
| 4077 | + 'learning.resource' => array( | |
| 4078 | + 'learning.course' => 'https://schema.org/Course', | |
| 4079 | + 'learning.resource' => 'https://schema.org/LearningResource', | |
| 4080 | + 'learning.quiz' => 'https://schema.org/Quiz', | |
| 4081 | + 'learning.syllabus' => 'https://schema.org/Syllabus', | |
| 4082 | + ), | |
| 4083 | + 'map' => 'https://schema.org/Map', | |
| 4084 | + 'media.object' => array( | |
| 4085 | + 'audio.object' => array( | |
| 4086 | + 'audio.object' => 'https://schema.org/AudioObject', | |
| 4087 | + 'book.audio' => 'https://schema.org/Audiobook', | |
| 4088 | + ), | |
| 4089 | + 'data.download' => 'https://schema.org/DataDownload', | |
| 4090 | + 'image.object' => 'https://schema.org/ImageObject', | |
| 4091 | + 'media.object' => 'https://schema.org/MediaObject', | |
| 4092 | + 'music.video.object' => 'https://schema.org/MusicVideoObject', | |
| 4093 | + 'video.object' => 'https://schema.org/VideoObject', | |
| 4094 | + ), | |
| 4095 | + 'menu' => 'https://schema.org/Menu', | |
| 4096 | + 'menu.section' => 'https://schema.org/MenuSection', | |
| 4097 | + 'message' => 'https://schema.org/Message', | |
| 4098 | + 'movie' => 'https://schema.org/Movie', | |
| 4099 | + 'music.composition' => 'https://schema.org/MusicComposition', | |
| 4100 | + 'music.playlist' => array( | |
| 4101 | + 'music.album' => 'https://schema.org/MusicAlbum', | |
| 4102 | + 'music.playlist' => 'https://schema.org/MusicPlaylist', | |
| 4103 | + 'music.release' => 'https://schema.org/MusicRelease', | |
| 4104 | + ), | |
| 4105 | + 'music.recording' => 'https://schema.org/MusicRecording', | |
| 4106 | + 'painting' => 'https://schema.org/Painting', | |
| 4107 | + 'photograph' => 'https://schema.org/Photograph', | |
| 4108 | + 'publication.issue' => 'https://schema.org/PublicationIssue', | |
| 4109 | + 'publication.volume' => 'https://schema.org/PublicationVolume', | |
| 4110 | + 'review' => array( | |
| 4111 | + 'review' => 'https://schema.org/Review', | |
| 4112 | + 'review.claim' => 'https://schema.org/ClaimReview', | |
| 4113 | + 'review.critic' => array( | |
| 4114 | + 'review.critic' => 'https://schema.org/CriticReview', | |
| 4115 | + 'article.news.review' => 'https://schema.org/ReviewNewsArticle', | |
| 4116 | + ), | |
| 4117 | + 'review.employer' => 'https://schema.org/EmployerReview', | |
| 4118 | + 'review.media' => 'https://schema.org/MediaReview', | |
| 4119 | + 'review.recommendation' => 'https://schema.org/Recommendation', | |
| 4120 | + 'review.user' => 'https://schema.org/UserReview', | |
| 4121 | + ), | |
| 4122 | + 'sculpture' => 'https://schema.org/Sculpture', | |
| 4123 | + 'series' => 'https://schema.org/Series', | |
| 4124 | + 'software.application' => array( | |
| 4125 | + 'software.application' => 'https://schema.org/SoftwareApplication', | |
| 4126 | + 'software.application.mobile' => 'https://schema.org/MobileApplication', | |
| 4127 | + 'software.application.video.game' => 'https://schema.org/VideoGame', | |
| 4128 | + 'software.application.web' => 'https://schema.org/WebApplication', | |
| 4129 | + ), | |
| 4130 | + 'software.source.code' => 'https://schema.org/SoftwareSourceCode', | |
| 4131 | + 'special.announcement' => 'https://schema.org/SpecialAnnouncement', | |
| 4132 | + 'tv.season' => 'https://schema.org/TVSeason', | |
| 4133 | + 'tv.series' => 'https://schema.org/TVSeries', | |
| 4134 | + 'visual.artwork' => 'https://schema.org/VisualArtwork', | |
| 4135 | + 'webpage' => array( | |
| 4136 | + 'webpage' => 'https://schema.org/WebPage', | |
| 4137 | + 'webpage.about' => 'https://schema.org/AboutPage', | |
| 4138 | + 'webpage.checkout' => 'https://schema.org/CheckoutPage', | |
| 4139 | + 'webpage.collection' => array( | |
| 4140 | + 'webpage.collection' => 'https://schema.org/CollectionPage', | |
| 4141 | + 'webpage.gallery.media' => array( | |
| 4142 | + 'webpage.gallery.media' => 'https://schema.org/MediaGallery', | |
| 4143 | + 'webpage.gallery.image' => 'https://schema.org/ImageGallery', | |
| 4144 | + 'webpage.gallery.video' => 'https://schema.org/VideoGallery', | |
| 4145 | + ), | |
| 4146 | + ), | |
| 4147 | + 'webpage.contact' => 'https://schema.org/ContactPage', | |
| 4148 | + 'webpage.faq' => 'https://schema.org/FAQPage', | |
| 4149 | + 'webpage.item' => 'https://schema.org/ItemPage', | |
| 4150 | + 'webpage.medical' => 'https://schema.org/MedicalWebPage', | |
| 4151 | + 'webpage.profile' => 'https://schema.org/ProfilePage', | |
| 4152 | + 'webpage.qa' => 'https://schema.org/QAPage', | |
| 4153 | + 'webpage.real.estate.listing' => 'https://schema.org/RealEstateListing', | |
| 4154 | + 'webpage.search.results' => 'https://schema.org/SearchResultsPage', | |
| 4155 | + ), | |
| 4156 | + 'webpage.element' => 'https://schema.org/WebPageElement', | |
| 4157 | + 'website' => 'https://schema.org/WebSite', | |
| 4158 | + ), | |
| 4159 | + 'event' => array( | |
| 4160 | + 'event' => 'https://schema.org/Event', | |
| 4161 | + 'event.business' => 'https://schema.org/BusinessEvent', | |
| 4162 | + 'event.childrens' => 'https://schema.org/ChildrensEvent', | |
| 4163 | + 'event.comedy' => 'https://schema.org/ComedyEvent', | |
| 4164 | + 'event.dance' => 'https://schema.org/DanceEvent', | |
| 4165 | + 'event.delivery' => 'https://schema.org/DeliveryEvent', | |
| 4166 | + 'event.education' => 'https://schema.org/EducationEvent', | |
| 4167 | + 'event.exhibition' => 'https://schema.org/ExhibitionEvent', | |
| 4168 | + 'event.festival' => 'https://schema.org/Festival', | |
| 4169 | + 'event.food' => 'https://schema.org/FoodEvent', | |
| 4170 | + 'event.literary' => 'https://schema.org/LiteraryEvent', | |
| 4171 | + 'event.music' => 'https://schema.org/MusicEvent', | |
| 4172 | + 'event.publication' => 'https://schema.org/PublicationEvent', | |
| 4173 | + 'event.sale' => 'https://schema.org/SaleEvent', | |
| 4174 | + 'event.screening' => 'https://schema.org/ScreeningEvent', | |
| 4175 | + 'event.social' => 'https://schema.org/SocialEvent', | |
| 4176 | + 'event.sports' => 'https://schema.org/SportsEvent', | |
| 4177 | + 'event.theater' => 'https://schema.org/TheaterEvent', | |
| 4178 | + 'event.visual.arts' => 'https://schema.org/VisualArtsEvent', | |
| 4179 | + ), | |
| 4180 | + 'intangible' => array( | |
| 4181 | + 'alignment.object' => 'https://schema.org/AlignmentObject', | |
| 4182 | + 'audience' => array( | |
| 4183 | + 'audience' => 'https://schema.org/Audience', | |
| 4184 | + 'audience.business' => 'https://schema.org/BusinessAudience', | |
| 4185 | + 'audience.educational' => 'https://schema.org/EducationalAudience', | |
| 4186 | + 'audience.medical' => 'https://schema.org/MedicalAudience', | |
| 4187 | + 'audience.people' => 'https://schema.org/PeopleAudience', | |
| 4188 | + ), | |
| 4189 | + 'bed.details' => 'https://schema.org/BedDetails', | |
| 4190 | + 'brand' => 'https://schema.org/Brand', | |
| 4191 | + 'broadcast.channel' => 'https://schema.org/BroadcastChannel', | |
| 4192 | + 'computer.language' => 'https://schema.org/ComputerLanguage', | |
| 4193 | + 'data.feed.item' => 'https://schema.org/DataFeedItem', | |
| 4194 | + 'demand' => 'https://schema.org/Demand', | |
| 4195 | + 'digital.document.permission' => 'https://schema.org/DigitalDocumentPermission', | |
| 4196 | + 'entry.point' => 'https://schema.org/EntryPoint', | |
| 4197 | + 'enumeration' => array( | |
| 4198 | + 'action.status.type' => 'https://schema.org/ActionStatusType', | |
| 4199 | + 'boarding.policy.type' => 'https://schema.org/BoardingPolicyType', | |
| 4200 | + 'book.format.type' => 'https://schema.org/BookFormatType', | |
| 4201 | + 'business.entity.type' => 'https://schema.org/BusinessEntityType', | |
| 4202 | + 'business.function' => 'https://schema.org/BusinessFunction', | |
| 4203 | + 'contact.point.option' => 'https://schema.org/ContactPointOption', | |
| 4204 | + 'day.of.week' => 'https://schema.org/DayOfWeek', | |
| 4205 | + 'delivery.method' => 'https://schema.org/DeliveryMethod', | |
| 4206 | + 'digital.document.permission.type' => 'https://schema.org/DigitalDocumentPermissionType', | |
| 4207 | + 'enumeration' => 'https://schema.org/Enumeration', | |
| 4208 | + 'event.status.type' => 'https://schema.org/EventStatusType', | |
| 4209 | + 'game.play.mode' => 'https://schema.org/GamePlayMode', | |
| 4210 | + 'game.server.status' => 'https://schema.org/GameServerStatus', | |
| 4211 | + 'gender.type' => 'https://schema.org/GenderType', | |
| 4212 | + 'item.availability' => 'https://schema.org/ItemAvailability', | |
| 4213 | + 'item.list.order.type' => 'https://schema.org/ItemListOrderType', | |
| 4214 | + 'map.category.type' => 'https://schema.org/MapCategoryType', | |
| 4215 | + 'medical.enumeration' => array( | |
| 4216 | + 'audience.medical' => 'https://schema.org/MedicalAudience', | |
| 4217 | + 'medical.enumeration' => 'https://schema.org/MedicalEnumeration', | |
| 4218 | + 'medical.specialty' => array( | |
| 4219 | + 'anesthesia.specialty' => 'https://schema.org/Anesthesia', | |
| 4220 | + 'cardiovascular.specialty' => 'https://schema.org/Cardiovascular', | |
| 4221 | + 'community.health.specialty' => 'https://schema.org/CommunityHealth', | |
| 4222 | + 'dentistry.specialty' => 'https://schema.org/Dentistry', | |
| 4223 | + 'dermatologic.specialty' => 'https://schema.org/Dermatologic', | |
| 4224 | + 'dermatology.specialty' => 'https://schema.org/Dermatology', | |
| 4225 | + 'diet.nutrition.specialty' => 'https://schema.org/DietNutrition', | |
| 4226 | + 'emergency.specialty' => 'https://schema.org/Emergency', | |
| 4227 | + 'endocrine.specialty' => 'https://schema.org/Endocrine', | |
| 4228 | + 'gastroenterologic.specialty' => 'https://schema.org/Gastroenterologic', | |
| 4229 | + 'genetic.specialty' => 'https://schema.org/Genetic', | |
| 4230 | + 'geriatric.specialty' => 'https://schema.org/Geriatric', | |
| 4231 | + 'gynecologic.specialty' => 'https://schema.org/Gynecologic', | |
| 4232 | + 'hematologic.specialty' => 'https://schema.org/Hematologic', | |
| 4233 | + 'infectious.specialty' => 'https://schema.org/Infectious', | |
| 4234 | + 'laboratory.science.specialty' => 'https://schema.org/LaboratoryScience', | |
| 4235 | + 'medical.specialty' => 'https://schema.org/MedicalSpecialty', | |
| 4236 | + 'midwifery.specialty' => 'https://schema.org/Midwifery', | |
| 4237 | + 'musculoskeletal.specialty' => 'https://schema.org/Musculoskeletal', | |
| 4238 | + 'neurologic.specialty' => 'https://schema.org/Neurologic', | |
| 4239 | + 'nursing.specialty' => 'https://schema.org/Nursing', | |
| 4240 | + 'obstetric.specialty' => 'https://schema.org/Obstetric', | |
| 4241 | + 'occupational.therapy.specialty' => 'https://schema.org/OccupationalTherapy', | |
| 4242 | + 'oncologic.specialty' => 'https://schema.org/Oncologic', | |
| 4243 | + 'optometric.specialty' => 'https://schema.org/Optometric', | |
| 4244 | + 'otolaryngologic.specialty' => 'https://schema.org/Otolaryngologic', | |
| 4245 | + 'pathology.specialty' => 'https://schema.org/Pathology', | |
| 4246 | + 'pediatric.specialty' => 'https://schema.org/Pediatric', | |
| 4247 | + 'pharmacy.specialty' => 'https://schema.org/PharmacySpecialty', | |
| 4248 | + 'physiotherapy.specialty' => 'https://schema.org/Physiotherapy', | |
| 4249 | + 'plastic.surgery.specialty' => 'https://schema.org/PlasticSurgery', | |
| 4250 | + 'podiatric.specialty' => 'https://schema.org/Podiatric', | |
| 4251 | + 'primary.care.specialty' => 'https://schema.org/PrimaryCare', | |
| 4252 | + 'psychiatric.specialty' => 'https://schema.org/Psychiatric', | |
| 4253 | + 'public.health.specialty' => 'https://schema.org/PublicHealth', | |
| 4254 | + 'pulmonary.specialty' => 'https://schema.org/Pulmonary', | |
| 4255 | + 'radiography.specialty' => 'https://schema.org/Radiography', | |
| 4256 | + 'renal.specialty' => 'https://schema.org/Renal', | |
| 4257 | + 'respiratory.therapy.specialty' => 'https://schema.org/RespiratoryTherapy', | |
| 4258 | + 'rheumatologic.specialty' => 'https://schema.org/Rheumatologic', | |
| 4259 | + 'speech.pathology.specialty' => 'https://schema.org/SpeechPathology', | |
| 4260 | + 'surgical.specialty' => 'https://schema.org/Surgical', | |
| 4261 | + 'toxicologic.specialty' => 'https://schema.org/Toxicologic', | |
| 4262 | + 'urologic.specialty' => 'https://schema.org/Urologic', | |
| 4263 | + ), | |
| 4264 | + 'medicine.system' => array( | |
| 4265 | + 'ayurvedic.system' => 'https://schema.org/Ayurvedic', | |
| 4266 | + 'chiropractic.system' => 'https://schema.org/Chiropractic', | |
| 4267 | + 'homeopathic.system' => 'https://schema.org/Homeopathic', | |
| 4268 | + 'medicine.system' => 'https://schema.org/MedicineSystem', | |
| 4269 | + 'osteopathic.system' => 'https://schema.org/Osteopathic', | |
| 4270 | + 'traditional.chinese.system' => 'https://schema.org/TraditionalChinese', | |
| 4271 | + 'western.conventional.system' => 'https://schema.org/WesternConventional', | |
| 4272 | + ), | |
| 4273 | + ), | |
| 4274 | + 'music.album.production.type' => 'https://schema.org/MusicAlbumProductionType', | |
| 4275 | + 'music.album.release.type' => 'https://schema.org/MusicAlbumReleaseType', | |
| 4276 | + 'music.release.format.type' => 'https://schema.org/MusicReleaseFormatType', | |
| 4277 | + 'offer.item.condition' => 'https://schema.org/OfferItemCondition', | |
| 4278 | + 'order.status' => 'https://schema.org/OrderStatus', | |
| 4279 | + 'payment.method' => array( | |
| 4280 | + 'payment.card' => array( | |
| 4281 | + 'credit.card' => 'https://schema.org/CreditCard', | |
| 4282 | + 'payment.card' => 'https://schema.org/PaymentCard', | |
| 4283 | + ), | |
| 4284 | + 'payment.method' => 'https://schema.org/PaymentMethod', | |
| 4285 | + ), | |
| 4286 | + 'payment.status.type' => 'https://schema.org/PaymentStatusType', | |
| 4287 | + 'qualitative.value' => 'https://schema.org/QualitativeValue', | |
| 4288 | + 'reservation.status.type' => 'https://schema.org/ReservationStatusType', | |
| 4289 | + 'restricted.diet' => 'https://schema.org/RestrictedDiet', | |
| 4290 | + 'rsvp.response.type' => 'https://schema.org/RsvpResponseType', | |
| 4291 | + 'specialty' => array( | |
| 4292 | + // 'medical.specialty' array added by WpssoSchema::add_schema_type_xrefs(). | |
| 4293 | + 'specialty' => 'https://schema.org/Specialty', | |
| 4294 | + ), | |
| 4295 | + 'warranty.scope' => 'https://schema.org/WarrantyScope', | |
| 4296 | + ), | |
| 4297 | + 'game.server' => 'https://schema.org/GameServer', | |
| 4298 | + 'intangible' => 'https://schema.org/Intangible', | |
| 4299 | + 'invoice' => 'https://schema.org/Invoice', | |
| 4300 | + 'item.list' => array( | |
| 4301 | + 'breadcrumb.list' => 'https://schema.org/BreadcrumbList', | |
| 4302 | + 'howto.section' => 'https://schema.org/HowToSection', | |
| 4303 | + 'howto.step' => 'https://schema.org/HowToStep', | |
| 4304 | + 'item.list' => 'https://schema.org/ItemList', | |
| 4305 | + 'offer.catalog' => 'https://schema.org/OfferCatalog', | |
| 4306 | + ), | |
| 4307 | + 'job.posting' => 'https://schema.org/JobPosting', | |
| 4308 | + 'language' => 'https://schema.org/Language', | |
| 4309 | + 'list.item' => array( | |
| 4310 | + 'howto.direction' => 'https://schema.org/HowToDirection', | |
| 4311 | + 'howto.item' => array( | |
| 4312 | + 'howto.item' => 'https://schema.org/HowToItem', | |
| 4313 | + 'howto.supply' => 'https://schema.org/HowToSupply', | |
| 4314 | + 'howto.tool' => 'https://schema.org/HowToTool', | |
| 4315 | + ), | |
| 4316 | + 'howto.section' => 'https://schema.org/HowToSection', | |
| 4317 | + 'howto.step' => 'https://schema.org/HowToStep', | |
| 4318 | + 'howto.tip' => 'https://schema.org/HowToTip', | |
| 4319 | + 'list.item' => 'https://schema.org/ListItem', | |
| 4320 | + ), | |
| 4321 | + 'menu.item' => 'https://schema.org/MenuItem', | |
| 4322 | + 'offer' => array( | |
| 4323 | + 'offer' => 'https://schema.org/Offer', | |
| 4324 | + 'offer.aggregate' => 'https://schema.org/AggregateOffer', | |
| 4325 | + ), | |
| 4326 | + 'order' => 'https://schema.org/Order', | |
| 4327 | + 'order.item' => 'https://schema.org/OrderItem', | |
| 4328 | + 'parcel.delivery' => 'https://schema.org/ParcelDelivery', | |
| 4329 | + 'permit' => 'https://schema.org/Permit', | |
| 4330 | + 'program.membership' => 'https://schema.org/ProgramMembership', | |
| 4331 | + 'property.value.specification' => 'https://schema.org/PropertyValueSpecification', | |
| 4332 | + 'quantity' => 'https://schema.org/Quantity', | |
| 4333 | + 'rating' => array( | |
| 4334 | + 'rating' => 'https://schema.org/Rating', | |
| 4335 | + 'rating.aggregate' => 'https://schema.org/AggregateRating', | |
| 4336 | + ), | |
| 4337 | + 'reservation' => 'https://schema.org/Reservation', | |
| 4338 | + 'role' => 'https://schema.org/Role', | |
| 4339 | + 'seat' => 'https://schema.org/Seat', | |
| 4340 | + | |
| 4341 | + /* | |
| 4342 | + * A service provided by an organization, e.g. delivery service, print services, etc. | |
| 4343 | + */ | |
| 4344 | + 'service' => array( | |
| 4345 | + 'service' => 'https://schema.org/Service', | |
| 4346 | + 'service.broadcast' => array( | |
| 4347 | + 'service.broadcast' => 'https://schema.org/BroadcastService', | |
| 4348 | + 'service.broadcast.radio' => 'https://schema.org/RadioBroadcastService', | |
| 4349 | + ), | |
| 4350 | + 'service.cable.or.satellite' => 'https://schema.org/CableOrSatelliteService', | |
| 4351 | + 'service.financial.product' => array( | |
| 4352 | + 'bank.account' => array( | |
| 4353 | + 'bank.account' => 'https://schema.org/BankAccount', | |
| 4354 | + 'deposit.account' => 'https://schema.org/DepositAccount', | |
| 4355 | + ), | |
| 4356 | + 'service.currency.conversion' => 'https://schema.org/CurrencyConversionService', | |
| 4357 | + 'service.financial.product' => 'https://schema.org/FinancialProduct', | |
| 4358 | + 'service.investment.or.deposit' => array( | |
| 4359 | + 'brokerage.account' => 'https://schema.org/BrokerageAccount', | |
| 4360 | + 'deposit.account' => 'https://schema.org/DepositAccount', | |
| 4361 | + 'service.investment.or.deposit' => 'https://schema.org/InvestmentOrDeposit', | |
| 4362 | + 'service.investment.fund' => 'https://schema.org/InvestmentFund', | |
| 4363 | + ), | |
| 4364 | + 'service.loan.or.credit' => array( | |
| 4365 | + 'credit.card' => 'https://schema.org/CreditCard', | |
| 4366 | + 'mortgage.loan' => 'https://schema.org/MortgageLoan', | |
| 4367 | + 'service.loan.or.credit' => 'https://schema.org/LoanOrCredit', | |
| 4368 | + ), | |
| 4369 | + // 'payment.card' array added by WpssoSchema::add_schema_type_xrefs(). | |
| 4370 | + 'service.payment' => 'https://schema.org/PaymentService', | |
| 4371 | + ), | |
| 4372 | + 'service.food' => 'https://schema.org/FoodService', | |
| 4373 | + 'service.government' => 'https://schema.org/GovernmentService', | |
| 4374 | + 'service.taxi' => 'https://schema.org/TaxiService', | |
| 4375 | + 'service.webapi' => 'https://schema.org/WebAPI', | |
| 4376 | + ), | |
| 4377 | + 'service.channel' => 'https://schema.org/ServiceChannel', | |
| 4378 | + 'structured.value' => array( | |
| 4379 | + 'cdc.pmd.record' => 'https://schema.org/CDCPMDRecord', | |
| 4380 | + 'contact.point' => array( | |
| 4381 | + 'contact.point' => 'https://schema.org/ContactPoint', | |
| 4382 | + 'postal.address' => 'https://schema.org/PostalAddress', | |
| 4383 | + ), | |
| 4384 | + 'defined.region' => 'https://schema.org/DefinedRegion', | |
| 4385 | + 'engine.specification' => 'https://schema.org/EngineSpecification', | |
| 4386 | + 'exchange.rate.specification' => 'https://schema.org/ExchangeRateSpecification', | |
| 4387 | + 'geo.coordinates' => 'https://schema.org/GeoCoordinates', | |
| 4388 | + 'geo.shape' => array( | |
| 4389 | + 'geo.circle' => 'https://schema.org/GeoCircle', | |
| 4390 | + 'geo.shape' => 'https://schema.org/GeoShape', | |
| 4391 | + ), | |
| 4392 | + 'interaction.counter' => 'https://schema.org/InteractionCounter', | |
| 4393 | + 'monetary.amount' => 'https://schema.org/MonetaryAmount', | |
| 4394 | + 'nutrition.information' => 'https://schema.org/NutritionInformation', | |
| 4395 | + 'offer.shipping.details' => 'https://schema.org/OfferShippingDetails', | |
| 4396 | + 'opening.hours.specification' => 'https://schema.org/OpeningHoursSpecification', | |
| 4397 | + 'ownership.info' => 'https://schema.org/OwnershipInfo', | |
| 4398 | + 'postal.code.range.specification' => 'https://schema.org/PostalCodeRangeSpecification', | |
| 4399 | + 'price.specification' => 'https://schema.org/PriceSpecification', | |
| 4400 | + 'property.value' => 'https://schema.org/PropertyValue', | |
| 4401 | + 'quantitative.value' => 'https://schema.org/QuantitativeValue', | |
| 4402 | + 'quantitative.value.distribution' => 'https://schema.org/QuantitativeValueDistribution', | |
| 4403 | + 'repayment.specification' => 'https://schema.org/RepaymentSpecification', | |
| 4404 | + 'service.period' => 'https://schema.org/ServicePeriod', | |
| 4405 | + 'shipping.conditions' => 'https://schema.org/ShippingConditions', | |
| 4406 | + 'shipping.delivery.time' => 'https://schema.org/ShippingDeliveryTime', | |
| 4407 | + 'Shipping.rate.settings' => 'https://schema.org/ShippingRateSettings', | |
| 4408 | + 'Shipping.service' => 'https://schema.org/ShippingService', | |
| 4409 | + 'structured.value' => 'https://schema.org/StructuredValue', | |
| 4410 | + 'type.and.quantity.node' => 'https://schema.org/TypeAndQuantityNode', | |
| 4411 | + 'warranty.promise' => 'https://schema.org/WarrantyPromise', | |
| 4412 | + ), | |
| 4413 | + 'ticket' => 'https://schema.org/Ticket', | |
| 4414 | + 'trip' => array( | |
| 4415 | + 'trip' => 'https://schema.org/Trip', | |
| 4416 | + 'trip.bus' => 'https://schema.org/BusTrip', | |
| 4417 | + 'trip.flight' => 'https://schema.org/Flight', | |
| 4418 | + 'trip.train' => 'https://schema.org/TrainTrip', | |
| 4419 | + 'trip.tourist' => 'https://schema.org/TouristTrip', | |
| 4420 | + ), | |
| 4421 | + 'virtual.location' => 'https://schema.org/VirtualLocation', | |
| 4422 | + ), | |
| 4423 | + 'medical.entity' => array( | |
| 4424 | + 'medical.anatomical.structure' => 'https://schema.org/AnatomicalStructure', | |
| 4425 | + 'medical.anatomical.systems' => 'https://schema.org/AnatomicalSystem', | |
| 4426 | + 'medical.cause' => 'https://schema.org/MedicalCause', | |
| 4427 | + 'medical.condition' => array( | |
| 4428 | + 'medical.condition' => 'https://schema.org/MedicalCondition', | |
| 4429 | + 'medical.infectious.disease' => 'https://schema.org/InfectiousDisease', | |
| 4430 | + 'medical.sign.or.symptom' => array( | |
| 4431 | + 'medical.sign.or.symptom' => 'https://schema.org/MedicalSignOrSymptom', | |
| 4432 | + 'medical.sign' => array( | |
| 4433 | + 'medical.sign' => 'https://schema.org/MedicalSign', | |
| 4434 | + 'medical.sign.vital' => 'https://schema.org/MedicalVitalSign', | |
| 4435 | + ), | |
| 4436 | + 'medical.symptom' => 'https://schema.org/MedicalSymptom', | |
| 4437 | + ), | |
| 4438 | + ), | |
| 4439 | + 'medical.contraindication' => 'https://schema.org/MedicalContraindication', | |
| 4440 | + 'medical.device' => 'https://schema.org/MedicalDevice', | |
| 4441 | + 'medical.entity' => 'https://schema.org/MedicalEntity', | |
| 4442 | + 'medical.guideline' => 'https://schema.org/MedicalGuideline', | |
| 4443 | + 'medical.indication' => 'https://schema.org/MedicalIndication', | |
| 4444 | + 'medical.intangible' => 'https://schema.org/MedicalIntangible', | |
| 4445 | + 'medical.lifestyle.modifications' => 'https://schema.org/LifestyleModification', | |
| 4446 | + 'medical.procedure' => 'https://schema.org/MedicalProcedure', | |
| 4447 | + 'medical.risk.estimator' => 'https://schema.org/MedicalRiskEstimator', | |
| 4448 | + 'medical.risk.factor' => 'https://schema.org/MedicalRiskFactor', | |
| 4449 | + 'medical.study' => 'https://schema.org/MedicalStudy', | |
| 4450 | + 'medical.substance' => 'https://schema.org/Substance', | |
| 4451 | + 'medical.superficial.anatomy' => 'https://schema.org/SuperficialAnatomy', | |
| 4452 | + 'medical.test' => 'https://schema.org/MedicalTest', | |
| 4453 | + ), | |
| 4454 | + 'organization' => array( | |
| 4455 | + 'airline' => 'https://schema.org/Airline', | |
| 4456 | + 'consortium' => 'https://schema.org/Consortium', | |
| 4457 | + 'corporation' => 'https://schema.org/Corporation', | |
| 4458 | + // 'educational.organization' array added by WpssoSchema::add_schema_type_xrefs(). | |
| 4459 | + 'funding.scheme' => 'https://schema.org/FundingScheme', | |
| 4460 | + 'government.organization' => 'https://schema.org/GovernmentOrganization', | |
| 4461 | + 'library.system' => 'https://schema.org/LibrarySystem', | |
| 4462 | + // 'local.business' array added by WpssoSchema::add_schema_type_xrefs(). | |
| 4463 | + 'medical.organization' => array( | |
| 4464 | + 'dentist.organization' => 'https://schema.org/Dentist', | |
| 4465 | + 'diagnostic.lab.organization' => 'https://schema.org/DiagnosticLab', | |
| 4466 | + 'hospital' => 'https://schema.org/Hospital', | |
| 4467 | + 'medical.clinic' => array( | |
| 4468 | + 'medical.clinic' => 'https://schema.org/MedicalClinic', | |
| 4469 | + 'covid.testing.facility' => 'https://schema.org/CovidTestingFacility', | |
| 4470 | + ), | |
| 4471 | + 'pharmacy.organization' => 'https://schema.org/Pharmacy', | |
| 4472 | + 'physician.organization' => 'https://schema.org/Physician', | |
| 4473 | + 'veterinary.care' => 'https://schema.org/VeterinaryCare', | |
| 4474 | + ), | |
| 4475 | + 'non-governmental.organization' => 'https://schema.org/NGO', | |
| 4476 | + 'news.media.organization' => 'https://schema.org/NewsMediaOrganization', | |
| 4477 | + 'online.business' => array( | |
| 4478 | + 'online.business' => 'https://schema.org/OnlineBusiness', | |
| 4479 | + 'online.store' => 'https://schema.org/OnlineStore', | |
| 4480 | + ), | |
| 4481 | + 'organization' => 'https://schema.org/Organization', | |
| 4482 | + 'performing.group' => array( | |
| 4483 | + 'dance.group' => 'https://schema.org/DanceGroup', | |
| 4484 | + 'music.group' => 'https://schema.org/MusicGroup', | |
| 4485 | + 'performing.group' => 'https://schema.org/PerformingGroup', | |
| 4486 | + 'theater.group' => 'https://schema.org/TheaterGroup', | |
| 4487 | + ), | |
| 4488 | + 'project' => array( | |
| 4489 | + 'funding.agency' => 'https://schema.org/FundingAgency', | |
| 4490 | + 'project' => 'https://schema.org/Project', | |
| 4491 | + 'research.project' => 'https://schema.org/ResearchProject', | |
| 4492 | + ), | |
| 4493 | + 'research.organization' => 'https://schema.org/ResearchOrganization', | |
| 4494 | + 'search.rescue.organization' => 'https://schema.org/SearchRescueOrganization', | |
| 4495 | + 'sports.organization' => array( | |
| 4496 | + 'sports.team' => 'https://schema.org/SportsTeam', | |
| 4497 | + 'sports.organization' => 'https://schema.org/SportsOrganization', | |
| 4498 | + ), | |
| 4499 | + 'workers.union' => 'https://schema.org/WorkersUnion', | |
| 4500 | + ), | |
| 4501 | + 'person' => 'https://schema.org/Person', | |
| 4502 | + 'place' => array( | |
| 4503 | + 'accommodation' => array( | |
| 4504 | + 'accommodation' => 'https://schema.org/Accommodation', | |
| 4505 | + 'apartment' => 'https://schema.org/Apartment', | |
| 4506 | + 'camping.pitch' => 'https://schema.org/CampingPitch', | |
| 4507 | + 'house' => array( | |
| 4508 | + 'house' => 'https://schema.org/House', | |
| 4509 | + 'house.single.family' => 'https://schema.org/SingleFamilyResidence', | |
| 4510 | + ), | |
| 4511 | + 'room' => array( | |
| 4512 | + 'room' => 'https://schema.org/Room', | |
| 4513 | + 'room.hotel' => 'https://schema.org/HotelRoom', | |
| 4514 | + 'room.meeting' => 'https://schema.org/MeetingRoom', | |
| 4515 | + ), | |
| 4516 | + 'suite' => 'https://schema.org/Suite', | |
| 4517 | + ), | |
| 4518 | + 'administrative.area' => array( | |
| 4519 | + 'administrative.area' => 'https://schema.org/AdministrativeArea', | |
| 4520 | + 'city' => 'https://schema.org/City', | |
| 4521 | + 'country' => 'https://schema.org/Country', | |
| 4522 | + 'state' => 'https://schema.org/State', | |
| 4523 | + ), | |
| 4524 | + 'civic.structure' => array( | |
| 4525 | + 'airport' => 'https://schema.org/Airport', | |
| 4526 | + 'aquarium' => 'https://schema.org/Aquarium', | |
| 4527 | + 'beach' => 'https://schema.org/Beach', | |
| 4528 | + 'boat.terminal' => 'https://schema.org/BoatTerminal', | |
| 4529 | + 'bridge' => 'https://schema.org/Bridge', | |
| 4530 | + 'bus.station' => 'https://schema.org/BusStation', | |
| 4531 | + 'bus.stop' => 'https://schema.org/BusStop', | |
| 4532 | + 'campground' => 'https://schema.org/Campground', | |
| 4533 | + 'cemetary' => 'https://schema.org/Cemetery', | |
| 4534 | + 'civic.structure' => 'https://schema.org/CivicStructure', | |
| 4535 | + 'crematorium' => 'https://schema.org/Crematorium', | |
| 4536 | + 'educational.organization' => array( | |
| 4537 | + 'college.or.university' => 'https://schema.org/CollegeOrUniversity', | |
| 4538 | + 'educational.organization' => 'https://schema.org/EducationalOrganization', | |
| 4539 | + 'elementary.school' => 'https://schema.org/ElementarySchool', | |
| 4540 | + 'high.school' => 'https://schema.org/HighSchool', | |
| 4541 | + 'middle.school' => 'https://schema.org/MiddleSchool', | |
| 4542 | + 'preschool' => 'https://schema.org/Preschool', | |
| 4543 | + 'school' => 'https://schema.org/School', | |
| 4544 | + ), | |
| 4545 | + 'event.venue' => 'https://schema.org/EventVenue', | |
| 4546 | + 'fire.station' => 'https://schema.org/FireStation', | |
| 4547 | + 'government.building' => 'https://schema.org/GovernmentBuilding', | |
| 4548 | + 'hospital' => 'https://schema.org/Hospital', | |
| 4549 | + 'movie.theater' => 'https://schema.org/MovieTheater', | |
| 4550 | + 'museum' => 'https://schema.org/Museum', | |
| 4551 | + 'music.venue' => 'https://schema.org/MusicVenue', | |
| 4552 | + 'park' => 'https://schema.org/Park', | |
| 4553 | + 'parking.facility' => 'https://schema.org/ParkingFacility', | |
| 4554 | + 'performing.arts.theatre' => 'https://schema.org/PerformingArtsTheater', | |
| 4555 | + 'place.of.worship' => 'https://schema.org/PlaceOfWorship', | |
| 4556 | + 'playground' => 'https://schema.org/Playground', | |
| 4557 | + 'rv.park' => 'https://schema.org/RVPark', | |
| 4558 | + 'police.station' => 'https://schema.org/PoliceStation', | |
| 4559 | + 'public.toilet' => 'https://schema.org/PublicToilet', | |
| 4560 | + 'stadium.or.arena' => 'https://schema.org/StadiumOrArena', | |
| 4561 | + 'subway.station' => 'https://schema.org/SubwayStation', | |
| 4562 | + 'taxi.stand' => 'https://schema.org/TaxiStand', | |
| 4563 | + 'train.station' => 'https://schema.org/TrainStation', | |
| 4564 | + 'zoo' => 'https://schema.org/Zoo', | |
| 4565 | + ), | |
| 4566 | + 'landform' => 'https://schema.org/Landform', | |
| 4567 | + 'landmarks.or.historical.buildings' => 'https://schema.org/LandmarksOrHistoricalBuildings', | |
| 4568 | + 'local.business' => array( | |
| 4569 | + 'animal.shelter' => 'https://schema.org/AnimalShelter', | |
| 4570 | + 'automotive.business' => array( | |
| 4571 | + 'auto.body.shop' => 'https://schema.org/AutoBodyShop', | |
| 4572 | + 'auto.dealer' => 'https://schema.org/AutoDealer', | |
| 4573 | + 'auto.parts.store' => 'https://schema.org/AutoPartsStore', | |
| 4574 | + 'auto.rental' => 'https://schema.org/AutoRental', | |
| 4575 | + 'auto.repair' => 'https://schema.org/AutoRepair', | |
| 4576 | + 'auto.wash' => 'https://schema.org/AutoWash', | |
| 4577 | + 'automotive.business' => 'https://schema.org/AutomotiveBusiness', | |
| 4578 | + 'gas.station' => 'https://schema.org/GasStation', | |
| 4579 | + 'motorcycle.dealer' => 'https://schema.org/MotorcycleDealer', | |
| 4580 | + 'motorcycle.repair' => 'https://schema.org/MotorcycleRepair', | |
| 4581 | + ), | |
| 4582 | + 'child.care' => 'https://schema.org/ChildCare', | |
| 4583 | + 'dentist.organization' => 'https://schema.org/Dentist', | |
| 4584 | + 'dry.cleaning.or.laundry' => 'https://schema.org/DryCleaningOrLaundry', | |
| 4585 | + 'emergency.service' => array( | |
| 4586 | + 'emergency.service' => 'https://schema.org/EmergencyService', | |
| 4587 | + 'fire.station' => 'https://schema.org/FireStation', | |
| 4588 | + 'hospital' => 'https://schema.org/Hospital', | |
| 4589 | + 'police.station' => 'https://schema.org/PoliceStation', | |
| 4590 | + ), | |
| 4591 | + 'employment.agency' => 'https://schema.org/EmploymentAgency', | |
| 4592 | + 'entertainment.business' => array( | |
| 4593 | + 'adult.entertainment' => 'https://schema.org/AdultEntertainment', | |
| 4594 | + 'amusement.park' => 'https://schema.org/AmusementPark', | |
| 4595 | + 'art.gallery' => 'https://schema.org/ArtGallery', | |
| 4596 | + 'casino' => 'https://schema.org/Casino', | |
| 4597 | + 'comedy.club' => 'https://schema.org/ComedyClub', | |
| 4598 | + 'entertainment.business' => 'https://schema.org/EntertainmentBusiness', | |
| 4599 | + 'movie.theater' => 'https://schema.org/MovieTheater', | |
| 4600 | + 'night.club' => 'https://schema.org/NightClub', | |
| 4601 | + ), | |
| 4602 | + 'financial.service' => 'https://schema.org/FinancialService', | |
| 4603 | + 'food.establishment' => array( | |
| 4604 | + 'bakery' => 'https://schema.org/Bakery', | |
| 4605 | + 'bar.or.pub' => 'https://schema.org/BarOrPub', | |
| 4606 | + 'brewery' => 'https://schema.org/Brewery', | |
| 4607 | + 'cafe.or.coffee.shop' => 'https://schema.org/CafeOrCoffeeShop', | |
| 4608 | + 'fast.food.restaurant' => 'https://schema.org/FastFoodRestaurant', | |
| 4609 | + 'food.establishment' => 'https://schema.org/FoodEstablishment', | |
| 4610 | + 'ice.cream.shop' => 'https://schema.org/IceCreamShop', | |
| 4611 | + 'restaurant' => 'https://schema.org/Restaurant', | |
| 4612 | + 'winery' => 'https://schema.org/Winery', | |
| 4613 | + ), | |
| 4614 | + 'government.office' => 'https://schema.org/GovernmentOffice', | |
| 4615 | + 'health.and.beauty.business' => array( | |
| 4616 | + 'beauty.salon' => 'https://schema.org/BeautySalon', | |
| 4617 | + 'day.spa' => 'https://schema.org/DaySpa', | |
| 4618 | + 'health.and.beauty.business' => 'https://schema.org/HealthAndBeautyBusiness', | |
| 4619 | + 'hair.salon' => 'https://schema.org/HairSalon', | |
| 4620 | + 'health.club' => 'https://schema.org/HealthClub', | |
| 4621 | + 'nail.salon' => 'https://schema.org/NailSalon', | |
| 4622 | + 'tattoo.parlor' => 'https://schema.org/TattooParlor', | |
| 4623 | + ), | |
| 4624 | + 'home.and.construction.business' => array( | |
| 4625 | + 'electrician' => 'https://schema.org/Electrician', | |
| 4626 | + 'general.contractor' => 'https://schema.org/GeneralContractor', | |
| 4627 | + 'hvac.business' => 'https://schema.org/HVACBusiness', | |
| 4628 | + 'home.and.construction.business' => 'https://schema.org/HomeAndConstructionBusiness', | |
| 4629 | + 'house.painter' => 'https://schema.org/HousePainter', | |
| 4630 | + 'locksmith' => 'https://schema.org/Locksmith', | |
| 4631 | + 'moving.company' => 'https://schema.org/MovingCompany', | |
| 4632 | + 'plumber' => 'https://schema.org/Plumber', | |
| 4633 | + 'roofing.contractor' => 'https://schema.org/RoofingContractor', | |
| 4634 | + ), | |
| 4635 | + 'internet.cafe' => 'https://schema.org/InternetCafe', | |
| 4636 | + 'legal.service' => array( | |
| 4637 | + 'attorney' => 'https://schema.org/Attorney', | |
| 4638 | + 'legal.service' => 'https://schema.org/LegalService', | |
| 4639 | + 'notary' => 'https://schema.org/Notary', | |
| 4640 | + ), | |
| 4641 | + 'library' => 'https://schema.org/Library', | |
| 4642 | + 'local.business' => 'https://schema.org/LocalBusiness', | |
| 4643 | + 'lodging.business' => array( | |
| 4644 | + 'bed.and.breakfast' => 'https://schema.org/BedAndBreakfast', | |
| 4645 | + 'campground' => 'https://schema.org/Campground', | |
| 4646 | + 'lodging.business' => 'https://schema.org/LodgingBusiness', | |
| 4647 | + 'hostel' => 'https://schema.org/Hostel', | |
| 4648 | + 'hotel' => 'https://schema.org/Hotel', | |
| 4649 | + 'motel' => 'https://schema.org/Motel', | |
| 4650 | + 'resort' => 'https://schema.org/Resort', | |
| 4651 | + ), | |
| 4652 | + 'medical.business' => array( | |
| 4653 | + 'community.health.business' => 'https://schema.org/CommunityHealth', | |
| 4654 | + 'dentist.business' => 'https://schema.org/Dentist', | |
| 4655 | + 'dermatology.business' => 'https://schema.org/Dermatology', | |
| 4656 | + 'diet.nutrition.business' => 'https://schema.org/DietNutrition', | |
| 4657 | + 'emergency.business' => 'https://schema.org/Emergency', | |
| 4658 | + 'geriatric.business' => 'https://schema.org/Geriatric', | |
| 4659 | + 'gynecologic.business' => 'https://schema.org/Gynecologic', | |
| 4660 | + 'medical.business' => 'https://schema.org/MedicalBusiness', | |
| 4661 | + 'medical.clinic' => array( | |
| 4662 | + 'medical.clinic' => 'https://schema.org/MedicalClinic', | |
| 4663 | + 'covid.testing.facility' => 'https://schema.org/CovidTestingFacility', | |
| 4664 | + ), | |
| 4665 | + 'midwifery.business' => 'https://schema.org/Midwifery', | |
| 4666 | + 'nursing.business' => 'https://schema.org/Nursing', | |
| 4667 | + 'obstetric.business' => 'https://schema.org/Obstetric', | |
| 4668 | + 'oncologic.business' => 'https://schema.org/Oncologic', | |
| 4669 | + 'optician.business' => 'https://schema.org/Optician', | |
| 4670 | + 'optometric.business' => 'https://schema.org/Optometric', | |
| 4671 | + 'otolaryngologic.business' => 'https://schema.org/Otolaryngologic', | |
| 4672 | + 'pediatric.business' => 'https://schema.org/Pediatric', | |
| 4673 | + 'pharmacy.business' => 'https://schema.org/Pharmacy', | |
| 4674 | + 'physician.business' => 'https://schema.org/Physician', | |
| 4675 | + 'physiotherapy.business' => 'https://schema.org/Physiotherapy', | |
| 4676 | + 'plastic.surgery.business' => 'https://schema.org/PlasticSurgery', | |
| 4677 | + 'podiatric.business' => 'https://schema.org/Podiatric', | |
| 4678 | + 'primary.care.business' => 'https://schema.org/PrimaryCare', | |
| 4679 | + 'psychiatric.business' => 'https://schema.org/Psychiatric', | |
| 4680 | + 'public.health.business' => 'https://schema.org/PublicHealth', | |
| 4681 | + ), | |
| 4682 | + 'professional.service' => 'https://schema.org/ProfessionalService', | |
| 4683 | + 'radio.station' => 'https://schema.org/RadioStation', | |
| 4684 | + 'real.estate.agent' => 'https://schema.org/RealEstateAgent', | |
| 4685 | + 'recycling.center' => 'https://schema.org/RecyclingCenter', | |
| 4686 | + 'self.storage' => 'https://schema.org/SelfStorage', | |
| 4687 | + 'shopping.center' => 'https://schema.org/ShoppingCenter', | |
| 4688 | + 'sports.activity.location' => array( | |
| 4689 | + 'sports.activity.location' => 'https://schema.org/SportsActivityLocation', | |
| 4690 | + 'stadium.or.arena' => 'https://schema.org/StadiumOrArena', | |
| 4691 | + ), | |
| 4692 | + 'store' => array( | |
| 4693 | + 'auto.parts.store' => 'https://schema.org/AutoPartsStore', | |
| 4694 | + 'bike.store' => 'https://schema.org/BikeStore', | |
| 4695 | + 'book.store' => 'https://schema.org/BookStore', | |
| 4696 | + 'clothing.store' => 'https://schema.org/ClothingStore', | |
| 4697 | + 'computer.store' => 'https://schema.org/ComputerStore', | |
| 4698 | + 'convenience.store' => 'https://schema.org/ConvenienceStore', | |
| 4699 | + 'department.store' => 'https://schema.org/DepartmentStore', | |
| 4700 | + 'electronics.store' => 'https://schema.org/ElectronicsStore', | |
| 4701 | + 'florist' => 'https://schema.org/Florist', | |
| 4702 | + 'flower.shop' => 'https://schema.org/Florist', | |
| 4703 | + 'furniture.store' => 'https://schema.org/FurnitureStore', | |
| 4704 | + 'garden.store' => 'https://schema.org/GardenStore', | |
| 4705 | + 'grocery.store' => 'https://schema.org/GroceryStore', | |
| 4706 | + 'hardware.store' => 'https://schema.org/HardwareStore', | |
| 4707 | + 'hobby.shop' => 'https://schema.org/HobbyShop', | |
| 4708 | + 'home.goods.store' => 'https://schema.org/HomeGoodsStore', | |
| 4709 | + 'jewelry.store' => 'https://schema.org/JewelryStore', | |
| 4710 | + 'liquor.store' => 'https://schema.org/LiquorStore', | |
| 4711 | + 'mens.clothing.store' => 'https://schema.org/MensClothingStore', | |
| 4712 | + 'mobile.phone.store' => 'https://schema.org/MobilePhoneStore', | |
| 4713 | + 'movie.rental.store' => 'https://schema.org/MovieRentalStore', | |
| 4714 | + 'music.store' => 'https://schema.org/MusicStore', | |
| 4715 | + 'office.equipment.store' => 'https://schema.org/OfficeEquipmentStore', | |
| 4716 | + 'outlet.store' => 'https://schema.org/OutletStore', | |
| 4717 | + 'pawn.shop' => 'https://schema.org/PawnShop', | |
| 4718 | + 'pet.store' => 'https://schema.org/PetStore', | |
| 4719 | + 'shoe.store' => 'https://schema.org/ShoeStore', | |
| 4720 | + 'sporting.goods.store' => 'https://schema.org/SportingGoodsStore', | |
| 4721 | + 'store' => 'https://schema.org/Store', | |
| 4722 | + 'tire.shop' => 'https://schema.org/TireShop', | |
| 4723 | + 'toy.store' => 'https://schema.org/ToyStore', | |
| 4724 | + 'wholesale.store' => 'https://schema.org/WholesaleStore', | |
| 4725 | + ), | |
| 4726 | + 'television.station' => 'https://schema.org/TelevisionStation', | |
| 4727 | + 'tourist.information.center' => 'https://schema.org/TouristInformationCenter', | |
| 4728 | + 'travel.agency' => 'https://schema.org/TravelAgency', | |
| 4729 | + ), | |
| 4730 | + 'place' => 'https://schema.org/Place', | |
| 4731 | + 'residence' => array( | |
| 4732 | + 'residence' => 'https://schema.org/Residence', | |
| 4733 | + 'residence.apartment.complex' => 'https://schema.org/ApartmentComplex', | |
| 4734 | + 'residence.gated.community' => 'https://schema.org/GatedResidenceCommunity', | |
| 4735 | + ), | |
| 4736 | + 'tourist.attraction' => 'https://schema.org/TouristAttraction', | |
| 4737 | + 'tourist.destination' => 'https://schema.org/TouristDestination', | |
| 4738 | + ), | |
| 4739 | + 'product' => array( | |
| 4740 | + 'individual.product' => 'https://schema.org/IndividualProduct', // Individual product with unique serial number. | |
| 4741 | + 'product' => 'https://schema.org/Product', | |
| 4742 | + 'product.group' => 'https://schema.org/ProductGroup', | |
| 4743 | + 'product.model' => 'https://schema.org/ProductModel', | |
| 4744 | + 'some.products' => 'https://schema.org/SomeProducts', | |
| 4745 | + 'vehicle' => array( | |
| 4746 | + 'bus.or.coach' => 'https://auto.schema.org/BusOrCoach', | |
| 4747 | + 'car' => 'https://auto.schema.org/Car', | |
| 4748 | + 'motorcycle' => 'https://auto.schema.org/Motorcycle', | |
| 4749 | + 'motorized.bicycle' => 'https://auto.schema.org/MotorizedBicycle', | |
| 4750 | + 'vehicle' => 'https://auto.schema.org/Vehicle', | |
| 4751 | + ), | |
| 4752 | + ), | |
| 4753 | + 'thing' => 'https://schema.org/Thing', | |
| 4754 | + ), | |
| 4755 | + ), // End of 'schema_type' array. | |
| 4756 | + 'schema_renamed' => array( // Element of 'head' array. | |
| 4757 | + 'anesthesia' => 'anesthesia.specialty', | |
| 4758 | + 'cardiovascular' => 'cardiovascular.specialty', | |
| 4759 | + 'community.health' => 'community.health.specialty', | |
| 4760 | + 'dentist' => 'dentist.organization', | |
| 4761 | + 'dentistry' => 'dentistry.specialty', | |
| 4762 | + 'dermatologic' => 'dermatologic.specialty', | |
| 4763 | + 'dermatology' => 'dermatology.specialty', | |
| 4764 | + 'diet.nutrition' => 'diet.nutrition.specialty', | |
| 4765 | + 'emergency' => 'emergency.specialty', | |
| 4766 | + 'endocrine' => 'endocrine.specialty', | |
| 4767 | + 'event.venu' => 'event.venue', | |
| 4768 | + 'gastroenterologic' => 'gastroenterologic.specialty', | |
| 4769 | + 'genetic' => 'genetic.specialty', | |
| 4770 | + 'geriatric' => 'geriatric.specialty', | |
| 4771 | + 'gynecologic' => 'gynecologic.specialty', | |
| 4772 | + 'hematologic' => 'hematologic.specialty', | |
| 4773 | + 'how.to' => 'howto', | |
| 4774 | + 'infectious' => 'infectious.specialty', | |
| 4775 | + 'laboratory.science' => 'laboratory.science.specialty', | |
| 4776 | + 'medical.clinic.business' => 'medical.clinic', | |
| 4777 | + 'medical.audience' => 'audience.medical', | |
| 4778 | + 'midwifery' => 'midwifery.specialty', | |
| 4779 | + 'movie.theatre' => 'movie.theater', | |
| 4780 | + 'musculoskeletal' => 'musculoskeletal.specialty', | |
| 4781 | + 'music.venu' => 'music.venue', | |
| 4782 | + 'neurologic' => 'neurologic.specialty', | |
| 4783 | + 'nursing' => 'nursing.specialty', | |
| 4784 | + 'obstetric' => 'obstetric.specialty', | |
| 4785 | + 'occupational.therapy' => 'occupational.therapy.specialty', | |
| 4786 | + 'oncologic' => 'oncologic.specialty', | |
| 4787 | + 'optometric' => 'optometric.specialty', | |
| 4788 | + 'otolaryngologic' => 'otolaryngologic.specialty', | |
| 4789 | + 'pathology' => 'pathology.specialty', | |
| 4790 | + 'pediatric' => 'pediatric.specialty', | |
| 4791 | + 'pharmacy' => 'pharmacy.organization', | |
| 4792 | + 'physician' => 'physician.organization', | |
| 4793 | + 'physiotherapy' => 'physiotherapy.specialty', | |
| 4794 | + 'plastic.surgery' => 'plastic.surgery.specialty', | |
| 4795 | + 'podiatric' => 'podiatric.specialty', | |
| 4796 | + 'primary.care' => 'primary.care.specialty', | |
| 4797 | + 'psychiatric' => 'psychiatric.specialty', | |
| 4798 | + 'public.health' => 'public.health.specialty', | |
| 4799 | + 'pulmonary' => 'pulmonary.specialty', | |
| 4800 | + 'radiography' => 'radiography.specialty', | |
| 4801 | + 'renal' => 'renal.specialty', | |
| 4802 | + 'respiratory.therapy' => 'respiratory.therapy.specialty', | |
| 4803 | + 'rheumatologic' => 'rheumatologic.specialty', | |
| 4804 | + 'service.bank.account' => 'bank.account', | |
| 4805 | + 'service.credit.card' => 'credit.card', | |
| 4806 | + 'service.deposit.account' => 'deposit.account', | |
| 4807 | + 'residence.single.family' => 'house.single.family', | |
| 4808 | + 'speech.pathology' => 'speech.pathology.specialty', | |
| 4809 | + 'surgical' => 'surgical.specialty', | |
| 4810 | + 'toxicologic' => 'toxicologic.specialty', | |
| 4811 | + 'train.trip' => 'trip.train', | |
| 4812 | + 'urologic' => 'urologic.specialty', | |
| 4813 | + ), | |
| 4814 | + | |
| 4815 | + /* | |
| 4816 | + * See http://wiki.goodrelations-vocabulary.org/Documentation/UN/CEFACT_Common_Codes. | |
| 4817 | + */ | |
| 4818 | + 'schema_units' => array( // Element of 'head' array. | |
| 4819 | + 'fluid_volume' => array( // Unitcode index value. | |
| 4820 | + 'additionalProperty' => array( // Schema property name. | |
| 4821 | + '@context' => 'https://schema.org', | |
| 4822 | + '@type' => 'PropertyValue', | |
| 4823 | + 'propertyID' => 'fluid_volume', | |
| 4824 | + 'name' => 'Fluid Volume', | |
| 4825 | + 'unitText' => 'ml', | |
| 4826 | + 'unitCode' => 'MLT', | |
| 4827 | + ), | |
| 4828 | + ), | |
| 4829 | + 'height' => array( // Unitcode index value. | |
| 4830 | + 'height' => array( // Schema property name. | |
| 4831 | + '@context' => 'https://schema.org', | |
| 4832 | + '@type' => 'QuantitativeValue', | |
| 4833 | + 'name' => 'Height', | |
| 4834 | + 'unitText' => 'cm', | |
| 4835 | + 'unitCode' => 'CMT', | |
| 4836 | + ), | |
| 4837 | + ), | |
| 4838 | + 'height_px' => array( // Unitcode index value. | |
| 4839 | + 'height' => array( // Schema property name. | |
| 4840 | + '@context' => 'https://schema.org', | |
| 4841 | + '@type' => 'QuantitativeValue', | |
| 4842 | + 'name' => 'Height', | |
| 4843 | + 'unitText' => 'px', | |
| 4844 | + 'unitCode' => 'E37', | |
| 4845 | + ), | |
| 4846 | + ), | |
| 4847 | + 'length' => array( // Unitcode index value. | |
| 4848 | + 'depth' => array( // Schema property name. | |
| 4849 | + '@context' => 'https://schema.org', | |
| 4850 | + '@type' => 'QuantitativeValue', | |
| 4851 | + 'name' => 'Length or Depth', | |
| 4852 | + 'unitText' => 'cm', | |
| 4853 | + 'unitCode' => 'CMT', | |
| 4854 | + ), | |
| 4855 | + ), | |
| 4856 | + 'size' => array( // Unitcode index value. | |
| 4857 | + 'additionalProperty' => array( // Schema property name. | |
| 4858 | + '@context' => 'https://schema.org', | |
| 4859 | + '@type' => 'PropertyValue', | |
| 4860 | + 'propertyID' => 'size', | |
| 4861 | + 'name' => 'Size', | |
| 4862 | + ), | |
| 4863 | + ), | |
| 4864 | + 'weight' => array( // Unitcode index value. | |
| 4865 | + 'weight' => array( // Schema property name. | |
| 4866 | + '@context' => 'https://schema.org', | |
| 4867 | + '@type' => 'QuantitativeValue', | |
| 4868 | + 'name' => 'Weight', | |
| 4869 | + 'unitText' => 'kg', | |
| 4870 | + 'unitCode' => 'KGM', | |
| 4871 | + ), | |
| 4872 | + ), | |
| 4873 | + 'width' => array( // Unitcode index value. | |
| 4874 | + 'width' => array( // Schema property name. | |
| 4875 | + '@context' => 'https://schema.org', | |
| 4876 | + '@type' => 'QuantitativeValue', | |
| 4877 | + 'name' => 'Width', | |
| 4878 | + 'unitText' => 'cm', | |
| 4879 | + 'unitCode' => 'CMT', | |
| 4880 | + ), | |
| 4881 | + ), | |
| 4882 | + 'width_px' => array( // Unitcode index value. | |
| 4883 | + 'width' => array( // Schema property name. | |
| 4884 | + '@context' => 'https://schema.org', | |
| 4885 | + '@type' => 'QuantitativeValue', | |
| 4886 | + 'name' => 'Width', | |
| 4887 | + 'unitText' => 'px', | |
| 4888 | + 'unitCode' => 'E37', | |
| 4889 | + ), | |
| 4890 | + ), | |
| 4891 | + ), | |
| 4892 | + | |
| 4893 | + /* | |
| 4894 | + * See https://developers.google.com/search/docs/appearance/structured-data/review-snippet. | |
| 4895 | + * | |
| 4896 | + * Google allows the 'aggregateRating' property only for these types: | |
| 4897 | + * | |
| 4898 | + * Book | |
| 4899 | + * Course | |
| 4900 | + * Event | |
| 4901 | + * HowTo (includes Recipe) | |
| 4902 | + * LocalBusiness | |
| 4903 | + * Movie | |
| 4904 | + * Product | |
| 4905 | + * SoftwareApplication | |
| 4906 | + * | |
| 4907 | + * Google allows the 'review' property only for these types: | |
| 4908 | + * | |
| 4909 | + * Book | |
| 4910 | + * Course | |
| 4911 | + * CreativeWorkSeason | |
| 4912 | + * CreativeWorkSeries | |
| 4913 | + * Episode | |
| 4914 | + * Event | |
| 4915 | + * Game | |
| 4916 | + * HowTo (includes Recipe) | |
| 4917 | + * LocalBusiness | |
| 4918 | + * MediaObject | |
| 4919 | + * Movie | |
| 4920 | + * MusicPlaylist | |
| 4921 | + * MusicRecording | |
| 4922 | + * Organization | |
| 4923 | + * Product | |
| 4924 | + * SoftwareApplication | |
| 4925 | + */ | |
| 4926 | + 'schema_aggregate_rating_parents' => array( // Element of 'head' array. | |
| 4927 | + 'book', | |
| 4928 | + 'course', | |
| 4929 | + 'event', | |
| 4930 | + 'howto', | |
| 4931 | + 'local.business', | |
| 4932 | + 'movie', | |
| 4933 | + 'product', | |
| 4934 | + 'software.application', | |
| 4935 | + ), | |
| 4936 | + 'schema_review_parents' => array( // Element of 'head' array. | |
| 4937 | + 'book', | |
| 4938 | + 'course', | |
| 4939 | + 'creative.work.season', | |
| 4940 | + 'creative.work.series', | |
| 4941 | + 'episode', | |
| 4942 | + 'event', | |
| 4943 | + 'game', | |
| 4944 | + 'howto', | |
| 4945 | + 'local.business', | |
| 4946 | + 'media.object', | |
| 4947 | + 'movie', | |
| 4948 | + 'music.playlist', | |
| 4949 | + 'music.recording', | |
| 4950 | + 'organization', | |
| 4951 | + 'product', | |
| 4952 | + 'software.application', | |
| 4953 | + ), | |
| 4954 | + | |
| 4955 | + /* | |
| 4956 | + * Good Relations. | |
| 4957 | + */ | |
| 4958 | + 'schema_gr' => array( // Element of 'head' array. | |
| 4959 | + 'DeliveryMethod' => array( | |
| 4960 | + 'Download' => 'http://purl.org/goodrelations/v1#DeliveryModeDirectDownload', | |
| 4961 | + 'Freight' => 'http://purl.org/goodrelations/v1#DeliveryModeFreight', | |
| 4962 | + 'Mail' => 'http://purl.org/goodrelations/v1#DeliveryModeMail', | |
| 4963 | + 'Fleet' => 'http://purl.org/goodrelations/v1#DeliveryModeOwnFleet', | |
| 4964 | + 'PickUp' => 'http://purl.org/goodrelations/v1#DeliveryModePickUp', | |
| 4965 | + 'DHL' => 'http://purl.org/goodrelations/v1#DHL', | |
| 4966 | + 'FedEx' => 'http://purl.org/goodrelations/v1#FederalExpress', | |
| 4967 | + 'UPS' => 'http://purl.org/goodrelations/v1#UPS', | |
| 4968 | + ), | |
| 4969 | + ), | |
| 4970 | + ), // End of 'head' array. | |
| 4971 | + 'extend' => array( | |
| 4972 | + 'https://wpsso.com/extend/plugins/', | |
| 4973 | + ), | |
| 4974 | + ); // End of 'cf' array. | |
| 4975 | + | |
| 4976 | + public static function get_version( $add_slug = false ) { | |
| 4977 | + | |
| 4978 | + $info = self::$cf[ 'plugin' ][ 'wpsso' ]; | |
| 4979 | + | |
| 4980 | + return $add_slug ? $info[ 'slug' ] . '-' . $info[ 'version' ] : $info[ 'version' ]; | |
| 4981 | + } | |
| 4982 | + | |
| 4983 | + public static function get_config( $read_cache = true ) { | |
| 4984 | + | |
| 4985 | + if ( $read_cache ) { | |
| 4986 | + | |
| 4987 | + if ( ! empty( self::$cf[ 'config_filtered' ] ) ) { // Only if already filtered. | |
| 4988 | + | |
| 4989 | + return self::$cf; | |
| 4990 | + } | |
| 4991 | + } | |
| 4992 | + | |
| 4993 | + self::$cf[ '*' ] = array( | |
| 4994 | + 'base' => array(), | |
| 4995 | + 'lib' => array( | |
| 4996 | + 'pro' => array(), | |
| 4997 | + 'std' => array(), | |
| 4998 | + ), | |
| 4999 | + 'version' => '', | |
| 5000 | + ); | |
| 5001 | + | |
| 5002 | + self::$cf[ 'opt' ][ 'version' ] = ''; | |
| 5003 | + | |
| 5004 | + self::$cf[ 'config_filtered' ] = false; | |
| 5005 | + | |
| 5006 | + /* | |
| 5007 | + * Wpsso->__construct() calls WpssoConfig::get_config() before WpssoConfig::set_constants(), which defines | |
| 5008 | + * 'WPSSO_VERSION', so use 'WPSSO_VERSION' as a signal to skip applying filters until later. | |
| 5009 | + */ | |
| 5010 | + if ( ! defined( 'WPSSO_VERSION' ) ) { | |
| 5011 | + | |
| 5012 | + return self::$cf; | |
| 5013 | + } | |
| 5014 | + | |
| 5015 | + /* | |
| 5016 | + * Apply filters to have add-ons include their config. | |
| 5017 | + */ | |
| 5018 | + if ( empty( self::$cf[ 'config_filtered' ] ) ) { | |
| 5019 | + | |
| 5020 | + self::$cf = apply_filters( 'wpsso_get_config', self::$cf ); | |
| 5021 | + } | |
| 5022 | + | |
| 5023 | + self::$cf[ 'config_filtered' ] = true; | |
| 5024 | + | |
| 5025 | + $pro_disable = defined( 'WPSSO_PRO_DISABLE' ) && WPSSO_PRO_DISABLE ? true : false; | |
| 5026 | + | |
| 5027 | + foreach ( self::$cf[ 'plugin' ] as $ext => $info ) { | |
| 5028 | + | |
| 5029 | + $pkg_dir = 'std'; | |
| 5030 | + | |
| 5031 | + if ( ! $pro_disable ) { | |
| 5032 | + | |
| 5033 | + $ext_dir = self::get_ext_dir( $ext, $read_cache ); | |
| 5034 | + | |
| 5035 | + if ( is_dir( $ext_dir . 'lib/pro/' ) ) { | |
| 5036 | + | |
| 5037 | + $pkg_dir = 'pro'; | |
| 5038 | + } | |
| 5039 | + } | |
| 5040 | + | |
| 5041 | + if ( isset( $info[ 'slug' ] ) ) { | |
| 5042 | + | |
| 5043 | + self::$cf[ '*' ][ 'slug' ][ $info[ 'slug' ] ] = $ext; | |
| 5044 | + } | |
| 5045 | + | |
| 5046 | + if ( isset( $info[ 'base' ] ) ) { | |
| 5047 | + | |
| 5048 | + self::$cf[ '*' ][ 'base' ][ $info[ 'base' ] ] = $ext; | |
| 5049 | + } | |
| 5050 | + | |
| 5051 | + if ( isset( $info[ 'lib' ] ) && is_array( $info[ 'lib' ] ) ) { | |
| 5052 | + | |
| 5053 | + self::$cf[ '*' ][ 'lib' ] = SucomUtil::array_merge_recursive_distinct( self::$cf[ '*' ][ 'lib' ], $info[ 'lib' ] ); | |
| 5054 | + } | |
| 5055 | + | |
| 5056 | + if ( isset( $info[ 'version' ] ) ) { | |
| 5057 | + | |
| 5058 | + self::$cf[ '*' ][ 'version' ] .= '-' . $ext . $info[ 'version' ] . $pkg_dir; | |
| 5059 | + } | |
| 5060 | + | |
| 5061 | + if ( isset( $info[ 'opt_version' ] ) ) { | |
| 5062 | + | |
| 5063 | + self::$cf[ 'opt' ][ 'version' ] .= '-' . $ext . $info[ 'opt_version' ] . $pkg_dir; | |
| 5064 | + } | |
| 5065 | + | |
| 5066 | + /* | |
| 5067 | + * Maybe complete relative paths in the assets array. | |
| 5068 | + */ | |
| 5069 | + if ( ! empty( $info[ 'base' ] ) ) { // Just in case. | |
| 5070 | + | |
| 5071 | + /* | |
| 5072 | + * Returns a plugin base URL like 'https://wpsso.com/wp-content/plugins/wpsso/'. | |
| 5073 | + */ | |
| 5074 | + $plugins_url_base = trailingslashit( plugins_url( '', $info[ 'base' ] ) ); | |
| 5075 | + | |
| 5076 | + array_walk_recursive( self::$cf[ 'plugin' ][ $ext ][ 'assets' ], array( __CLASS__, 'maybe_prefix_base_url' ), $plugins_url_base ); | |
| 5077 | + } | |
| 5078 | + } | |
| 5079 | + | |
| 5080 | + return self::$cf; | |
| 5081 | + } | |
| 5082 | + | |
| 5083 | + private static function maybe_prefix_base_url( &$url, $key, $plugins_url_base ) { | |
| 5084 | + | |
| 5085 | + if ( ! empty( $url ) && false === strpos( $url, '//' ) ) { | |
| 5086 | + | |
| 5087 | + $url = $plugins_url_base . $url; | |
| 5088 | + } | |
| 5089 | + } | |
| 5090 | + | |
| 5091 | + public static function set_constants( $plugin_file ) { | |
| 5092 | + | |
| 5093 | + if ( defined( 'WPSSO_VERSION' ) ) { // Define constants only once. | |
| 5094 | + | |
| 5095 | + return; | |
| 5096 | + } | |
| 5097 | + | |
| 5098 | + $info =& self::$cf[ 'plugin' ][ 'wpsso' ]; | |
| 5099 | + | |
| 5100 | + $nonce_key = defined( 'NONCE_KEY' ) ? NONCE_KEY : ''; | |
| 5101 | + | |
| 5102 | + /* | |
| 5103 | + * Define fixed constants. | |
| 5104 | + */ | |
| 5105 | + define( 'WPSSO_DATA_ID', 'wpsso structured data' ); | |
| 5106 | + define( 'WPSSO_FILEPATH', $plugin_file ); | |
| 5107 | + define( 'WPSSO_NONCE_NAME', md5( $nonce_key . var_export( $info, $return = true ) ) ); | |
| 5108 | + define( 'WPSSO_PLUGINBASE', $info[ 'base' ] ); // Example: wpsso/wpsso.php. | |
| 5109 | + define( 'WPSSO_PLUGINDIR', trailingslashit( realpath( dirname( $plugin_file ) ) ) ); | |
| 5110 | + define( 'WPSSO_PLUGINSLUG', $info[ 'slug' ] ); // Example: wpsso. | |
| 5111 | + define( 'WPSSO_UNDEF', -1 ); // Default undefined image width / height value. | |
| 5112 | + define( 'WPSSO_URLPATH', trailingslashit( plugins_url( '', $plugin_file ) ) ); | |
| 5113 | + define( 'WPSSO_VERSION', $info[ 'version' ] ); | |
| 5114 | + | |
| 5115 | + define( 'WPSSO_INIT_CONFIG_PRIORITY', -10 ); | |
| 5116 | + define( 'WPSSO_INIT_OPTIONS_PRIORITY', 9 ); | |
| 5117 | + define( 'WPSSO_INIT_OBJECTS_PRIORITY', 10 ); | |
| 5118 | + define( 'WPSSO_INIT_JSON_FILTERS_PRIORITY', 11 ); | |
| 5119 | + define( 'WPSSO_INIT_SHORTCODES_PRIORITY', 11 ); | |
| 5120 | + define( 'WPSSO_INIT_PLUGIN_PRIORITY', 12 ); | |
| 5121 | + | |
| 5122 | + /* | |
| 5123 | + * Define variable constants. | |
| 5124 | + */ | |
| 5125 | + self::set_variable_constants(); | |
| 5126 | + } | |
| 5127 | + | |
| 5128 | + public static function set_variable_constants( $var_const = null ) { | |
| 5129 | + | |
| 5130 | + if ( ! is_array( $var_const ) ) { | |
| 5131 | + | |
| 5132 | + $var_const = self::get_variable_constants(); | |
| 5133 | + } | |
| 5134 | + | |
| 5135 | + /* | |
| 5136 | + * Define the variable constants, if not already defined. | |
| 5137 | + */ | |
| 5138 | + foreach ( $var_const as $name => $value ) { | |
| 5139 | + | |
| 5140 | + if ( ! defined( $name ) ) { | |
| 5141 | + | |
| 5142 | + define( $name, $value ); | |
| 5143 | + } | |
| 5144 | + } | |
| 5145 | + } | |
| 5146 | + | |
| 5147 | + public static function get_variable_constants() { | |
| 5148 | + | |
| 5149 | + $var_const = array(); | |
| 5150 | + | |
| 5151 | + if ( defined( 'WPSSO_PLUGINDIR' ) ) { | |
| 5152 | + | |
| 5153 | + $var_const[ 'WPSSO_ARTICLE_SECTIONS_LIST' ] = WPSSO_PLUGINDIR . 'share/article-sections.txt'; | |
| 5154 | + $var_const[ 'WPSSO_PRODUCT_CATEGORIES_LIST' ] = WPSSO_PLUGINDIR . 'share/product-categories.txt'; | |
| 5155 | + } | |
| 5156 | + | |
| 5157 | + /* | |
| 5158 | + * MENU_ORDER (aka menu_position): | |
| 5159 | + * | |
| 5160 | + * null – below Comments | |
| 5161 | + * 5 – below Posts | |
| 5162 | + * 10 – below Media | |
| 5163 | + * 15 – below Links | |
| 5164 | + * 20 – below Pages | |
| 5165 | + * 25 – below comments | |
| 5166 | + * 60 – below first separator | |
| 5167 | + * 65 – below Plugins | |
| 5168 | + * 70 – below Users | |
| 5169 | + * 75 – below Tools | |
| 5170 | + * 80 – below Settings | |
| 5171 | + * 100 – below second separator | |
| 5172 | + */ | |
| 5173 | + $var_const[ 'WPSSO_MENU_ORDER' ] = 85; // Position of the SSO settings menu item. | |
| 5174 | + $var_const[ 'WPSSO_TB_NOTICE_MENU_ORDER' ] = 55; // Position of the SSO notices toolbar menu item. | |
| 5175 | + $var_const[ 'WPSSO_TB_NOTICE_TIME_ERR' ] = 3000; // Show notification (-1 don't show, 0 show until clicked, ms to auto-show). | |
| 5176 | + $var_const[ 'WPSSO_TB_NOTICE_TIME_WARN' ] = -1; // Show notification (-1 don't show, 0 show until clicked, ms to auto-show). | |
| 5177 | + $var_const[ 'WPSSO_TB_NOTICE_TIME_INF' ] = -1; // Show notification (-1 don't show, 0 show until clicked, ms to auto-show). | |
| 5178 | + $var_const[ 'WPSSO_TB_NOTICE_TIME_UPD' ] = 2000; // Show notification (-1 don't show, 0 show until clicked, ms to auto-show). | |
| 5179 | + $var_const[ 'WPSSO_TB_LOCALE_MENU_ORDER' ] = 56; // Position of the user locale toolbar menu item. | |
| 5180 | + $var_const[ 'WPSSO_TB_VALIDATE_MENU_ORDER' ] = 57; // Position of the validate menu item. | |
| 5181 | + $var_const[ 'WPSSO_TB_VIEW_PROFILE_MENU_ORDER' ] = 80; // Position of the view profile menu item. | |
| 5182 | + $var_const[ 'WPSSO_ADD_ROLE_MAX_TIME' ] = 300; // 5 minutes. | |
| 5183 | + $var_const[ 'WPSSO_REMOVE_ROLE_MAX_TIME' ] = 300; // 5 minutes. | |
| 5184 | + $var_const[ 'WPSSO_CACHE_ARRAY_FIFO_MAX' ] = 8; | |
| 5185 | + $var_const[ 'WPSSO_CACHE_DIR' ] = self::get_cache_dir(); | |
| 5186 | + $var_const[ 'WPSSO_CACHE_FILES_EXP_SECS' ] = WEEK_IN_SECONDS; // See WpssoUtilCache->clear_cache_files_expired(). | |
| 5187 | + $var_const[ 'WPSSO_CACHE_REFRESH_MAX_TIME' ] = 1800; // 30 mins by default. | |
| 5188 | + $var_const[ 'WPSSO_CACHE_SELECT_JSON_EXP_SECS' ] = WEEK_IN_SECONDS; // JS URLs for Schema types, article sections, and product categories. | |
| 5189 | + $var_const[ 'WPSSO_CACHE_URL' ] = self::get_cache_url(); | |
| 5190 | + $var_const[ 'WPSSO_CONTENT_BLOCK_FILTER_OUTPUT' ] = true; // Monitor and fix incorrectly coded filter hooks. | |
| 5191 | + $var_const[ 'WPSSO_CONTENT_FILTERS_MAX_TIME' ] = 1.50; // Issue a warning if the content filter takes longer than 1 second. | |
| 5192 | + $var_const[ 'WPSSO_CONTENT_IMAGES_MAX' ] = 5; // Maximum number of images extracted from the content. | |
| 5193 | + $var_const[ 'WPSSO_DUPE_CHECK_HEADER_COUNT' ] = 3; // Maximum number of times to check for duplicates. | |
| 5194 | + $var_const[ 'WPSSO_DUPE_CHECK_TIMEOUT_TIME' ] = 3.00; // Hard-limit - most crawlers time-out after 3 seconds. | |
| 5195 | + $var_const[ 'WPSSO_DUPE_CHECK_WARNING_TIME' ] = 2.50; // Issue a warning if getting shortlink took more than 2.5 seconds. | |
| 5196 | + $var_const[ 'WPSSO_IMAGE_MAKE_SIZE_MAX_TIME' ] = 5.00; // Error to trigger_error() if image_make_intermediate_size() takes longer. | |
| 5197 | + $var_const[ 'WPSSO_METABOX_TAB_LAYOUT' ] = 'vertical'; // Default tab layout (vertical or horizontal). | |
| 5198 | + $var_const[ 'WPSSO_PHP_GETIMGSIZE_MAX_TIME' ] = 3.00; // Send an error to trigger_error() if getimagesize() takes longer. | |
| 5199 | + $var_const[ 'WPSSO_READING_WORDS_PER_MIN' ] = 200; // Estimated reading words per minute. | |
| 5200 | + $var_const[ 'WPSSO_SCHEDULE_SINGLE_EVENT_TIME' ] = 10; // Schedule single events for now + 10 seconds. | |
| 5201 | + $var_const[ 'WPSSO_SELECT_PERSON_NAMES_MAX' ] = 200; // Maximum number of persons to include in a form select. | |
| 5202 | + | |
| 5203 | + /* | |
| 5204 | + * Schema limits. | |
| 5205 | + */ | |
| 5206 | + $var_const[ 'WPSSO_SCHEMA_ADDL_TYPE_URL_MAX' ] = 8; | |
| 5207 | + $var_const[ 'WPSSO_SCHEMA_SERVICE_AREAS_MAX' ] = 5; | |
| 5208 | + $var_const[ 'WPSSO_SCHEMA_AWARDS_MAX' ] = 5; | |
| 5209 | + $var_const[ 'WPSSO_SCHEMA_CITATIONS_MAX' ] = 5; | |
| 5210 | + $var_const[ 'WPSSO_SCHEMA_COMMENTS_MAX' ] = 50; // Maximum number of comments when "Break comments into pages" is unchecked. | |
| 5211 | + $var_const[ 'WPSSO_SCHEMA_CONTACT_POINTS_MAX' ] = 5; | |
| 5212 | + $var_const[ 'WPSSO_SCHEMA_HOWTO_STEPS_MAX' ] = 40; | |
| 5213 | + $var_const[ 'WPSSO_SCHEMA_HOWTO_SUPPLIES_MAX' ] = 30; | |
| 5214 | + $var_const[ 'WPSSO_SCHEMA_HOWTO_TOOLS_MAX' ] = 20; | |
| 5215 | + $var_const[ 'WPSSO_SCHEMA_ISPARTOF_URLS_MAX' ] = 10; | |
| 5216 | + $var_const[ 'WPSSO_SCHEMA_METADATA_OFFERS_MAX' ] = 5; | |
| 5217 | + $var_const[ 'WPSSO_SCHEMA_MOVIE_ACTORS_MAX' ] = 10; | |
| 5218 | + $var_const[ 'WPSSO_SCHEMA_MOVIE_DIRECTORS_MAX' ] = 5; | |
| 5219 | + $var_const[ 'WPSSO_SCHEMA_OFFER_CATALOGS_MAX' ] = 5; | |
| 5220 | + $var_const[ 'WPSSO_SCHEMA_ORGANIZATION_TYPE_ID' ] = 'organization'; | |
| 5221 | + $var_const[ 'WPSSO_SCHEMA_RECIPE_INGREDIENTS_MAX' ] = 40; | |
| 5222 | + $var_const[ 'WPSSO_SCHEMA_RECIPE_INSTRUCTIONS_MAX' ] = 40; | |
| 5223 | + $var_const[ 'WPSSO_SCHEMA_REVIEWS_MAX' ] = 100; | |
| 5224 | + $var_const[ 'WPSSO_SCHEMA_SAMEAS_URLS_MAX' ] = 5; | |
| 5225 | + $var_const[ 'WPSSO_SCHEMA_WEBPAGE_REVIEWED_BY_MAX' ] = 5; | |
| 5226 | + | |
| 5227 | + /* | |
| 5228 | + * Setting and meta array names. | |
| 5229 | + */ | |
| 5230 | + $var_const[ 'WPSSO_DISMISS_NAME' ] = 'wpsso_dismissed'; | |
| 5231 | + $var_const[ 'WPSSO_NOTICES_NAME' ] = 'wpsso_notices'; | |
| 5232 | + $var_const[ 'WPSSO_META_NAME' ] = '_wpsso_meta'; | |
| 5233 | + $var_const[ 'WPSSO_META_ATTACHED_NAME' ] = '_wpsso_meta_attached'; | |
| 5234 | + $var_const[ 'WPSSO_META_RATING_NAME' ] = 'rating'; | |
| 5235 | + $var_const[ 'WPSSO_PREF_NAME' ] = '_wpsso_pref'; | |
| 5236 | + $var_const[ 'WPSSO_OPTIONS_NAME' ] = 'wpsso_options'; | |
| 5237 | + $var_const[ 'WPSSO_REG_TS_NAME' ] = 'wpsso_timestamps'; | |
| 5238 | + $var_const[ 'WPSSO_SITE_OPTIONS_NAME' ] = 'wpsso_site_options'; | |
| 5239 | + $var_const[ 'WPSSO_POST_CHECK_COUNT_NAME' ] = 'wpsso_post_check_count'; | |
| 5240 | + $var_const[ 'WPSSO_TMPL_HEAD_CHECK_NAME' ] = 'wpsso_tmpl_head_check'; | |
| 5241 | + $var_const[ 'WPSSO_WP_CONFIG_CHECK_NAME' ] = 'wpsso_wp_config_check'; | |
| 5242 | + $var_const[ 'WPSSO_PAGE_TAG_TAXONOMY' ] = 'page_tag'; | |
| 5243 | + | |
| 5244 | + /* | |
| 5245 | + * Hook priorities. | |
| 5246 | + */ | |
| 5247 | + $var_const[ 'WPSSO_ADD_MENU_PRIORITY' ] = -20; // 'admin_menu' hook priority. | |
| 5248 | + $var_const[ 'WPSSO_ADD_SUBMENU_PRIORITY' ] = -10; // 'admin_menu' hook priority. | |
| 5249 | + $var_const[ 'WPSSO_ADD_COLUMN_PRIORITY' ] = 100; | |
| 5250 | + $var_const[ 'WPSSO_ADMIN_SCRIPTS_PRIORITY' ] = -1000; // 'admin_enqueue_scripts' hook priority. | |
| 5251 | + $var_const[ 'WPSSO_BLOCK_ASSETS_PRIORITY' ] = -1000; // 'enqueue_block_editor_assets' hook priority. | |
| 5252 | + $var_const[ 'WPSSO_HEAD_PRIORITY' ] = -10; | |
| 5253 | + $var_const[ 'WPSSO_META_SAVE_PRIORITY' ] = -1000; // Save custom post/term/user meta before clearing the cache. | |
| 5254 | + $var_const[ 'WPSSO_META_CLEAR_PRIORITY' ] = -100; // Clear cache before priority 10 (where most caching plugins are hooked). | |
| 5255 | + $var_const[ 'WPSSO_META_REFRESH_PRIORITY' ] = -10; // Refresh cache before priority 10 (where most caching plugins are hooked). | |
| 5256 | + $var_const[ 'WPSSO_TITLE_TAG_PRIORITY' ] = 1000; // Priority for the WordPress 'document_title' filters. | |
| 5257 | + | |
| 5258 | + /* | |
| 5259 | + * PHP cURL library settings. | |
| 5260 | + */ | |
| 5261 | + $var_const[ 'WPSSO_PHP_CURL_CAINFO' ] = ABSPATH . WPINC . '/certificates/ca-bundle.crt'; | |
| 5262 | + $var_const[ 'WPSSO_PHP_CURL_USERAGENT' ] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:128.0) Gecko/20100101 Firefox/128.0'; | |
| 5263 | + $var_const[ 'WPSSO_PHP_CURL_USERAGENT_FACEBOOK' ] = 'facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)'; | |
| 5264 | + | |
| 5265 | + /* | |
| 5266 | + * Maybe override the default constant value with a pre-defined constant value. | |
| 5267 | + */ | |
| 5268 | + foreach ( $var_const as $name => $value ) { | |
| 5269 | + | |
| 5270 | + if ( defined( $name ) ) { | |
| 5271 | + | |
| 5272 | + $var_const[ $name ] = constant( $name ); | |
| 5273 | + } | |
| 5274 | + } | |
| 5275 | + | |
| 5276 | + return $var_const; | |
| 5277 | + } | |
| 5278 | + | |
| 5279 | + /* | |
| 5280 | + * Load all essential library files. | |
| 5281 | + * | |
| 5282 | + * Avoid calling is_admin() here as it can be unreliable this early in the load process - some plugins that operate | |
| 5283 | + * outside of the standard WordPress load process do not define WP_ADMIN as they should (which is required by | |
| 5284 | + * is_admin() this early in the WordPress load process). | |
| 5285 | + */ | |
| 5286 | + public static function require_libs( $plugin_file ) { | |
| 5287 | + | |
| 5288 | + require_once WPSSO_PLUGINDIR . 'lib/com/cache.php'; | |
| 5289 | + require_once WPSSO_PLUGINDIR . 'lib/com/nodebug.php'; // Always load the debug fallback class. | |
| 5290 | + require_once WPSSO_PLUGINDIR . 'lib/com/nonotice.php'; // Always load the notice fallback class. | |
| 5291 | + require_once WPSSO_PLUGINDIR . 'lib/com/plugin.php'; | |
| 5292 | + require_once WPSSO_PLUGINDIR . 'lib/com/util.php'; | |
| 5293 | + require_once WPSSO_PLUGINDIR . 'lib/com/util-options.php'; | |
| 5294 | + require_once WPSSO_PLUGINDIR . 'lib/com/util-wp.php'; | |
| 5295 | + | |
| 5296 | + require_once WPSSO_PLUGINDIR . 'lib/check.php'; | |
| 5297 | + require_once WPSSO_PLUGINDIR . 'lib/exception.php'; // Extends ErrorException. | |
| 5298 | + require_once WPSSO_PLUGINDIR . 'lib/functions.php'; | |
| 5299 | + require_once WPSSO_PLUGINDIR . 'lib/head.php'; | |
| 5300 | + require_once WPSSO_PLUGINDIR . 'lib/media.php'; | |
| 5301 | + require_once WPSSO_PLUGINDIR . 'lib/options.php'; | |
| 5302 | + require_once WPSSO_PLUGINDIR . 'lib/page.php'; | |
| 5303 | + require_once WPSSO_PLUGINDIR . 'lib/register.php'; | |
| 5304 | + require_once WPSSO_PLUGINDIR . 'lib/script.php'; | |
| 5305 | + require_once WPSSO_PLUGINDIR . 'lib/style.php'; | |
| 5306 | + require_once WPSSO_PLUGINDIR . 'lib/util.php'; // Extends SucomUtil. | |
| 5307 | + | |
| 5308 | + /* | |
| 5309 | + * Comment, post, term, user modules. | |
| 5310 | + */ | |
| 5311 | + require_once WPSSO_PLUGINDIR . 'lib/abstract/wp-meta.php'; | |
| 5312 | + require_once WPSSO_PLUGINDIR . 'lib/comment.php'; // Extends WpssoAbstractWpMeta. | |
| 5313 | + require_once WPSSO_PLUGINDIR . 'lib/post.php'; // Extends WpssoAbstractWpMeta. | |
| 5314 | + require_once WPSSO_PLUGINDIR . 'lib/term.php'; // Extends WpssoAbstractWpMeta. | |
| 5315 | + require_once WPSSO_PLUGINDIR . 'lib/user.php'; // Extends WpssoAbstractWpMeta. | |
| 5316 | + | |
| 5317 | + /* | |
| 5318 | + * Meta tags and markup. | |
| 5319 | + */ | |
| 5320 | + require_once WPSSO_PLUGINDIR . 'lib/link-rel.php'; | |
| 5321 | + require_once WPSSO_PLUGINDIR . 'lib/meta-name.php'; | |
| 5322 | + require_once WPSSO_PLUGINDIR . 'lib/oembed.php'; | |
| 5323 | + require_once WPSSO_PLUGINDIR . 'lib/opengraph.php'; | |
| 5324 | + require_once WPSSO_PLUGINDIR . 'lib/pinterest.php'; | |
| 5325 | + require_once WPSSO_PLUGINDIR . 'lib/schema.php'; | |
| 5326 | + require_once WPSSO_PLUGINDIR . 'lib/twittercard.php'; | |
| 5327 | + | |
| 5328 | + /* | |
| 5329 | + * Module library loader. | |
| 5330 | + */ | |
| 5331 | + require_once WPSSO_PLUGINDIR . 'lib/loader.php'; | |
| 5332 | + | |
| 5333 | + /* | |
| 5334 | + * Add-ons library. | |
| 5335 | + */ | |
| 5336 | + require_once WPSSO_PLUGINDIR . 'lib/abstract/add-on.php'; | |
| 5337 | + | |
| 5338 | + add_filter( 'wpsso_load_lib', array( __CLASS__, 'load_lib' ), 10, 3 ); | |
| 5339 | + } | |
| 5340 | + | |
| 5341 | + public static function load_lib( $success = false, $filespec = '', $classname = '' ) { | |
| 5342 | + | |
| 5343 | + if ( false !== $success ) { | |
| 5344 | + | |
| 5345 | + return $success; | |
| 5346 | + } | |
| 5347 | + | |
| 5348 | + if ( ! empty( $classname ) ) { | |
| 5349 | + | |
| 5350 | + if ( class_exists( $classname ) ) { | |
| 5351 | + | |
| 5352 | + return $classname; | |
| 5353 | + } | |
| 5354 | + } | |
| 5355 | + | |
| 5356 | + if ( ! empty( $filespec ) ) { | |
| 5357 | + | |
| 5358 | + $file_path = WPSSO_PLUGINDIR . 'lib/' . $filespec . '.php'; | |
| 5359 | + | |
| 5360 | + if ( file_exists( $file_path ) ) { | |
| 5361 | + | |
| 5362 | + require_once $file_path; | |
| 5363 | + | |
| 5364 | + if ( empty( $classname ) ) { | |
| 5365 | + | |
| 5366 | + return SucomUtil::sanitize_classname( 'wpsso' . $filespec, $allow_underscore = false ); | |
| 5367 | + } | |
| 5368 | + | |
| 5369 | + return $classname; | |
| 5370 | + } | |
| 5371 | + } | |
| 5372 | + | |
| 5373 | + return $success; | |
| 5374 | + } | |
| 5375 | + | |
| 5376 | + public static function get_cache_dir() { | |
| 5377 | + | |
| 5378 | + if ( defined( 'WPSSO_CACHE_DIR' ) ) { | |
| 5379 | + | |
| 5380 | + return WPSSO_CACHE_DIR; | |
| 5381 | + } | |
| 5382 | + | |
| 5383 | + if ( defined( 'WP_CONTENT_DIR' ) ) { | |
| 5384 | + | |
| 5385 | + $content_dir = trailingslashit( WP_CONTENT_DIR ); | |
| 5386 | + | |
| 5387 | + if ( self::is_cache_dir( $content_dir . 'cache/wpsso/' ) ) { | |
| 5388 | + | |
| 5389 | + return $content_dir . 'cache/wpsso/'; | |
| 5390 | + } | |
| 5391 | + } | |
| 5392 | + | |
| 5393 | + if ( defined( 'WPSSO_PLUGINDIR' ) ) { | |
| 5394 | + | |
| 5395 | + if ( self::is_cache_dir( WPSSO_PLUGINDIR . 'cache/' ) ) { | |
| 5396 | + | |
| 5397 | + return WPSSO_PLUGINDIR . 'cache/'; | |
| 5398 | + } | |
| 5399 | + } | |
| 5400 | + | |
| 5401 | + return false; | |
| 5402 | + } | |
| 5403 | + | |
| 5404 | + public static function get_cache_url() { | |
| 5405 | + | |
| 5406 | + if ( defined( 'WPSSO_CACHE_URL' ) ) { | |
| 5407 | + | |
| 5408 | + return WPSSO_CACHE_URL; | |
| 5409 | + } | |
| 5410 | + | |
| 5411 | + if ( defined( 'WP_CONTENT_DIR' ) ) { | |
| 5412 | + | |
| 5413 | + $content_dir = trailingslashit( WP_CONTENT_DIR ); | |
| 5414 | + | |
| 5415 | + if ( self::is_cache_dir( $content_dir . 'cache/wpsso/' ) ) { | |
| 5416 | + | |
| 5417 | + return content_url( 'cache/wpsso/' ); | |
| 5418 | + } | |
| 5419 | + } | |
| 5420 | + | |
| 5421 | + if ( defined( 'WPSSO_PLUGINDIR' ) ) { | |
| 5422 | + | |
| 5423 | + if ( self::is_cache_dir( WPSSO_PLUGINDIR . 'cache/' ) ) { | |
| 5424 | + | |
| 5425 | + if ( defined( 'WPSSO_URLPATH' ) ) { // Just in case. | |
| 5426 | + | |
| 5427 | + return WPSSO_URLPATH . 'cache/'; | |
| 5428 | + } | |
| 5429 | + } | |
| 5430 | + } | |
| 5431 | + | |
| 5432 | + return false; | |
| 5433 | + } | |
| 5434 | + | |
| 5435 | + private static function is_cache_dir( $dir ) { | |
| 5436 | + | |
| 5437 | + $dir = trailingslashit( $dir ); // Just in case. | |
| 5438 | + | |
| 5439 | + $index_file = $dir . 'index.php'; | |
| 5440 | + $access_file = $dir . '.htaccess'; | |
| 5441 | + | |
| 5442 | + if ( file_exists( $index_file ) ) { // Assume directory permissions are good. | |
| 5443 | + | |
| 5444 | + return true; | |
| 5445 | + } | |
| 5446 | + | |
| 5447 | + $index_str = '<?php // These aren\'t the droids you\'re looking for.' . "\n"; | |
| 5448 | + $access_str = '<FilesMatch "\.(php|pl|cgi|shtml)$"> | |
| 5449 | + # Apache 2.2 | |
| 5450 | + <IfModule !mod_authz_core.c> | |
| 5451 | + Order deny,allow | |
| 5452 | + Deny from all | |
| 5453 | + </IfModule> | |
| 5454 | + # Apache 2.4 | |
| 5455 | + <IfModule mod_authz_core.c> | |
| 5456 | + Require all denied | |
| 5457 | + </IfModule> | |
| 5458 | +</FilesMatch>' . "\n"; | |
| 5459 | + | |
| 5460 | + if ( is_dir( $dir ) || @mkdir( $dir, $mode = 0755, $recursive = true ) ) { | |
| 5461 | + | |
| 5462 | + if ( ( $index_fh = @fopen( $index_file, $mode = 'wb' ) ) && | |
| 5463 | + ( $access_fh = @fopen( $access_file, $mode = 'wb' ) ) ) { | |
| 5464 | + | |
| 5465 | + if ( @fwrite( $index_fh, $index_str ) && @fwrite( $access_fh, $access_str ) ) { | |
| 5466 | + | |
| 5467 | + fclose( $index_fh ); | |
| 5468 | + fclose( $access_fh ); | |
| 5469 | + | |
| 5470 | + @chmod( $index_file, $mode = 0644 ); | |
| 5471 | + @chmod( $access_file, $mode = 0644 ); | |
| 5472 | + | |
| 5473 | + return true; | |
| 5474 | + } | |
| 5475 | + } | |
| 5476 | + } | |
| 5477 | + | |
| 5478 | + return false; | |
| 5479 | + } | |
| 5480 | + | |
| 5481 | + /* | |
| 5482 | + * Returns $cf[ 'plugin' ] with 'wpsso' as the first array element and all other plugins sorted by translated name. | |
| 5483 | + */ | |
| 5484 | + public static function get_ext_sorted() { | |
| 5485 | + | |
| 5486 | + $cf = self::get_config(); | |
| 5487 | + | |
| 5488 | + /* | |
| 5489 | + * Sort the array by plugin name and maintain index association. | |
| 5490 | + */ | |
| 5491 | + uasort( $cf[ 'plugin' ], array( __CLASS__, 'sort_plugin_by_name_key' ) ); | |
| 5492 | + | |
| 5493 | + reset( $cf[ 'plugin' ] ); // Just in case. | |
| 5494 | + | |
| 5495 | + $first_key = key( $cf[ 'plugin' ] ); | |
| 5496 | + | |
| 5497 | + /* | |
| 5498 | + * Make sure the core plugin is listed first. | |
| 5499 | + */ | |
| 5500 | + if ( 'wpsso' !== $first_key ) { | |
| 5501 | + | |
| 5502 | + SucomUtil::move_to_front( $cf[ 'plugin' ], 'wpsso' ); | |
| 5503 | + } | |
| 5504 | + | |
| 5505 | + return $cf[ 'plugin' ]; | |
| 5506 | + } | |
| 5507 | + | |
| 5508 | + /* | |
| 5509 | + * Returns 'plugin' or 'add-on' translated string. | |
| 5510 | + */ | |
| 5511 | + public static function get_ext_type_transl( $ext ) { | |
| 5512 | + | |
| 5513 | + return 'wpsso' === $ext ? _x( 'plugin', 'plugin type', 'wpsso' ) : _x( 'add-on', 'plugin type', 'wpsso' ); | |
| 5514 | + } | |
| 5515 | + | |
| 5516 | + public static function get_ext_text_domain( $ext ) { | |
| 5517 | + | |
| 5518 | + $cf = self::get_config(); | |
| 5519 | + $text_domain = false; | |
| 5520 | + | |
| 5521 | + if ( isset( $cf[ 'plugin' ][ $ext ][ 'text_domain' ] ) ) { | |
| 5522 | + | |
| 5523 | + $text_domain = $cf[ 'plugin' ][ $ext ][ 'text_domain' ]; | |
| 5524 | + } | |
| 5525 | + | |
| 5526 | + return $text_domain; | |
| 5527 | + } | |
| 5528 | + | |
| 5529 | + /* | |
| 5530 | + * Returns false or a slashed directory path. | |
| 5531 | + */ | |
| 5532 | + public static function get_ext_dir( $ext, $read_cache = true ) { | |
| 5533 | + | |
| 5534 | + static $local_cache = array(); | |
| 5535 | + | |
| 5536 | + if ( $read_cache ) { | |
| 5537 | + | |
| 5538 | + if ( isset( $local_cache[ $ext ] ) ) { | |
| 5539 | + | |
| 5540 | + return $local_cache[ $ext ]; | |
| 5541 | + } | |
| 5542 | + } | |
| 5543 | + | |
| 5544 | + /* | |
| 5545 | + * Check for active plugin constant first. | |
| 5546 | + */ | |
| 5547 | + $ext_dir_const = strtoupper( $ext ) . '_PLUGINDIR'; | |
| 5548 | + | |
| 5549 | + if ( defined( $ext_dir_const ) && is_dir( $ext_dir = constant( $ext_dir_const ) ) ) { | |
| 5550 | + | |
| 5551 | + return $local_cache[ $ext ] = trailingslashit( $ext_dir ); | |
| 5552 | + } | |
| 5553 | + | |
| 5554 | + /* | |
| 5555 | + * Fallback to checking for inactive plugin folder. | |
| 5556 | + */ | |
| 5557 | + $cf = self::get_config(); | |
| 5558 | + | |
| 5559 | + if ( isset( $cf[ 'plugin' ][ $ext ][ 'slug' ] ) ) { | |
| 5560 | + | |
| 5561 | + $slug = $cf[ 'plugin' ][ $ext ][ 'slug' ]; | |
| 5562 | + | |
| 5563 | + if ( defined ( 'WPMU_PLUGIN_DIR' ) && is_dir( $ext_dir = trailingslashit( WPMU_PLUGIN_DIR ) . $slug . '/' ) ) { | |
| 5564 | + | |
| 5565 | + return $local_cache[ $ext ] = $ext_dir; | |
| 5566 | + } | |
| 5567 | + | |
| 5568 | + if ( defined ( 'WP_PLUGIN_DIR' ) && is_dir( $ext_dir = trailingslashit( WP_PLUGIN_DIR ) . $slug . '/' ) ) { | |
| 5569 | + | |
| 5570 | + return $local_cache[ $ext ] = $ext_dir; | |
| 5571 | + } | |
| 5572 | + } | |
| 5573 | + | |
| 5574 | + return $local_cache[ $ext ] = false; | |
| 5575 | + } | |
| 5576 | + | |
| 5577 | + /* | |
| 5578 | + * Returns false, a slashed directory path, or the file name path. | |
| 5579 | + * | |
| 5580 | + * Use $file_is_dir = true when specifically checking for a sub-folder path. | |
| 5581 | + */ | |
| 5582 | + public static function get_ext_file_path( $ext, $rel_file, $file_is_dir = false ) { | |
| 5583 | + | |
| 5584 | + $file_path = false; | |
| 5585 | + | |
| 5586 | + if ( $ext_dir = self::get_ext_dir( $ext ) ) { // Returns false or a slashed directory path. | |
| 5587 | + | |
| 5588 | + $rel_file = SucomUtil::sanitize_file_path( $rel_file ); | |
| 5589 | + | |
| 5590 | + if ( $file_is_dir ) { // Must be a directory. | |
| 5591 | + | |
| 5592 | + if ( is_dir( trailingslashit( $ext_dir . $rel_file ) ) ) { | |
| 5593 | + | |
| 5594 | + $file_path = trailingslashit( $ext_dir . $rel_file ); | |
| 5595 | + } | |
| 5596 | + | |
| 5597 | + } elseif ( file_exists( $ext_dir . $rel_file ) ) { | |
| 5598 | + | |
| 5599 | + $file_path = $ext_dir . $rel_file; | |
| 5600 | + } | |
| 5601 | + } | |
| 5602 | + | |
| 5603 | + return $file_path; | |
| 5604 | + } | |
| 5605 | + | |
| 5606 | + public static function get_ext_file_url( $ext, $rel_file ) { | |
| 5607 | + | |
| 5608 | + $cf = self::get_config(); | |
| 5609 | + | |
| 5610 | + $url_key = SucomUtil::sanitize_hookname( basename( $rel_file ) ); // Changes html/setup.html to setup_html (note underscore). | |
| 5611 | + | |
| 5612 | + $file_url = false; | |
| 5613 | + | |
| 5614 | + if ( isset( $cf[ 'plugin' ][ $ext ][ 'url' ][ $url_key ] ) ) { | |
| 5615 | + | |
| 5616 | + /* | |
| 5617 | + * Returns URL or false on failure. | |
| 5618 | + * | |
| 5619 | + * See https://developer.wordpress.org/reference/functions/wp_http_validate_url/ | |
| 5620 | + */ | |
| 5621 | + $file_url = wp_http_validate_url( $cf[ 'plugin' ][ $ext ][ 'url' ][ $url_key ] ); | |
| 5622 | + } | |
| 5623 | + | |
| 5624 | + return $file_url; | |
| 5625 | + } | |
| 5626 | + | |
| 5627 | + public static function get_schema_units() { | |
| 5628 | + | |
| 5629 | + static $local_cache = null; | |
| 5630 | + | |
| 5631 | + if ( null === $local_cache ) { | |
| 5632 | + | |
| 5633 | + $local_cache = apply_filters( 'wpsso_schema_units', self::$cf[ 'head' ][ 'schema_units' ] ); | |
| 5634 | + } | |
| 5635 | + | |
| 5636 | + return $local_cache; | |
| 5637 | + } | |
| 5638 | + | |
| 5639 | + public static function get_social_accounts( $key = false ) { | |
| 5640 | + | |
| 5641 | + static $local_cache = null; | |
| 5642 | + | |
| 5643 | + if ( null === $local_cache ) { | |
| 5644 | + | |
| 5645 | + $local_cache = apply_filters( 'wpsso_social_accounts', self::$cf[ 'form' ][ 'social_accounts' ] ); | |
| 5646 | + | |
| 5647 | + foreach ( $local_cache as $k => $label ) { | |
| 5648 | + | |
| 5649 | + $local_cache[ $k ] = _x( $label, 'option value', 'wpsso' ); | |
| 5650 | + } | |
| 5651 | + | |
| 5652 | + /* | |
| 5653 | + * Sort the associative array by value (ie. the translated label). | |
| 5654 | + */ | |
| 5655 | + method_exists( 'SucomUtil', 'natasort' ) ? SucomUtil::natasort( $local_cache ) : uasort( $local_cache, 'strnatcasecmp' ); | |
| 5656 | + } | |
| 5657 | + | |
| 5658 | + if ( false !== $key ) { | |
| 5659 | + | |
| 5660 | + if ( $key && is_string( $key ) ) { | |
| 5661 | + | |
| 5662 | + if ( isset( $local_cache[ $key ] ) ) { // Just in case. | |
| 5663 | + | |
| 5664 | + return $local_cache[ $key ]; | |
| 5665 | + } | |
| 5666 | + } | |
| 5667 | + | |
| 5668 | + return null; | |
| 5669 | + } | |
| 5670 | + | |
| 5671 | + return $local_cache; | |
| 5672 | + } | |
| 5673 | + | |
| 5674 | + public static function get_input_limits( $opt_key = false ) { | |
| 5675 | + | |
| 5676 | + static $local_cache = null; | |
| 5677 | + | |
| 5678 | + if ( null === $local_cache ) { | |
| 5679 | + | |
| 5680 | + $local_cache = self::$cf[ 'form' ][ 'input_limits' ]; | |
| 5681 | + | |
| 5682 | + foreach ( $local_cache as $key => $input_limits ) { | |
| 5683 | + | |
| 5684 | + $filter_name = SucomUtil::sanitize_hookname( 'wpsso_input_limits_' . $key ); | |
| 5685 | + | |
| 5686 | + $local_cache[ $key ] = apply_filters( $filter_name, $input_limits ); | |
| 5687 | + } | |
| 5688 | + } | |
| 5689 | + | |
| 5690 | + if ( false !== $opt_key ) { | |
| 5691 | + | |
| 5692 | + if ( $opt_key && is_string( $opt_key ) ) { | |
| 5693 | + | |
| 5694 | + if ( isset( $local_cache[ $opt_key ] ) ) { | |
| 5695 | + | |
| 5696 | + return $local_cache[ $opt_key ]; | |
| 5697 | + } | |
| 5698 | + } | |
| 5699 | + | |
| 5700 | + return null; | |
| 5701 | + } | |
| 5702 | + | |
| 5703 | + return $local_cache; | |
| 5704 | + } | |
| 5705 | + | |
| 5706 | + /* | |
| 5707 | + * Provides a key index for attributes to meta data options. | |
| 5708 | + * | |
| 5709 | + * Returns false or an options key. | |
| 5710 | + */ | |
| 5711 | + public static function get_attr_md_index( $md_key = false ) { | |
| 5712 | + | |
| 5713 | + return self::get_opt_md_info( $md_index = 'attr_md_index', $md_key ); | |
| 5714 | + } | |
| 5715 | + | |
| 5716 | + /* | |
| 5717 | + * Provides a key index for custom fields to meta data options. | |
| 5718 | + * | |
| 5719 | + * Returns false or an options key. | |
| 5720 | + */ | |
| 5721 | + public static function get_cf_md_index( $md_key = false ) { | |
| 5722 | + | |
| 5723 | + return self::get_opt_md_info( $md_index = 'cf_md_index', $md_key ); | |
| 5724 | + } | |
| 5725 | + | |
| 5726 | + /* | |
| 5727 | + * Provides information to help read and split custom field values into numbered options. | |
| 5728 | + * | |
| 5729 | + * Returns true, false, or an array. | |
| 5730 | + */ | |
| 5731 | + public static function get_md_keys_multi( $md_key = false ) { | |
| 5732 | + | |
| 5733 | + return self::get_opt_md_info( $md_index = 'md_keys_multi', $md_key ); | |
| 5734 | + } | |
| 5735 | + | |
| 5736 | + /* | |
| 5737 | + * Returns an array of metadata keys (can be empty). | |
| 5738 | + * | |
| 5739 | + * $md_key = true | false | string | array | |
| 5740 | + */ | |
| 5741 | + public static function get_md_keys_fallback( $md_key = false ) { | |
| 5742 | + | |
| 5743 | + static $local_cache = null; | |
| 5744 | + | |
| 5745 | + if ( is_array( $md_key ) ) { // Just in case. | |
| 5746 | + | |
| 5747 | + return $md_key; // Return an array. | |
| 5748 | + | |
| 5749 | + } elseif ( null === $local_cache ) { | |
| 5750 | + | |
| 5751 | + $local_cache = self::$cf[ 'opt' ][ 'md_keys_fallback' ]; | |
| 5752 | + | |
| 5753 | + foreach ( $local_cache as $key => $fallback ) { | |
| 5754 | + | |
| 5755 | + $filter_name = SucomUtil::sanitize_hookname( 'wpsso_md_keys_fallback_' . $key ); | |
| 5756 | + | |
| 5757 | + $local_cache[ $key ] = apply_filters( $filter_name, $fallback ); | |
| 5758 | + } | |
| 5759 | + } | |
| 5760 | + | |
| 5761 | + if ( false !== $md_key ) { | |
| 5762 | + | |
| 5763 | + if ( $md_key && is_string( $md_key ) ) { | |
| 5764 | + | |
| 5765 | + if ( isset( $local_cache[ $md_key ] ) ) { | |
| 5766 | + | |
| 5767 | + return $local_cache[ $md_key ]; // Return an array. | |
| 5768 | + } | |
| 5769 | + | |
| 5770 | + return array( $md_key ); // Return an array. | |
| 5771 | + } | |
| 5772 | + | |
| 5773 | + return array(); // Return an array. | |
| 5774 | + } | |
| 5775 | + | |
| 5776 | + return $local_cache; // Return an array. | |
| 5777 | + } | |
| 5778 | + | |
| 5779 | + /* | |
| 5780 | + * Provides a key index for attributes and custom fields to meta data options. | |
| 5781 | + * | |
| 5782 | + * Provides information to help read and split attribute and custom field values into numbered options. | |
| 5783 | + * | |
| 5784 | + * Example $md_index values: 'attr_md_index', 'cf_md_index', or 'md_keys_multi'. | |
| 5785 | + */ | |
| 5786 | + private static function get_opt_md_info( $md_index, $md_key = false ) { | |
| 5787 | + | |
| 5788 | + static $local_cache = array(); | |
| 5789 | + | |
| 5790 | + if ( ! isset( $local_cache[ $md_index ] ) ) { | |
| 5791 | + | |
| 5792 | + $local_cache[ $md_index ] = isset( self::$cf[ 'opt' ][ $md_index ] ) ? self::$cf[ 'opt' ][ $md_index ] : array(); | |
| 5793 | + | |
| 5794 | + /* | |
| 5795 | + * See WpssoIntegRecipeWpRecipeMaker->filter_cf_md_index(). | |
| 5796 | + */ | |
| 5797 | + $local_cache[ $md_index ] = apply_filters( 'wpsso_' . $md_index, $local_cache[ $md_index ] ); | |
| 5798 | + } | |
| 5799 | + | |
| 5800 | + if ( false !== $md_key ) { | |
| 5801 | + | |
| 5802 | + if ( isset( $local_cache[ $md_index ][ $md_key ] ) ) { | |
| 5803 | + | |
| 5804 | + return $local_cache[ $md_index ][ $md_key ]; | |
| 5805 | + } | |
| 5806 | + | |
| 5807 | + return false; | |
| 5808 | + } | |
| 5809 | + | |
| 5810 | + return $local_cache[ $md_index ]; | |
| 5811 | + } | |
| 5812 | + | |
| 5813 | + private static function sort_plugin_by_name_key( $a, $b ) { | |
| 5814 | + | |
| 5815 | + if ( isset( $a[ 'name' ] ) && isset( $b[ 'name' ] ) ) { | |
| 5816 | + | |
| 5817 | + $a[ 'name' ] = _x( $a[ 'name' ], 'plugin name', 'wpsso' ); | |
| 5818 | + $b[ 'name' ] = _x( $b[ 'name' ], 'plugin name', 'wpsso' ); | |
| 5819 | + | |
| 5820 | + /* | |
| 5821 | + * Case insensitive string comparisons using a "natural order" algorithm. | |
| 5822 | + */ | |
| 5823 | + return strnatcasecmp( $a[ 'name' ], $b[ 'name' ] ); | |
| 5824 | + } | |
| 5825 | + | |
| 5826 | + return 0; // No change. | |
| 5827 | + } | |
| 5828 | + } | |
| 5829 | +} | |