Make your WordPress site irresistible. Natural SEO attraction with: - robots.txt management - sitemap.xml generation - LLMs.txt support - Google integration (Analytics, Search Console, Tag Manager) - Schema.org structured data - Open Graph / Twitter Card meta tags - AMP support - Visual elements gallery - Built-in backup/restore module Includes build.sh and .distignore for WordPress-installable release ZIPs.
1936 lines
127 KiB
PHP
1936 lines
127 KiB
PHP
<?php
|
|
/**
|
|
* Google Appearance admin page template
|
|
*/
|
|
|
|
// Prevent direct access
|
|
if (!defined('ABSPATH')) {
|
|
exit;
|
|
}
|
|
?>
|
|
|
|
<div class="seo-info-box">
|
|
<h3><?php _e('Schema.org Structured Data Configuration', 'tigerstyle-heat'); ?></h3>
|
|
<p class="description">
|
|
<?php _e('Configure Schema.org structured data to enhance your website\'s appearance across all search engines (Google, Bing, Yahoo, etc.). Structured data helps search engines understand your content and display rich snippets, which can improve click-through rates and search visibility.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
<p class="description">
|
|
<strong><?php _e('Official Resources:', 'tigerstyle-heat'); ?></strong><br>
|
|
<a href="https://schema.org/" target="_blank">
|
|
<?php _e('Schema.org Official Documentation', 'tigerstyle-heat'); ?>
|
|
</a> |
|
|
<a href="https://developers.google.com/search/docs/appearance/structured-data" target="_blank">
|
|
<?php _e('Google Structured Data Guidelines', 'tigerstyle-heat'); ?>
|
|
</a> |
|
|
<a href="https://search.google.com/test/rich-results" target="_blank">
|
|
<?php _e('Google Rich Results Test', 'tigerstyle-heat'); ?>
|
|
</a>
|
|
</p>
|
|
</div>
|
|
|
|
<form method="post" action="<?php echo admin_url('admin-post.php'); ?>">
|
|
<input type="hidden" name="action" value="update_google_appearance">
|
|
<?php wp_nonce_field('update_google_appearance', 'google_appearance_nonce'); ?>
|
|
|
|
<!-- Organization Structured Data -->
|
|
<h3><?php _e('Organization Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Organization Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="organization_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('organization_enabled', false)); ?>>
|
|
<?php _e('Add Organization structured data to your website', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Helps Google understand your organization and can enhance search appearance.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="organization_name"><?php _e('Organization Name', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="organization_name"
|
|
name="organization_name"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('organization_name', get_bloginfo('name'))); ?>"
|
|
class="regular-text"
|
|
placeholder="<?php echo esc_attr(get_bloginfo('name')); ?>"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Your organization\'s official name', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="organization_logo"><?php _e('Organization Logo', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="url"
|
|
id="organization_logo"
|
|
name="organization_logo"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('organization_logo', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="https://example.com/logo.png"
|
|
>
|
|
<p class="description">
|
|
<?php _e('URL to your organization\'s logo (minimum 112x112px, must be crawlable)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<!-- Local Business Structured Data -->
|
|
<h3><?php _e('Local Business Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Local Business Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="local_business_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('local_business_enabled', false)); ?>>
|
|
<?php _e('Add Local Business structured data (for businesses with physical locations)', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Essential for local SEO and Google Maps visibility. Only enable if you have a physical business location.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="business_address_street"><?php _e('Street Address', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="business_address_street"
|
|
name="business_address_street"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('business_address_street', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="123 Main Street"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Street address of your business location', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<!-- Return Policy Structured Data -->
|
|
<h3><?php _e('Return Policy Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Return Policy Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="return_policy_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('return_policy_enabled', false)); ?>>
|
|
<?php _e('Add Return Policy structured data to your website', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Helps Google understand your return policy for e-commerce listings and merchant centers.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="return_policy_type"><?php _e('Policy Type', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<select id="return_policy_type" name="return_policy_type" class="regular-text">
|
|
<option value="ProductReturnPolicy" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_type', 'MerchantReturnPolicy'), 'ProductReturnPolicy'); ?>><?php _e('Product Return Policy (Simple)', 'tigerstyle-heat'); ?></option>
|
|
<option value="MerchantReturnPolicy" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_type', 'MerchantReturnPolicy'), 'MerchantReturnPolicy'); ?>><?php _e('Merchant Return Policy (Comprehensive)', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
<p class="description">
|
|
<?php _e('Choose simple for basic return info, comprehensive for detailed e-commerce policies with fees and conditions.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="return_policy_category"><?php _e('Return Category', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<select id="return_policy_category" name="return_policy_category" class="regular-text">
|
|
<option value="" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_category', ''), ''); ?>><?php _e('Select Category', 'tigerstyle-heat'); ?></option>
|
|
<option value="Returnable" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_category'), 'Returnable'); ?>><?php _e('Returnable', 'tigerstyle-heat'); ?></option>
|
|
<option value="NoReturn" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_category'), 'NoReturn'); ?>><?php _e('No Returns', 'tigerstyle-heat'); ?></option>
|
|
<option value="FinalSale" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_category'), 'FinalSale'); ?>><?php _e('Final Sale', 'tigerstyle-heat'); ?></option>
|
|
<option value="ExchangeOnly" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_category'), 'ExchangeOnly'); ?>><?php _e('Exchange Only', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
<p class="description">
|
|
<?php _e('Overall category of your return policy', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="return_policy_days"><?php _e('Return Days', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="number"
|
|
id="return_policy_days"
|
|
name="return_policy_days"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('return_policy_days', '')); ?>"
|
|
class="small-text"
|
|
min="0"
|
|
max="365"
|
|
>
|
|
<span class="description"><?php _e('days (e.g., 30 for 30-day returns)', 'tigerstyle-heat'); ?></span>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="return_policy_url"><?php _e('Return Policy URL', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="url"
|
|
id="return_policy_url"
|
|
name="return_policy_url"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('return_policy_url', '')); ?>"
|
|
class="large-text"
|
|
placeholder="https://example.com/returns"
|
|
>
|
|
<p class="description">
|
|
<?php _e('URL to your detailed return policy page', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="return_policy_country"><?php _e('Applicable Country', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="return_policy_country"
|
|
name="return_policy_country"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('return_policy_country', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="US, CA, GB, etc."
|
|
>
|
|
<p class="description">
|
|
<?php _e('ISO country code where this policy applies (optional)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr class="merchant-only" style="display: none;">
|
|
<th scope="row">
|
|
<label for="return_policy_currency"><?php _e('Currency', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<select id="return_policy_currency" name="return_policy_currency" class="regular-text">
|
|
<option value="USD" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_currency', 'USD'), 'USD'); ?>>USD - US Dollar</option>
|
|
<option value="EUR" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_currency'), 'EUR'); ?>>EUR - Euro</option>
|
|
<option value="GBP" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_currency'), 'GBP'); ?>>GBP - British Pound</option>
|
|
<option value="CAD" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_currency'), 'CAD'); ?>>CAD - Canadian Dollar</option>
|
|
<option value="AUD" <?php selected(TigerStyleSEO_Utils::get_option('return_policy_currency'), 'AUD'); ?>>AUD - Australian Dollar</option>
|
|
</select>
|
|
<p class="description">
|
|
<?php _e('Currency for return fees and costs (Merchant Policy only)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr class="merchant-only" style="display: none;">
|
|
<th scope="row">
|
|
<label for="customer_remorse_return_fees"><?php _e('Customer Remorse Return Fee', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="number"
|
|
id="customer_remorse_return_fees"
|
|
name="customer_remorse_return_fees"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('customer_remorse_return_fees', '')); ?>"
|
|
class="small-text"
|
|
min="0"
|
|
step="0.01"
|
|
>
|
|
<span class="description"><?php _e('Fee when customer returns for non-defect reasons', 'tigerstyle-heat'); ?></span>
|
|
</td>
|
|
</tr>
|
|
<tr class="merchant-only" style="display: none;">
|
|
<th scope="row">
|
|
<label for="item_defect_return_fees"><?php _e('Defective Item Return Fee', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="number"
|
|
id="item_defect_return_fees"
|
|
name="item_defect_return_fees"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('item_defect_return_fees', '')); ?>"
|
|
class="small-text"
|
|
min="0"
|
|
step="0.01"
|
|
>
|
|
<span class="description"><?php _e('Fee when item is returned due to defect (usually 0)', 'tigerstyle-heat'); ?></span>
|
|
</td>
|
|
</tr>
|
|
<tr class="merchant-only" style="display: none;">
|
|
<th scope="row">
|
|
<label for="restocking_fee"><?php _e('Restocking Fee', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="number"
|
|
id="restocking_fee"
|
|
name="restocking_fee"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('restocking_fee', '')); ?>"
|
|
class="small-text"
|
|
min="0"
|
|
step="0.01"
|
|
>
|
|
<span class="description"><?php _e('Fee for restocking returned items', 'tigerstyle-heat'); ?></span>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
const policyType = document.getElementById('return_policy_type');
|
|
const merchantFields = document.querySelectorAll('.merchant-only');
|
|
|
|
function toggleMerchantFields() {
|
|
const isMerchant = policyType.value === 'MerchantReturnPolicy';
|
|
merchantFields.forEach(function(field) {
|
|
field.style.display = isMerchant ? 'table-row' : 'none';
|
|
});
|
|
}
|
|
|
|
if (policyType) {
|
|
policyType.addEventListener('change', toggleMerchantFields);
|
|
toggleMerchantFields(); // Initial state
|
|
}
|
|
});
|
|
</script>
|
|
|
|
<!-- Profile Page Structured Data -->
|
|
<h3><?php _e('Profile Page Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Profile Page Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="profile_page_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('profile_page_enabled', false)); ?>>
|
|
<?php _e('Add Person structured data for profile pages', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Automatically adds Person structured data to author pages and optionally to specific pages/posts.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Profile Data Options', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="profile_use_page_specific" value="1" <?php checked(TigerStyleSEO_Utils::get_option('profile_use_page_specific', false)); ?>>
|
|
<?php _e('Use page-specific profile data (below) for pages/posts', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('When enabled, uses the profile settings below for individual pages/posts instead of author data.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="profile_show_author_email" value="1" <?php checked(TigerStyleSEO_Utils::get_option('profile_show_author_email', false)); ?>>
|
|
<?php _e('Include author email addresses in public structured data', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('⚠️ Only enable if author emails should be public (affects author pages).', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Page-Specific Profile Settings', 'tigerstyle-heat'); ?></h4>
|
|
<p class="description"><?php _e('These settings apply when "Use page-specific profile data" is enabled above.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_person_name"><?php _e('Person Name', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_person_name"
|
|
name="profile_person_name"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_person_name', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="John Doe"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Full name of the person this profile represents', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_job_title"><?php _e('Job Title', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_job_title"
|
|
name="profile_job_title"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_job_title', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="Software Engineer"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Professional title or job position', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_description"><?php _e('Description', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<textarea
|
|
id="profile_description"
|
|
name="profile_description"
|
|
rows="3"
|
|
class="large-text"
|
|
><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('profile_description', '')); ?></textarea>
|
|
<p class="description">
|
|
<?php _e('Brief description or bio of the person', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_email"><?php _e('Email Address', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="email"
|
|
id="profile_email"
|
|
name="profile_email"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_email', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="john@example.com"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Public email address (will be visible in structured data)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_phone"><?php _e('Phone Number', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="tel"
|
|
id="profile_phone"
|
|
name="profile_phone"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_phone', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="+1-555-123-4567"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Contact phone number', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_website"><?php _e('Website URL', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="url"
|
|
id="profile_website"
|
|
name="profile_website"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_website', '')); ?>"
|
|
class="large-text"
|
|
placeholder="https://johndoe.com"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Personal or professional website', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_image"><?php _e('Profile Image URL', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="url"
|
|
id="profile_image"
|
|
name="profile_image"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_image', '')); ?>"
|
|
class="large-text"
|
|
placeholder="https://example.com/profile.jpg"
|
|
>
|
|
<p class="description">
|
|
<?php _e('High-quality profile photo (minimum 300x300px recommended)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_organization"><?php _e('Organization/Company', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_organization"
|
|
name="profile_organization"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_organization', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="Acme Corporation"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Current employer or affiliated organization', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Address Information', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_address_street"><?php _e('Street Address', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_address_street"
|
|
name="profile_address_street"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_address_street', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="123 Main Street"
|
|
>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_address_city"><?php _e('City', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_address_city"
|
|
name="profile_address_city"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_address_city', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="New York"
|
|
>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_address_region"><?php _e('State/Region', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_address_region"
|
|
name="profile_address_region"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_address_region', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="NY"
|
|
>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_address_postal_code"><?php _e('Postal Code', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_address_postal_code"
|
|
name="profile_address_postal_code"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_address_postal_code', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="10001"
|
|
>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_address_country"><?php _e('Country', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="profile_address_country"
|
|
name="profile_address_country"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('profile_address_country', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="United States"
|
|
>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Social Media & Professional Links', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_social_profiles"><?php _e('Social Media Profiles', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<textarea
|
|
id="profile_social_profiles"
|
|
name="profile_social_profiles"
|
|
rows="5"
|
|
class="large-text"
|
|
placeholder="https://twitter.com/username https://linkedin.com/in/username https://github.com/username"
|
|
><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('profile_social_profiles', '')); ?></textarea>
|
|
<p class="description">
|
|
<?php _e('One URL per line. Include social media profiles, GitHub, LinkedIn, etc.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="profile_colleagues"><?php _e('Colleagues/Associates', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<textarea
|
|
id="profile_colleagues"
|
|
name="profile_colleagues"
|
|
rows="3"
|
|
class="large-text"
|
|
placeholder="https://example.com/colleague1 https://example.com/colleague2"
|
|
><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('profile_colleagues', '')); ?></textarea>
|
|
<p class="description">
|
|
<?php _e('URLs to colleague or associate profile pages (one per line)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<!-- QAPage Structured Data -->
|
|
<h3><?php _e('QAPage Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable QAPage Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="qapage_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('qapage_enabled', false)); ?>>
|
|
<?php _e('Add QAPage structured data for Q&A content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Enhances FAQ pages, Q&A posts, and question-based content with structured data for better search appearance.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Detection Options', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="qapage_auto_detect" value="1" <?php checked(TigerStyleSEO_Utils::get_option('qapage_auto_detect', false)); ?>>
|
|
<?php _e('Auto-detect Q&A content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Automatically identify pages as Q&A based on titles, content patterns (FAQ, Q&A, questions).', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="qapage_manual_enable" value="1" <?php checked(TigerStyleSEO_Utils::get_option('qapage_manual_enable', false)); ?>>
|
|
<?php _e('Force enable for current page/post type', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Always apply QAPage structured data to pages/posts when enabled above.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="qapage_auto_extract" value="1" <?php checked(TigerStyleSEO_Utils::get_option('qapage_auto_extract', true)); ?>>
|
|
<?php _e('Auto-extract questions and answers from content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Automatically extract Q&A from page title and content. Disable to use manual Q&A below.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Manual Question & Answer Override', 'tigerstyle-heat'); ?></h4>
|
|
<p class="description"><?php _e('Provide specific question and answer text. Leave empty to use auto-extraction.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="qapage_question_text"><?php _e('Question Text', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<textarea
|
|
id="qapage_question_text"
|
|
name="qapage_question_text"
|
|
rows="3"
|
|
class="large-text"
|
|
placeholder="What is the best way to optimize SEO for WordPress?"
|
|
><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('qapage_question_text', '')); ?></textarea>
|
|
<p class="description">
|
|
<?php _e('The main question being answered on this page', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="qapage_answer_text"><?php _e('Answer Text', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<textarea
|
|
id="qapage_answer_text"
|
|
name="qapage_answer_text"
|
|
rows="6"
|
|
class="large-text"
|
|
placeholder="The best way to optimize SEO for WordPress includes..."
|
|
><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('qapage_answer_text', '')); ?></textarea>
|
|
<p class="description">
|
|
<?php _e('The answer or explanation for the question above', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div class="seo-info-box">
|
|
<h4><?php _e('QAPage Structured Data Information', 'tigerstyle-heat'); ?></h4>
|
|
<p><?php _e('QAPage structured data helps search engines understand question-and-answer content, which can result in:', 'tigerstyle-heat'); ?></p>
|
|
<ul>
|
|
<li><strong><?php _e('Rich Snippets:', 'tigerstyle-heat'); ?></strong> <?php _e('Enhanced search results with Q&A format', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('FAQ Rich Results:', 'tigerstyle-heat'); ?></strong> <?php _e('Expandable Q&A sections in search results', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Voice Search Optimization:', 'tigerstyle-heat'); ?></strong> <?php _e('Better matching for voice queries', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Featured Snippets:', 'tigerstyle-heat'); ?></strong> <?php _e('Increased chance of appearing in position zero', 'tigerstyle-heat'); ?></li>
|
|
</ul>
|
|
<p>
|
|
<strong><?php _e('Auto-Detection Patterns:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Titles containing: FAQ, Frequently Asked Questions, Q&A, Questions and Answers', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Question titles starting with: What, How, Why, When, Where, Who, Which, Can, Is, Are, Do, Does, Will, Would, Should', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Titles ending with question marks (?)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
<p>
|
|
<strong><?php _e('Best Practices:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Use clear, natural language questions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Provide complete, helpful answers', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Keep answers concise but comprehensive', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Use this for genuine Q&A content, not regular pages', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Speakable Structured Data -->
|
|
<h3><?php _e('Speakable Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Speakable Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="speakable_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('speakable_enabled', false)); ?>>
|
|
<?php _e('Add Speakable structured data for voice assistants', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Identifies sections suitable for text-to-speech and voice assistants like Google Assistant, Alexa.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Auto-Detection Settings', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="speakable_auto_detect" value="1" <?php checked(TigerStyleSEO_Utils::get_option('speakable_auto_detect', true)); ?>>
|
|
<?php _e('Auto-detect speakable content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Automatically identify common content sections using CSS selectors.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<div style="margin-left: 25px; margin-top: 10px;">
|
|
<label>
|
|
<input type="checkbox" name="speakable_include_headings" value="1" <?php checked(TigerStyleSEO_Utils::get_option('speakable_include_headings', true)); ?>>
|
|
<?php _e('Include headings (h1, h2, titles)', 'tigerstyle-heat'); ?>
|
|
</label><br>
|
|
|
|
<label>
|
|
<input type="checkbox" name="speakable_include_summary" value="1" <?php checked(TigerStyleSEO_Utils::get_option('speakable_include_summary', true)); ?>>
|
|
<?php _e('Include summaries and excerpts', 'tigerstyle-heat'); ?>
|
|
</label><br>
|
|
|
|
<label>
|
|
<input type="checkbox" name="speakable_include_content" value="1" <?php checked(TigerStyleSEO_Utils::get_option('speakable_include_content', false)); ?>>
|
|
<?php _e('Include main content areas', 'tigerstyle-heat'); ?>
|
|
</label><br>
|
|
|
|
<label>
|
|
<input type="checkbox" name="speakable_include_navigation" value="1" <?php checked(TigerStyleSEO_Utils::get_option('speakable_include_navigation', false)); ?>>
|
|
<?php _e('Include navigation elements', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Custom CSS Selectors', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<textarea name="speakable_css_selectors" rows="3" cols="50" class="large-text"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('speakable_css_selectors', '')); ?></textarea>
|
|
<p class="description">
|
|
<?php _e('Comma-separated CSS selectors for speakable content (e.g., .headline, #summary, .important-text)', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Custom XPath Expressions', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<textarea name="speakable_xpath_expressions" rows="3" cols="50" class="large-text"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('speakable_xpath_expressions', '')); ?></textarea>
|
|
<p class="description">
|
|
<?php _e('Comma-separated XPath expressions for speakable content (e.g., //h1, //div[@class="summary"])', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div class="seo-info-box">
|
|
<h4><?php _e('Speakable Structured Data Information', 'tigerstyle-heat'); ?></h4>
|
|
<p><?php _e('Speakable structured data helps voice assistants and text-to-speech systems identify important content sections:', 'tigerstyle-heat'); ?></p>
|
|
<ul>
|
|
<li><strong><?php _e('Voice Search Optimization:', 'tigerstyle-heat'); ?></strong> <?php _e('Better content selection for voice queries', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Accessibility Enhancement:', 'tigerstyle-heat'); ?></strong> <?php _e('Improved experience for screen readers and audio browsers', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Smart Speaker Integration:', 'tigerstyle-heat'); ?></strong> <?php _e('Better integration with Google Assistant, Alexa, etc.', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Content Prioritization:', 'tigerstyle-heat'); ?></strong> <?php _e('Guides voice systems to most important content', 'tigerstyle-heat'); ?></li>
|
|
</ul>
|
|
<p>
|
|
<strong><?php _e('Common Use Cases:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• News articles - mark headlines and key paragraphs', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Blog posts - identify titles, summaries, and key points', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Product pages - highlight product names and descriptions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• FAQ pages - mark questions and important answers', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
<p>
|
|
<strong><?php _e('CSS Selector Examples:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• h1, h2 - All main headings', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• .entry-title - Post/page titles', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• .summary, .excerpt - Summary content', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• #key-points - Specific important sections', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
<p>
|
|
<strong><?php _e('Best Practices:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Select concise, important content sections', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Avoid selecting entire page content', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Focus on headlines, summaries, and key information', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Test selectors work across your theme\'s structure', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Video Structured Data -->
|
|
<h3><?php _e('Video Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Video Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="video_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('video_enabled', false)); ?>>
|
|
<?php _e('Add VideoObject structured data for video content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Enhances video content with rich snippets, thumbnails, and duration display in search results.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Video Details', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="video_custom_title"><?php _e('Custom Video Title:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="video_custom_title" name="video_custom_title" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_custom_title', '')); ?>" class="large-text" />
|
|
<p class="description"><?php _e('Optional: Override page title with specific video title', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_description"><?php _e('Video Description:', 'tigerstyle-heat'); ?></label><br>
|
|
<textarea id="video_description" name="video_description" rows="3" class="large-text"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('video_description', '')); ?></textarea>
|
|
<p class="description"><?php _e('Detailed description of the video content', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_url"><?php _e('Video URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="video_url" name="video_url" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('video_url', '')); ?>" class="large-text" />
|
|
<p class="description"><?php _e('Direct link to video file (YouTube, Vimeo, or direct .mp4/.webm URL)', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_thumbnail"><?php _e('Video Thumbnail URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="video_thumbnail" name="video_thumbnail" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('video_thumbnail', '')); ?>" class="large-text" />
|
|
<p class="description"><?php _e('URL to video thumbnail image (uses featured image if empty)', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Video Properties', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="video_duration"><?php _e('Duration:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="video_duration" name="video_duration" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_duration', '')); ?>" placeholder="5:30 or PT5M30S" />
|
|
<p class="description"><?php _e('Video duration (formats: "5:30", "1:05:30", "PT5M30S", or seconds "90")', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_upload_date"><?php _e('Upload Date:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="date" id="video_upload_date" name="video_upload_date" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_upload_date', '')); ?>" />
|
|
<p class="description"><?php _e('When the video was originally uploaded (uses post date if empty)', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_quality"><?php _e('Video Quality:', 'tigerstyle-heat'); ?></label><br>
|
|
<select id="video_quality" name="video_quality">
|
|
<option value=""><?php _e('Not specified', 'tigerstyle-heat'); ?></option>
|
|
<option value="LD" <?php selected(TigerStyleSEO_Utils::get_option('video_quality', ''), 'LD'); ?>><?php _e('Low Definition (LD)', 'tigerstyle-heat'); ?></option>
|
|
<option value="SD" <?php selected(TigerStyleSEO_Utils::get_option('video_quality', ''), 'SD'); ?>><?php _e('Standard Definition (SD)', 'tigerstyle-heat'); ?></option>
|
|
<option value="HD" <?php selected(TigerStyleSEO_Utils::get_option('video_quality', ''), 'HD'); ?>><?php _e('High Definition (HD)', 'tigerstyle-heat'); ?></option>
|
|
<option value="FHD" <?php selected(TigerStyleSEO_Utils::get_option('video_quality', ''), 'FHD'); ?>><?php _e('Full HD (FHD)', 'tigerstyle-heat'); ?></option>
|
|
<option value="UHD" <?php selected(TigerStyleSEO_Utils::get_option('video_quality', ''), 'UHD'); ?>><?php _e('Ultra HD (UHD)', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
|
|
<div style="margin-top: 10px;">
|
|
<label for="video_width"><?php _e('Width:', 'tigerstyle-heat'); ?></label>
|
|
<input type="number" id="video_width" name="video_width" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_width', '')); ?>" min="1" style="width: 80px;" /> px
|
|
|
|
<label for="video_height" style="margin-left: 15px;"><?php _e('Height:', 'tigerstyle-heat'); ?></label>
|
|
<input type="number" id="video_height" name="video_height" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_height', '')); ?>" min="1" style="width: 80px;" /> px
|
|
<p class="description"><?php _e('Video frame dimensions in pixels', 'tigerstyle-heat'); ?></p>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Additional Information', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="video_genre"><?php _e('Genre:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="video_genre" name="video_genre" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_genre', '')); ?>" class="regular-text" />
|
|
<p class="description"><?php _e('Video genre (e.g., Documentary, Tutorial, Entertainment)', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_director"><?php _e('Director:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="video_director" name="video_director" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_director', '')); ?>" class="regular-text" />
|
|
<p class="description"><?php _e('Video director name', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_actors"><?php _e('Actors/Cast:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="video_actors" name="video_actors" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_actors', '')); ?>" class="large-text" />
|
|
<p class="description"><?php _e('Comma-separated list of actor names', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_music_by"><?php _e('Music By:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="video_music_by" name="video_music_by" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_music_by', '')); ?>" class="regular-text" />
|
|
<p class="description"><?php _e('Composer or music creator name', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_production_company"><?php _e('Production Company:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="video_production_company" name="video_production_company" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('video_production_company', '')); ?>" class="regular-text" />
|
|
<p class="description"><?php _e('Name of the production company', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Accessibility', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="video_transcript"><?php _e('Transcript:', 'tigerstyle-heat'); ?></label><br>
|
|
<textarea id="video_transcript" name="video_transcript" rows="4" class="large-text"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('video_transcript', '')); ?></textarea>
|
|
<p class="description"><?php _e('Full video transcript for accessibility', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_captions"><?php _e('Captions URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="video_captions" name="video_captions" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('video_captions', '')); ?>" class="large-text" />
|
|
<p class="description"><?php _e('Link to caption/subtitle files (.vtt, .srt)', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label for="video_content_rating"><?php _e('Content Rating:', 'tigerstyle-heat'); ?></label><br>
|
|
<select id="video_content_rating" name="video_content_rating">
|
|
<option value=""><?php _e('Not specified', 'tigerstyle-heat'); ?></option>
|
|
<option value="G" <?php selected(TigerStyleSEO_Utils::get_option('video_content_rating', ''), 'G'); ?>><?php _e('G - General Audiences', 'tigerstyle-heat'); ?></option>
|
|
<option value="PG" <?php selected(TigerStyleSEO_Utils::get_option('video_content_rating', ''), 'PG'); ?>><?php _e('PG - Parental Guidance', 'tigerstyle-heat'); ?></option>
|
|
<option value="PG-13" <?php selected(TigerStyleSEO_Utils::get_option('video_content_rating', ''), 'PG-13'); ?>><?php _e('PG-13 - Parents Cautioned', 'tigerstyle-heat'); ?></option>
|
|
<option value="R" <?php selected(TigerStyleSEO_Utils::get_option('video_content_rating', ''), 'R'); ?>><?php _e('R - Restricted', 'tigerstyle-heat'); ?></option>
|
|
<option value="NC-17" <?php selected(TigerStyleSEO_Utils::get_option('video_content_rating', ''), 'NC-17'); ?>><?php _e('NC-17 - Adults Only', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
<p class="description"><?php _e('Content rating/age restriction for the video', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div class="seo-info-box">
|
|
<h4><?php _e('Video Structured Data Information', 'tigerstyle-heat'); ?></h4>
|
|
<p><?php _e('VideoObject structured data enables rich video snippets in search results with enhanced features:', 'tigerstyle-heat'); ?></p>
|
|
<ul>
|
|
<li><strong><?php _e('Video Rich Snippets:', 'tigerstyle-heat'); ?></strong> <?php _e('Thumbnail, duration, and upload date in search results', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Video Carousels:', 'tigerstyle-heat'); ?></strong> <?php _e('Inclusion in video-specific search features', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Voice Search Optimization:', 'tigerstyle-heat'); ?></strong> <?php _e('Better matching for "how to" and tutorial queries', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Accessibility Enhancement:', 'tigerstyle-heat'); ?></strong> <?php _e('Support for transcripts and captions', 'tigerstyle-heat'); ?></li>
|
|
</ul>
|
|
<p>
|
|
<strong><?php _e('Supported Video Platforms:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• YouTube - Automatically detected from embeds and URLs', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Vimeo - Automatically detected from embeds and URLs', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Self-hosted - Direct .mp4, .webm, .ogg video files', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• HTML5 Video - <video> tags with <source> elements', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
<p>
|
|
<strong><?php _e('Best Practices:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Provide accurate video duration and upload date', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Use high-quality thumbnails (1200x675px recommended)', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Include detailed, keyword-rich descriptions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Add transcripts for accessibility and SEO benefits', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Specify content rating when appropriate', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Image Metadata Structured Data -->
|
|
<h3><?php _e('Image Metadata Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Image Metadata', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="imageobject_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('imageobject_enabled', false)); ?>>
|
|
<?php _e('Add ImageObject structured data for all images', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Enhances images with rich metadata for better search visibility, accessibility, and copyright protection.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Image Detection Settings', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="imageobject_include_featured" value="1" <?php checked(TigerStyleSEO_Utils::get_option('imageobject_include_featured', true)); ?>>
|
|
<?php _e('Include featured images', 'tigerstyle-heat'); ?>
|
|
</label><br>
|
|
|
|
<label>
|
|
<input type="checkbox" name="imageobject_include_content" value="1" <?php checked(TigerStyleSEO_Utils::get_option('imageobject_include_content', true)); ?>>
|
|
<?php _e('Include content images', 'tigerstyle-heat'); ?>
|
|
</label><br>
|
|
|
|
<label>
|
|
<input type="checkbox" name="imageobject_include_galleries" value="1" <?php checked(TigerStyleSEO_Utils::get_option('imageobject_include_galleries', false)); ?>>
|
|
<?php _e('Include gallery images', 'tigerstyle-heat'); ?>
|
|
</label><br>
|
|
|
|
<label>
|
|
<input type="checkbox" name="imageobject_include_exif" value="1" <?php checked(TigerStyleSEO_Utils::get_option('imageobject_include_exif', false)); ?>>
|
|
<?php _e('Include EXIF metadata (camera settings, dates)', 'tigerstyle-heat'); ?>
|
|
</label><br>
|
|
|
|
<label>
|
|
<input type="checkbox" name="imageobject_include_location" value="1" <?php checked(TigerStyleSEO_Utils::get_option('imageobject_include_location', false)); ?>>
|
|
<?php _e('Include GPS location data from EXIF', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description" style="color: #d63638;"><?php _e('⚠️ Consider privacy implications before enabling location data', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Processing Limits', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="imageobject_max_per_page"><?php _e('Max Images per Page:', 'tigerstyle-heat'); ?></label>
|
|
<input
|
|
type="number"
|
|
id="imageobject_max_per_page"
|
|
name="imageobject_max_per_page"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('imageobject_max_per_page', 10)); ?>"
|
|
class="small-text"
|
|
min="1"
|
|
max="50"
|
|
>
|
|
<p class="description"><?php _e('Maximum number of images to include structured data for per page (prevents excessive markup)', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="imageobject_prioritize_featured" value="1" <?php checked(TigerStyleSEO_Utils::get_option('imageobject_prioritize_featured', true)); ?>>
|
|
<?php _e('Prioritize featured images and content images over gallery images', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Image Quality Standards', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="imageobject_min_width"><?php _e('Minimum Width:', 'tigerstyle-heat'); ?></label>
|
|
<input
|
|
type="number"
|
|
id="imageobject_min_width"
|
|
name="imageobject_min_width"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('imageobject_min_width', 300)); ?>"
|
|
class="small-text"
|
|
min="1"
|
|
> px
|
|
|
|
<label for="imageobject_min_height" style="margin-left: 15px;"><?php _e('Minimum Height:', 'tigerstyle-heat'); ?></label>
|
|
<input
|
|
type="number"
|
|
id="imageobject_min_height"
|
|
name="imageobject_min_height"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('imageobject_min_height', 200)); ?>"
|
|
class="small-text"
|
|
min="1"
|
|
> px
|
|
|
|
<p class="description"><?php _e('Only images meeting these minimum dimensions will include structured data (prevents tiny icons/decorative images)', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Site-wide Default Metadata', 'tigerstyle-heat'); ?></h4>
|
|
<p class="description"><?php _e('These settings apply to all images unless overridden at the individual image level.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="imageobject_default_copyright_holder"><?php _e('Default Copyright Holder', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="imageobject_default_copyright_holder"
|
|
name="imageobject_default_copyright_holder"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('imageobject_default_copyright_holder', get_bloginfo('name'))); ?>"
|
|
class="regular-text"
|
|
placeholder="<?php echo esc_attr(get_bloginfo('name')); ?>"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Default copyright holder for images uploaded to this site', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="imageobject_default_license"><?php _e('Default License', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<select id="imageobject_default_license" name="imageobject_default_license" class="regular-text">
|
|
<option value=""><?php _e('No default license', 'tigerstyle-heat'); ?></option>
|
|
<option value="https://creativecommons.org/licenses/by/4.0/" <?php selected(TigerStyleSEO_Utils::get_option('imageobject_default_license'), 'https://creativecommons.org/licenses/by/4.0/'); ?>><?php _e('CC BY 4.0 - Attribution', 'tigerstyle-heat'); ?></option>
|
|
<option value="https://creativecommons.org/licenses/by-sa/4.0/" <?php selected(TigerStyleSEO_Utils::get_option('imageobject_default_license'), 'https://creativecommons.org/licenses/by-sa/4.0/'); ?>><?php _e('CC BY-SA 4.0 - Attribution-ShareAlike', 'tigerstyle-heat'); ?></option>
|
|
<option value="https://creativecommons.org/licenses/by-nc/4.0/" <?php selected(TigerStyleSEO_Utils::get_option('imageobject_default_license'), 'https://creativecommons.org/licenses/by-nc/4.0/'); ?>><?php _e('CC BY-NC 4.0 - Attribution-NonCommercial', 'tigerstyle-heat'); ?></option>
|
|
<option value="https://creativecommons.org/licenses/by-nd/4.0/" <?php selected(TigerStyleSEO_Utils::get_option('imageobject_default_license'), 'https://creativecommons.org/licenses/by-nd/4.0/'); ?>><?php _e('CC BY-ND 4.0 - Attribution-NoDerivatives', 'tigerstyle-heat'); ?></option>
|
|
<option value="custom" <?php selected(TigerStyleSEO_Utils::get_option('imageobject_default_license'), 'custom'); ?>><?php _e('Custom License URL', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
<input
|
|
type="url"
|
|
id="imageobject_custom_license_url"
|
|
name="imageobject_custom_license_url"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('imageobject_custom_license_url', '')); ?>"
|
|
class="large-text"
|
|
placeholder="https://example.com/license"
|
|
style="display: <?php echo TigerStyleSEO_Utils::get_option('imageobject_default_license') === 'custom' ? 'block' : 'none'; ?>; margin-top: 5px;"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Default license for images. Individual images can override this setting.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">
|
|
<label for="imageobject_default_author"><?php _e('Default Author/Photographer', 'tigerstyle-heat'); ?></label>
|
|
</th>
|
|
<td>
|
|
<input
|
|
type="text"
|
|
id="imageobject_default_author"
|
|
name="imageobject_default_author"
|
|
value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('imageobject_default_author', '')); ?>"
|
|
class="regular-text"
|
|
placeholder="<?php echo esc_attr(wp_get_current_user()->display_name); ?>"
|
|
>
|
|
<p class="description">
|
|
<?php _e('Default photographer/creator name. Leave empty to use the uploading user.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div class="seo-info-box">
|
|
<h4><?php _e('Image Metadata Structured Data Information', 'tigerstyle-heat'); ?></h4>
|
|
<p><?php _e('ImageObject structured data enhances your images with rich metadata that helps search engines and assistive technologies better understand your visual content:', 'tigerstyle-heat'); ?></p>
|
|
<ul>
|
|
<li><strong><?php _e('Image Search Optimization:', 'tigerstyle-heat'); ?></strong> <?php _e('Better visibility in Google Images and visual search results', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Rich Snippets:', 'tigerstyle-heat'); ?></strong> <?php _e('Enhanced search results with image metadata and licensing information', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Accessibility Enhancement:', 'tigerstyle-heat'); ?></strong> <?php _e('Better support for screen readers and assistive technologies', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Copyright Protection:', 'tigerstyle-heat'); ?></strong> <?php _e('Clear attribution and licensing information embedded in structured data', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Technical Metadata:', 'tigerstyle-heat'); ?></strong> <?php _e('Camera settings, GPS location, and EXIF data for enhanced discovery', 'tigerstyle-heat'); ?></li>
|
|
</ul>
|
|
|
|
<p>
|
|
<strong><?php _e('Auto-Detection Features:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Featured images automatically marked as representative of page content', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• EXIF metadata extracted for camera settings, dates, and GPS coordinates', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Image dimensions and file formats automatically included', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Smart filtering excludes tiny decorative images and icons', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
|
|
<p>
|
|
<strong><?php _e('Best Practices:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Use descriptive, keyword-rich image names and descriptions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Always provide meaningful alt text for accessibility', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Include copyright and licensing information when applicable', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Use high-quality images with appropriate dimensions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Consider GPS privacy implications before including location data', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
|
|
<p>
|
|
<strong><?php _e('Supported Metadata Types:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Basic: Title, description, alt text, dimensions, file format', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Copyright: Holder, license, usage terms, copyright year', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• EXIF: Camera settings, GPS coordinates, creation date', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Technical: File size, encoding format, upload date', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Context: Featured image priority, representative of page content', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</div>
|
|
|
|
<script>
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
// License dropdown handler
|
|
const licenseSelect = document.getElementById('imageobject_default_license');
|
|
const customLicenseInput = document.getElementById('imageobject_custom_license_url');
|
|
|
|
function toggleCustomLicense() {
|
|
if (licenseSelect.value === 'custom') {
|
|
customLicenseInput.style.display = 'block';
|
|
customLicenseInput.required = true;
|
|
} else {
|
|
customLicenseInput.style.display = 'none';
|
|
customLicenseInput.required = false;
|
|
if (licenseSelect.value !== 'custom') {
|
|
customLicenseInput.value = '';
|
|
}
|
|
}
|
|
}
|
|
|
|
if (licenseSelect) {
|
|
licenseSelect.addEventListener('change', toggleCustomLicense);
|
|
toggleCustomLicense(); // Initial state
|
|
}
|
|
});
|
|
</script>
|
|
|
|
<!-- Product Structured Data -->
|
|
<h3><?php _e('Product Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Product Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="product_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('product_enabled', false)); ?>>
|
|
<?php _e('Add Product structured data for product pages', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Enables rich product snippets with pricing, availability, and ratings in search results.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Detection Options', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="product_auto_detect" value="1" <?php checked(TigerStyleSEO_Utils::get_option('product_auto_detect', false)); ?>>
|
|
<?php _e('Auto-detect product pages', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Automatically identify pages as products based on content patterns (price, buy, SKU, etc.).', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="product_manual_enable" value="1" <?php checked(TigerStyleSEO_Utils::get_option('product_manual_enable', false)); ?>>
|
|
<?php _e('Force enable for current page/post type', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Always apply Product structured data to pages/posts when enabled above.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Basic Product Information', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Product Details', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="product_name"><?php _e('Product Name:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_name" name="product_name" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_name', '')); ?>" class="large-text" placeholder="<?php _e('Leave empty to use page title', 'tigerstyle-heat'); ?>" /><br>
|
|
|
|
<label for="product_description"><?php _e('Product Description:', 'tigerstyle-heat'); ?></label><br>
|
|
<textarea id="product_description" name="product_description" rows="3" class="large-text" placeholder="<?php _e('Leave empty to use page excerpt or content', 'tigerstyle-heat'); ?>"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('product_description', '')); ?></textarea><br>
|
|
|
|
<label for="product_category"><?php _e('Category:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_category" name="product_category" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_category', '')); ?>" class="regular-text" placeholder="Electronics, Clothing, Books, etc." />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Product Identifiers', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="product_sku"><?php _e('SKU:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_sku" name="product_sku" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_sku', '')); ?>" class="regular-text" /><br>
|
|
|
|
<label for="product_id"><?php _e('Product ID:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_id" name="product_id" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_id', '')); ?>" class="regular-text" /><br>
|
|
|
|
<label for="product_mpn"><?php _e('MPN (Manufacturer Part Number):', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_mpn" name="product_mpn" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_mpn', '')); ?>" class="regular-text" /><br>
|
|
|
|
<label for="product_gtin"><?php _e('GTIN (Global Trade Item Number):', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_gtin" name="product_gtin" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_gtin', '')); ?>" class="regular-text" placeholder="UPC, EAN, or ISBN" />
|
|
<p class="description"><?php _e('Universal Product Code (UPC), European Article Number (EAN), or ISBN', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Specific GTIN Codes', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 15px;">
|
|
<div>
|
|
<label for="product_gtin8"><?php _e('GTIN-8:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_gtin8" name="product_gtin8" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_gtin8', '')); ?>" class="regular-text" maxlength="8" />
|
|
</div>
|
|
<div>
|
|
<label for="product_gtin12"><?php _e('GTIN-12 (UPC):', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_gtin12" name="product_gtin12" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_gtin12', '')); ?>" class="regular-text" maxlength="12" />
|
|
</div>
|
|
<div>
|
|
<label for="product_gtin13"><?php _e('GTIN-13 (EAN):', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_gtin13" name="product_gtin13" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_gtin13', '')); ?>" class="regular-text" maxlength="13" />
|
|
</div>
|
|
<div>
|
|
<label for="product_gtin14"><?php _e('GTIN-14:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_gtin14" name="product_gtin14" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_gtin14', '')); ?>" class="regular-text" maxlength="14" />
|
|
</div>
|
|
</div>
|
|
<p class="description"><?php _e('Use specific GTIN formats if you know the exact type, otherwise use the general GTIN field above.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Product Properties', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Physical Properties', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 15px;">
|
|
<div>
|
|
<label for="product_color"><?php _e('Color:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_color" name="product_color" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_color', '')); ?>" class="regular-text" />
|
|
</div>
|
|
<div>
|
|
<label for="product_size"><?php _e('Size:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_size" name="product_size" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_size', '')); ?>" class="regular-text" />
|
|
</div>
|
|
<div>
|
|
<label for="product_material"><?php _e('Material:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_material" name="product_material" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_material', '')); ?>" class="regular-text" />
|
|
</div>
|
|
<div>
|
|
<label for="product_pattern"><?php _e('Pattern:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_pattern" name="product_pattern" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_pattern', '')); ?>" class="regular-text" />
|
|
</div>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Dimensions & Weight', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<div style="display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 15px;">
|
|
<div>
|
|
<label for="product_width"><?php _e('Width:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="number" id="product_width" name="product_width" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_width', '')); ?>" class="small-text" step="0.01" />
|
|
<select name="product_width_unit" class="small-text">
|
|
<option value="CMT" <?php selected(TigerStyleSEO_Utils::get_option('product_width_unit', 'CMT'), 'CMT'); ?>>cm</option>
|
|
<option value="MTR" <?php selected(TigerStyleSEO_Utils::get_option('product_width_unit', 'CMT'), 'MTR'); ?>>m</option>
|
|
<option value="INH" <?php selected(TigerStyleSEO_Utils::get_option('product_width_unit', 'CMT'), 'INH'); ?>>in</option>
|
|
<option value="FOT" <?php selected(TigerStyleSEO_Utils::get_option('product_width_unit', 'CMT'), 'FOT'); ?>>ft</option>
|
|
</select>
|
|
</div>
|
|
<div>
|
|
<label for="product_height"><?php _e('Height:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="number" id="product_height" name="product_height" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_height', '')); ?>" class="small-text" step="0.01" />
|
|
<select name="product_height_unit" class="small-text">
|
|
<option value="CMT" <?php selected(TigerStyleSEO_Utils::get_option('product_height_unit', 'CMT'), 'CMT'); ?>>cm</option>
|
|
<option value="MTR" <?php selected(TigerStyleSEO_Utils::get_option('product_height_unit', 'CMT'), 'MTR'); ?>>m</option>
|
|
<option value="INH" <?php selected(TigerStyleSEO_Utils::get_option('product_height_unit', 'CMT'), 'INH'); ?>>in</option>
|
|
<option value="FOT" <?php selected(TigerStyleSEO_Utils::get_option('product_height_unit', 'CMT'), 'FOT'); ?>>ft</option>
|
|
</select>
|
|
</div>
|
|
<div>
|
|
<label for="product_depth"><?php _e('Depth:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="number" id="product_depth" name="product_depth" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_depth', '')); ?>" class="small-text" step="0.01" />
|
|
<select name="product_depth_unit" class="small-text">
|
|
<option value="CMT" <?php selected(TigerStyleSEO_Utils::get_option('product_depth_unit', 'CMT'), 'CMT'); ?>>cm</option>
|
|
<option value="MTR" <?php selected(TigerStyleSEO_Utils::get_option('product_depth_unit', 'CMT'), 'MTR'); ?>>m</option>
|
|
<option value="INH" <?php selected(TigerStyleSEO_Utils::get_option('product_depth_unit', 'CMT'), 'INH'); ?>>in</option>
|
|
<option value="FOT" <?php selected(TigerStyleSEO_Utils::get_option('product_depth_unit', 'CMT'), 'FOT'); ?>>ft</option>
|
|
</select>
|
|
</div>
|
|
<div>
|
|
<label for="product_weight"><?php _e('Weight:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="number" id="product_weight" name="product_weight" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_weight', '')); ?>" class="small-text" step="0.01" />
|
|
<select name="product_weight_unit" class="small-text">
|
|
<option value="KGM" <?php selected(TigerStyleSEO_Utils::get_option('product_weight_unit', 'KGM'), 'KGM'); ?>>kg</option>
|
|
<option value="GRM" <?php selected(TigerStyleSEO_Utils::get_option('product_weight_unit', 'KGM'), 'GRM'); ?>>g</option>
|
|
<option value="LBR" <?php selected(TigerStyleSEO_Utils::get_option('product_weight_unit', 'KGM'), 'LBR'); ?>>lb</option>
|
|
<option value="ONZ" <?php selected(TigerStyleSEO_Utils::get_option('product_weight_unit', 'KGM'), 'ONZ'); ?>>oz</option>
|
|
</select>
|
|
</div>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Additional Properties', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="product_model"><?php _e('Model:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_model" name="product_model" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_model', '')); ?>" class="regular-text" /><br>
|
|
|
|
<label for="product_condition"><?php _e('Condition:', 'tigerstyle-heat'); ?></label><br>
|
|
<select id="product_condition" name="product_condition" class="regular-text">
|
|
<option value=""><?php _e('Not specified', 'tigerstyle-heat'); ?></option>
|
|
<option value="NewCondition" <?php selected(TigerStyleSEO_Utils::get_option('product_condition'), 'NewCondition'); ?>><?php _e('New', 'tigerstyle-heat'); ?></option>
|
|
<option value="UsedCondition" <?php selected(TigerStyleSEO_Utils::get_option('product_condition'), 'UsedCondition'); ?>><?php _e('Used', 'tigerstyle-heat'); ?></option>
|
|
<option value="RefurbishedCondition" <?php selected(TigerStyleSEO_Utils::get_option('product_condition'), 'RefurbishedCondition'); ?>><?php _e('Refurbished', 'tigerstyle-heat'); ?></option>
|
|
<option value="DamagedCondition" <?php selected(TigerStyleSEO_Utils::get_option('product_condition'), 'DamagedCondition'); ?>><?php _e('Damaged', 'tigerstyle-heat'); ?></option>
|
|
</select><br>
|
|
|
|
<div style="margin-top: 10px;">
|
|
<label for="product_production_date"><?php _e('Production Date:', 'tigerstyle-heat'); ?></label>
|
|
<input type="date" id="product_production_date" name="product_production_date" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_production_date', '')); ?>" />
|
|
|
|
<label for="product_release_date" style="margin-left: 15px;"><?php _e('Release Date:', 'tigerstyle-heat'); ?></label>
|
|
<input type="date" id="product_release_date" name="product_release_date" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_release_date', '')); ?>" />
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Pricing & Availability', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Price Information', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="product_price"><?php _e('Price:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="number" id="product_price" name="product_price" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_price', '')); ?>" class="small-text" step="0.01" min="0" />
|
|
|
|
<label for="product_currency" style="margin-left: 10px;"><?php _e('Currency:', 'tigerstyle-heat'); ?></label>
|
|
<select id="product_currency" name="product_currency" class="small-text">
|
|
<option value="USD" <?php selected(TigerStyleSEO_Utils::get_option('product_currency', 'USD'), 'USD'); ?>>USD ($)</option>
|
|
<option value="EUR" <?php selected(TigerStyleSEO_Utils::get_option('product_currency', 'USD'), 'EUR'); ?>>EUR (€)</option>
|
|
<option value="GBP" <?php selected(TigerStyleSEO_Utils::get_option('product_currency', 'USD'), 'GBP'); ?>>GBP (£)</option>
|
|
<option value="CAD" <?php selected(TigerStyleSEO_Utils::get_option('product_currency', 'USD'), 'CAD'); ?>>CAD</option>
|
|
<option value="AUD" <?php selected(TigerStyleSEO_Utils::get_option('product_currency', 'USD'), 'AUD'); ?>>AUD</option>
|
|
<option value="JPY" <?php selected(TigerStyleSEO_Utils::get_option('product_currency', 'USD'), 'JPY'); ?>>JPY (¥)</option>
|
|
</select><br>
|
|
|
|
<label for="product_availability"><?php _e('Availability:', 'tigerstyle-heat'); ?></label><br>
|
|
<select id="product_availability" name="product_availability" class="regular-text">
|
|
<option value=""><?php _e('Not specified', 'tigerstyle-heat'); ?></option>
|
|
<option value="InStock" <?php selected(TigerStyleSEO_Utils::get_option('product_availability'), 'InStock'); ?>><?php _e('In Stock', 'tigerstyle-heat'); ?></option>
|
|
<option value="OutOfStock" <?php selected(TigerStyleSEO_Utils::get_option('product_availability'), 'OutOfStock'); ?>><?php _e('Out of Stock', 'tigerstyle-heat'); ?></option>
|
|
<option value="PreOrder" <?php selected(TigerStyleSEO_Utils::get_option('product_availability'), 'PreOrder'); ?>><?php _e('Pre-Order', 'tigerstyle-heat'); ?></option>
|
|
<option value="BackOrder" <?php selected(TigerStyleSEO_Utils::get_option('product_availability'), 'BackOrder'); ?>><?php _e('Back Order', 'tigerstyle-heat'); ?></option>
|
|
<option value="Discontinued" <?php selected(TigerStyleSEO_Utils::get_option('product_availability'), 'Discontinued'); ?>><?php _e('Discontinued', 'tigerstyle-heat'); ?></option>
|
|
</select><br>
|
|
|
|
<label for="product_price_valid_until"><?php _e('Price Valid Until:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="date" id="product_price_valid_until" name="product_price_valid_until" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_price_valid_until', '')); ?>" /><br>
|
|
|
|
<label for="product_seller"><?php _e('Seller:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_seller" name="product_seller" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_seller', get_bloginfo('name'))); ?>" class="regular-text" /><br>
|
|
|
|
<label for="product_buy_url"><?php _e('Buy URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="product_buy_url" name="product_buy_url" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('product_buy_url', '')); ?>" class="large-text" placeholder="<?php _e('Leave empty to use current page URL', 'tigerstyle-heat'); ?>" />
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Brand & Manufacturer', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Brand Information', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="product_brand_name"><?php _e('Brand Name:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_brand_name" name="product_brand_name" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_brand_name', '')); ?>" class="regular-text" /><br>
|
|
|
|
<label for="product_brand_logo"><?php _e('Brand Logo URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="product_brand_logo" name="product_brand_logo" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('product_brand_logo', '')); ?>" class="large-text" /><br>
|
|
|
|
<label for="product_manufacturer"><?php _e('Manufacturer:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_manufacturer" name="product_manufacturer" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_manufacturer', '')); ?>" class="regular-text" />
|
|
<p class="description"><?php _e('Only specify if different from brand', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Reviews & Ratings', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Aggregate Rating', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="product_rating_value"><?php _e('Average Rating:', 'tigerstyle-heat'); ?></label>
|
|
<input type="number" id="product_rating_value" name="product_rating_value" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_rating_value', '')); ?>" class="small-text" step="0.1" min="0" max="5" />
|
|
|
|
<label for="product_rating_count" style="margin-left: 15px;"><?php _e('Review Count:', 'tigerstyle-heat'); ?></label>
|
|
<input type="number" id="product_rating_count" name="product_rating_count" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_rating_count', '')); ?>" class="small-text" min="1" /><br>
|
|
|
|
<div style="margin-top: 10px;">
|
|
<label for="product_worst_rating"><?php _e('Worst Rating:', 'tigerstyle-heat'); ?></label>
|
|
<input type="number" id="product_worst_rating" name="product_worst_rating" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_worst_rating', '1')); ?>" class="small-text" min="0" />
|
|
|
|
<label for="product_best_rating" style="margin-left: 15px;"><?php _e('Best Rating:', 'tigerstyle-heat'); ?></label>
|
|
<input type="number" id="product_best_rating" name="product_best_rating" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_best_rating', '5')); ?>" class="small-text" min="1" />
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Individual Reviews', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<textarea id="product_reviews" name="product_reviews" rows="6" class="large-text" placeholder="Author Name | Rating | Review Text | Date (optional) John Doe | 5 | Excellent product, highly recommended! | 2024-01-15 Jane Smith | 4 | Good quality but shipping was slow | 2024-01-10"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('product_reviews', '')); ?></textarea>
|
|
<p class="description"><?php _e('Format: Author Name | Rating (1-5) | Review Text | Date (YYYY-MM-DD, optional). One review per line.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Additional Information', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Product Images', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<textarea id="product_images" name="product_images" rows="3" class="large-text" placeholder="https://example.com/image1.jpg, https://example.com/image2.jpg"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('product_images', '')); ?></textarea>
|
|
<p class="description"><?php _e('Comma-separated list of product image URLs. Uses featured image if empty.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Awards & Recognition', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<input type="text" id="product_awards" name="product_awards" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_awards', '')); ?>" class="large-text" placeholder="Best Product 2024, Editor's Choice, Innovation Award" />
|
|
<p class="description"><?php _e('Comma-separated list of awards and recognitions', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Target Audience', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<input type="text" id="product_audience" name="product_audience" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_audience', '')); ?>" class="regular-text" placeholder="Adults, Children, Professionals, etc." />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Product Highlights', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="product_positive_notes"><?php _e('Positive Notes:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_positive_notes" name="product_positive_notes" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_positive_notes', '')); ?>" class="large-text" placeholder="Fast shipping, High quality, Great value" /><br>
|
|
|
|
<label for="product_negative_notes"><?php _e('Negative Notes:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="product_negative_notes" name="product_negative_notes" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('product_negative_notes', '')); ?>" class="large-text" placeholder="Limited warranty, Requires assembly" />
|
|
<p class="description"><?php _e('Comma-separated positive and negative highlights for honest product representation', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Additional Properties', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<textarea id="product_additional_properties" name="product_additional_properties" rows="5" class="large-text" placeholder="Battery Life: 24 hours Warranty: 2 years Water Resistance: IPX7"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('product_additional_properties', '')); ?></textarea>
|
|
<p class="description"><?php _e('Format: Property Name: Value. One property per line.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div class="seo-info-box">
|
|
<h4><?php _e('Product Structured Data Information', 'tigerstyle-heat'); ?></h4>
|
|
<p><?php _e('Product structured data enables rich product snippets in search results with comprehensive e-commerce features:', 'tigerstyle-heat'); ?></p>
|
|
<ul>
|
|
<li><strong><?php _e('Rich Product Snippets:', 'tigerstyle-heat'); ?></strong> <?php _e('Price, availability, ratings, and reviews directly in search results', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Google Shopping Integration:', 'tigerstyle-heat'); ?></strong> <?php _e('Better product discovery and comparison features', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Review Stars:', 'tigerstyle-heat'); ?></strong> <?php _e('Display aggregate ratings with star ratings in search', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Price Comparison:', 'tigerstyle-heat'); ?></strong> <?php _e('Enable price tracking and comparison across retailers', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Product Knowledge Panel:', 'tigerstyle-heat'); ?></strong> <?php _e('Enhanced product information display in search results', 'tigerstyle-heat'); ?></li>
|
|
</ul>
|
|
|
|
<p>
|
|
<strong><?php _e('Auto-Detection Triggers:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• E-commerce keywords: buy, price, purchase, order, shop, product, sale', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Product identifiers: SKU, model, brand, specification', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Commerce actions: add to cart, buy now, in stock, out of stock', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Pricing indicators: $, cost, discount, offer, deal', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
|
|
<p>
|
|
<strong><?php _e('Required for Rich Snippets:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Product name and description', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• At least one product identifier (SKU, GTIN, MPN)', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Price and currency (for e-commerce snippets)', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Availability status', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
|
|
<p>
|
|
<strong><?php _e('Best Practices:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Use official GTIN/UPC codes when available', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Keep prices updated and accurate', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Include high-quality product images', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Provide honest reviews and accurate ratings', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Specify detailed product attributes and dimensions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Use precise availability statuses', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Article Structured Data -->
|
|
<h3><?php _e('Article Structured Data', 'tigerstyle-heat'); ?></h3>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Enable Article Data', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="article_enabled" value="1" <?php checked(TigerStyleSEO_Utils::get_option('article_enabled', false)); ?>>
|
|
<?php _e('Add Article structured data for blog posts and article content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description">
|
|
<?php _e('Enhances blog posts and articles with rich snippets including author, publication date, and reading time.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Detection Options', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label>
|
|
<input type="checkbox" name="article_auto_detect" value="1" <?php checked(TigerStyleSEO_Utils::get_option('article_auto_detect', true)); ?>>
|
|
<?php _e('Auto-detect article content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Automatically identify articles based on content type, word count, and article indicators.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="article_manual_enable" value="1" <?php checked(TigerStyleSEO_Utils::get_option('article_manual_enable', false)); ?>>
|
|
<?php _e('Force enable for current page/post type', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Always apply Article structured data to pages/posts when enabled above.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="article_auto_extract_images" value="1" <?php checked(TigerStyleSEO_Utils::get_option('article_auto_extract_images', true)); ?>>
|
|
<?php _e('Auto-extract images from content', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Automatically include images from article content if no featured image is set.', 'tigerstyle-heat'); ?></p>
|
|
|
|
<label>
|
|
<input type="checkbox" name="article_auto_extract_keywords" value="1" <?php checked(TigerStyleSEO_Utils::get_option('article_auto_extract_keywords', true)); ?>>
|
|
<?php _e('Auto-extract keywords from tags', 'tigerstyle-heat'); ?>
|
|
</label>
|
|
<p class="description"><?php _e('Automatically include WordPress tags as article keywords.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Article Type', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<select id="article_type" name="article_type" class="regular-text">
|
|
<option value="auto" <?php selected(TigerStyleSEO_Utils::get_option('article_type', 'auto'), 'auto'); ?>><?php _e('Auto-detect based on content', 'tigerstyle-heat'); ?></option>
|
|
<option value="Article" <?php selected(TigerStyleSEO_Utils::get_option('article_type', 'auto'), 'Article'); ?>><?php _e('Article (General)', 'tigerstyle-heat'); ?></option>
|
|
<option value="BlogPosting" <?php selected(TigerStyleSEO_Utils::get_option('article_type', 'auto'), 'BlogPosting'); ?>><?php _e('Blog Posting', 'tigerstyle-heat'); ?></option>
|
|
<option value="NewsArticle" <?php selected(TigerStyleSEO_Utils::get_option('article_type', 'auto'), 'NewsArticle'); ?>><?php _e('News Article', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
<p class="description"><?php _e('Auto-detection: Posts = BlogPosting, News content = NewsArticle, Pages = Article', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Article Content', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Headlines & Description', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="article_headline"><?php _e('Headline:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_headline" name="article_headline" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_headline', '')); ?>" class="large-text" placeholder="<?php _e('Leave empty to use page title', 'tigerstyle-heat'); ?>" /><br>
|
|
|
|
<label for="article_alternative_headline"><?php _e('Alternative Headline:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_alternative_headline" name="article_alternative_headline" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_alternative_headline', '')); ?>" class="large-text" placeholder="<?php _e('Optional alternative headline for the article', 'tigerstyle-heat'); ?>" /><br>
|
|
|
|
<label for="article_description"><?php _e('Article Description:', 'tigerstyle-heat'); ?></label><br>
|
|
<textarea id="article_description" name="article_description" rows="3" class="large-text" placeholder="<?php _e('Leave empty to use excerpt or auto-generate from content', 'tigerstyle-heat'); ?>"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('article_description', '')); ?></textarea><br>
|
|
|
|
<label for="article_section"><?php _e('Article Section:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_section" name="article_section" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_section', '')); ?>" class="regular-text" placeholder="Technology, Sports, Politics, etc." />
|
|
<p class="description"><?php _e('Leave empty to auto-detect from categories', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Article Keywords', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<textarea id="article_keywords" name="article_keywords" rows="3" class="large-text" placeholder="keyword1, keyword2, keyword3"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('article_keywords', '')); ?></textarea>
|
|
<p class="description"><?php _e('Comma-separated keywords. Auto-extracts from tags if empty and auto-extraction is enabled.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Article Images', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<textarea id="article_images" name="article_images" rows="3" class="large-text" placeholder="https://example.com/image1.jpg, https://example.com/image2.jpg"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('article_images', '')); ?></textarea>
|
|
<p class="description"><?php _e('Comma-separated image URLs. Uses featured image and content images if empty.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Author Information', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Author Override', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="article_author_name"><?php _e('Author Name:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_author_name" name="article_author_name" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_author_name', '')); ?>" class="regular-text" placeholder="<?php _e('Leave empty to use WordPress post author', 'tigerstyle-heat'); ?>" /><br>
|
|
|
|
<label for="article_author_url"><?php _e('Author URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="article_author_url" name="article_author_url" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('article_author_url', '')); ?>" class="large-text" placeholder="https://example.com/author-profile" /><br>
|
|
|
|
<label for="article_author_description"><?php _e('Author Description:', 'tigerstyle-heat'); ?></label><br>
|
|
<textarea id="article_author_description" name="article_author_description" rows="2" class="large-text" placeholder="<?php _e('Brief description of the author', 'tigerstyle-heat'); ?>"><?php echo esc_textarea(TigerStyleSEO_Utils::get_option('article_author_description', '')); ?></textarea>
|
|
<p class="description"><?php _e('Override author information. Uses WordPress user data if empty.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Publisher Information', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Publisher Override', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="article_publisher_name"><?php _e('Publisher Name:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_publisher_name" name="article_publisher_name" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_publisher_name', '')); ?>" class="regular-text" placeholder="<?php echo esc_attr(get_bloginfo('name')); ?>" /><br>
|
|
|
|
<label for="article_publisher_logo"><?php _e('Publisher Logo URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="article_publisher_logo" name="article_publisher_logo" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('article_publisher_logo', '')); ?>" class="large-text" /><br>
|
|
|
|
<label for="article_publisher_url"><?php _e('Publisher URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="article_publisher_url" name="article_publisher_url" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('article_publisher_url', '')); ?>" class="large-text" placeholder="<?php echo esc_url(home_url()); ?>" />
|
|
<p class="description"><?php _e('Override publisher information. Uses organization data if empty.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Blog Name (BlogPosting)', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<input type="text" id="article_blog_name" name="article_blog_name" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_blog_name', get_bloginfo('name'))); ?>" class="regular-text" />
|
|
<p class="description"><?php _e('Name of the blog (used specifically for BlogPosting type)', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('News Article Properties', 'tigerstyle-heat'); ?></h4>
|
|
<p class="description"><?php _e('These fields are only used when Article Type is set to "News Article" or auto-detected as news content.', 'tigerstyle-heat'); ?></p>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Print Publication Details', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="article_dateline"><?php _e('Dateline:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_dateline" name="article_dateline" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_dateline', '')); ?>" class="regular-text" placeholder="New York, NY" /><br>
|
|
|
|
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-top: 10px;">
|
|
<div>
|
|
<label for="article_print_page"><?php _e('Print Page:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_print_page" name="article_print_page" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_print_page', '')); ?>" class="regular-text" placeholder="A1, B5, etc." />
|
|
</div>
|
|
<div>
|
|
<label for="article_print_section"><?php _e('Print Section:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_print_section" name="article_print_section" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_print_section', '')); ?>" class="regular-text" placeholder="Sports, Business, etc." />
|
|
</div>
|
|
<div>
|
|
<label for="article_print_edition"><?php _e('Print Edition:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_print_edition" name="article_print_edition" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_print_edition', '')); ?>" class="regular-text" placeholder="Morning, Evening, etc." />
|
|
</div>
|
|
<div>
|
|
<label for="article_print_column"><?php _e('Print Column:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_print_column" name="article_print_column" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_print_column', '')); ?>" class="regular-text" placeholder="1, 2, etc." />
|
|
</div>
|
|
</div>
|
|
<p class="description"><?php _e('Information about print publication details for news articles', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h4><?php _e('Additional Properties', 'tigerstyle-heat'); ?></h4>
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Language & Localization', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="article_language"><?php _e('Article Language:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_language" name="article_language" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_language', get_locale())); ?>" class="regular-text" placeholder="en-US, fr-FR, etc." />
|
|
<p class="description"><?php _e('Language code (ISO 639-1). Defaults to site locale.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Copyright Information', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<label for="article_copyright_holder"><?php _e('Copyright Holder:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="text" id="article_copyright_holder" name="article_copyright_holder" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_copyright_holder', '')); ?>" class="regular-text" /><br>
|
|
|
|
<label for="article_copyright_year"><?php _e('Copyright Year:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="number" id="article_copyright_year" name="article_copyright_year" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('article_copyright_year', '')); ?>" class="small-text" min="1900" max="<?php echo date('Y') + 1; ?>" placeholder="<?php echo date('Y'); ?>" /><br>
|
|
|
|
<label for="article_license"><?php _e('License URL:', 'tigerstyle-heat'); ?></label><br>
|
|
<input type="url" id="article_license" name="article_license" value="<?php echo esc_url(TigerStyleSEO_Utils::get_option('article_license', '')); ?>" class="large-text" placeholder="https://creativecommons.org/licenses/by/4.0/" />
|
|
<p class="description"><?php _e('Copyright and licensing information for the article', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row"><?php _e('Content Rating', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<select id="article_rating" name="article_rating" class="regular-text">
|
|
<option value=""><?php _e('Not specified', 'tigerstyle-heat'); ?></option>
|
|
<option value="general" <?php selected(TigerStyleSEO_Utils::get_option('article_rating'), 'general'); ?>><?php _e('General Audiences', 'tigerstyle-heat'); ?></option>
|
|
<option value="parental-guidance" <?php selected(TigerStyleSEO_Utils::get_option('article_rating'), 'parental-guidance'); ?>><?php _e('Parental Guidance', 'tigerstyle-heat'); ?></option>
|
|
<option value="teens" <?php selected(TigerStyleSEO_Utils::get_option('article_rating'), 'teens'); ?>><?php _e('Teens', 'tigerstyle-heat'); ?></option>
|
|
<option value="mature" <?php selected(TigerStyleSEO_Utils::get_option('article_rating'), 'mature'); ?>><?php _e('Mature Audiences', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
<p class="description"><?php _e('Content rating for the article', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div class="seo-info-box">
|
|
<h4><?php _e('Article Structured Data Information', 'tigerstyle-heat'); ?></h4>
|
|
<p><?php _e('Article structured data enhances blog posts and articles with rich information for search engines and news aggregators:', 'tigerstyle-heat'); ?></p>
|
|
<ul>
|
|
<li><strong><?php _e('Rich Article Snippets:', 'tigerstyle-heat'); ?></strong> <?php _e('Author, publication date, reading time, and article section in search results', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('News Integration:', 'tigerstyle-heat'); ?></strong> <?php _e('Better inclusion in Google News and news aggregators', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Author Authority:', 'tigerstyle-heat'); ?></strong> <?php _e('Enhanced author information and credibility signals', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Content Discovery:', 'tigerstyle-heat'); ?></strong> <?php _e('Improved content categorization and topic association', 'tigerstyle-heat'); ?></li>
|
|
<li><strong><?php _e('Reading Experience:', 'tigerstyle-heat'); ?></strong> <?php _e('Word count and estimated reading time for users', 'tigerstyle-heat'); ?></li>
|
|
</ul>
|
|
|
|
<p>
|
|
<strong><?php _e('Article Type Auto-Detection:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• BlogPosting: Single blog posts, personal content, opinions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• NewsArticle: Breaking news, press releases, announcements, reports', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Article: General articles, guides, tutorials, features', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
|
|
<p>
|
|
<strong><?php _e('Auto-Detection Triggers:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Content type: Blog posts automatically detected as BlogPosting', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• News keywords: breaking, news, report, press release, announcement', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Article indicators: guide, tutorial, review, analysis, feature', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Word count: Pages with 300+ words considered article content', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
|
|
<p>
|
|
<strong><?php _e('Best Practices:', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('• Use clear, descriptive headlines that match your H1 tags', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Provide accurate author information and descriptions', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Include high-quality images relevant to the article content', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Use relevant keywords and tags for better categorization', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Keep publication dates accurate and up-to-date', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('• Specify copyright and licensing information when appropriate', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</div>
|
|
|
|
<!-- Google Site Verification -->
|
|
<h2><?php _e('Google Site Verification', 'tigerstyle-heat'); ?></h2>
|
|
<div class="seo-section">
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Verification Method', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<select name="google_verification_method" id="google_verification_method">
|
|
<option value=""><?php _e('Select verification method', 'tigerstyle-heat'); ?></option>
|
|
<option value="meta_tag" <?php selected(TigerStyleSEO_Utils::get_option('google_verification_method', ''), 'meta_tag'); ?>><?php _e('HTML Meta Tag (Recommended)', 'tigerstyle-heat'); ?></option>
|
|
<option value="html_file" <?php selected(TigerStyleSEO_Utils::get_option('google_verification_method', ''), 'html_file'); ?>><?php _e('HTML File Upload', 'tigerstyle-heat'); ?></option>
|
|
<option value="dns" <?php selected(TigerStyleSEO_Utils::get_option('google_verification_method', ''), 'dns'); ?>><?php _e('DNS Record', 'tigerstyle-heat'); ?></option>
|
|
<option value="google_analytics" <?php selected(TigerStyleSEO_Utils::get_option('google_verification_method', ''), 'google_analytics'); ?>><?php _e('Google Analytics Tracking Code', 'tigerstyle-heat'); ?></option>
|
|
<option value="google_tag_manager" <?php selected(TigerStyleSEO_Utils::get_option('google_verification_method', ''), 'google_tag_manager'); ?>><?php _e('Google Tag Manager', 'tigerstyle-heat'); ?></option>
|
|
</select>
|
|
<p class="description"><?php _e('Choose how you want to verify your site with Google Search Console.', 'tigerstyle-heat'); ?></p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<!-- Meta Tag Method -->
|
|
<div id="verification_meta_tag" class="verification-method" style="display: <?php echo TigerStyleSEO_Utils::get_option('google_verification_method', '') === 'meta_tag' ? 'block' : 'none'; ?>;">
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Verification Meta Tag', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<input type="text" name="google_verification_code" value="<?php echo esc_attr(TigerStyleSEO_Utils::get_option('google_verification_code', '')); ?>" class="regular-text" placeholder="clBW8AAZbyQ5UEGZamzjvH5pIULU-4TaXhC8_awI6EA">
|
|
<p class="description">
|
|
<?php _e('Paste only the content value from your Google verification meta tag.', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('Example: If Google gives you', 'tigerstyle-heat'); ?> <code><meta name="google-site-verification" content="clBW8AAZbyQ5UEGZamzjvH5pIULU-4TaXhC8_awI6EA" /></code><br>
|
|
<?php _e('Enter only:', 'tigerstyle-heat'); ?> <code>clBW8AAZbyQ5UEGZamzjvH5pIULU-4TaXhC8_awI6EA</code>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
|
|
<!-- HTML File Method -->
|
|
<div id="verification_html_file" class="verification-method" style="display: <?php echo TigerStyleSEO_Utils::get_option('google_verification_method', '') === 'html_file' ? 'block' : 'none'; ?>;">
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('HTML File', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<p class="description">
|
|
<?php _e('Download the HTML verification file from Google Search Console and upload it to your website root directory.', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('File should be accessible at:', 'tigerstyle-heat'); ?> <code><?php echo home_url('/googleXXXXXXXXXXXXXXXX.html'); ?></code>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
|
|
<!-- DNS Method -->
|
|
<div id="verification_dns" class="verification-method" style="display: <?php echo TigerStyleSEO_Utils::get_option('google_verification_method', '') === 'dns' ? 'block' : 'none'; ?>;">
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('DNS Record', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<p class="description">
|
|
<?php _e('Add a TXT record to your domain DNS settings with the verification string provided by Google.', 'tigerstyle-heat'); ?><br>
|
|
<strong><?php _e('Record Type:', 'tigerstyle-heat'); ?></strong> TXT<br>
|
|
<strong><?php _e('Host/Name:', 'tigerstyle-heat'); ?></strong> @ <?php _e('(or leave blank)', 'tigerstyle-heat'); ?><br>
|
|
<strong><?php _e('Value:', 'tigerstyle-heat'); ?></strong> <?php _e('google-site-verification=YOUR_VERIFICATION_STRING', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
|
|
<!-- Google Analytics Method -->
|
|
<div id="verification_google_analytics" class="verification-method" style="display: <?php echo TigerStyleSEO_Utils::get_option('google_verification_method', '') === 'google_analytics' ? 'block' : 'none'; ?>;">
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Google Analytics', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<p class="description">
|
|
<?php _e('If you already have Google Analytics installed on your site with the same Google account, you can use this method.', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('No additional setup required - Google will automatically detect your Analytics tracking code.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
|
|
<!-- Google Tag Manager Method -->
|
|
<div id="verification_google_tag_manager" class="verification-method" style="display: <?php echo TigerStyleSEO_Utils::get_option('google_verification_method', '') === 'google_tag_manager' ? 'block' : 'none'; ?>;">
|
|
<table class="form-table">
|
|
<tr>
|
|
<th scope="row"><?php _e('Google Tag Manager', 'tigerstyle-heat'); ?></th>
|
|
<td>
|
|
<p class="description">
|
|
<?php _e('If you have Google Tag Manager installed with the same Google account, you can use this method.', 'tigerstyle-heat'); ?><br>
|
|
<?php _e('No additional setup required - Google will automatically detect your Tag Manager container.', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="seo-info-box">
|
|
<h3><?php _e('Google Site Verification Guide', 'tigerstyle-heat'); ?></h3>
|
|
<div class="seo-setup-steps">
|
|
<p><?php _e('Follow these steps to verify your site with Google Search Console:', 'tigerstyle-heat'); ?></p>
|
|
<ol>
|
|
<li><?php _e('Visit', 'tigerstyle-heat'); ?> <a href="https://search.google.com/search-console" target="_blank"><?php _e('Google Search Console', 'tigerstyle-heat'); ?></a></li>
|
|
<li><?php _e('Add your website as a property', 'tigerstyle-heat'); ?></li>
|
|
<li><?php _e('Choose your preferred verification method above', 'tigerstyle-heat'); ?></li>
|
|
<li><?php _e('For meta tag method: Copy only the content value and paste it above', 'tigerstyle-heat'); ?></li>
|
|
<li><?php _e('Save your settings and click "Verify" in Google Search Console', 'tigerstyle-heat'); ?></li>
|
|
</ol>
|
|
|
|
<p>
|
|
<strong><?php _e('Need Help?', 'tigerstyle-heat'); ?></strong><br>
|
|
<?php _e('Read the complete guide:', 'tigerstyle-heat'); ?>
|
|
<a href="https://support.google.com/webmasters/answer/9008080#meta_tag_verification" target="_blank">
|
|
<?php _e('Google Site Verification Documentation', 'tigerstyle-heat'); ?>
|
|
</a>
|
|
</p>
|
|
|
|
<p>
|
|
<strong><?php _e('Verification Methods Comparison:', 'tigerstyle-heat'); ?></strong><br>
|
|
<strong><?php _e('Meta Tag:', 'tigerstyle-heat'); ?></strong> <?php _e('Easiest, works immediately', 'tigerstyle-heat'); ?><br>
|
|
<strong><?php _e('HTML File:', 'tigerstyle-heat'); ?></strong> <?php _e('Requires file upload to root directory', 'tigerstyle-heat'); ?><br>
|
|
<strong><?php _e('DNS:', 'tigerstyle-heat'); ?></strong> <?php _e('Most secure, requires domain access', 'tigerstyle-heat'); ?><br>
|
|
<strong><?php _e('Analytics/GTM:', 'tigerstyle-heat'); ?></strong> <?php _e('Convenient if already using these services', 'tigerstyle-heat'); ?>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<script>
|
|
jQuery(document).ready(function($) {
|
|
$('#google_verification_method').change(function() {
|
|
var method = $(this).val();
|
|
$('.verification-method').hide();
|
|
if (method) {
|
|
$('#verification_' + method).show();
|
|
}
|
|
});
|
|
});
|
|
</script>
|
|
|
|
<?php submit_button(__('Update Google Appearance Settings', 'tigerstyle-heat')); ?>
|
|
</form>
|
|
|
|
<div class="seo-info-box">
|
|
<h3><?php _e('Coming Soon - Additional Structured Data Types', 'tigerstyle-heat'); ?></h3>
|
|
<div class="seo-setup-steps">
|
|
<p><?php _e('The following structured data types are planned for implementation:', 'tigerstyle-heat'); ?></p>
|
|
<ul>
|
|
<li><strong><?php _e('Return Policy:', 'tigerstyle-heat'); ?></strong> <a href="https://developers.google.com/search/docs/appearance/structured-data/return-policy" target="_blank"><?php _e('Documentation', 'tigerstyle-heat'); ?></a></li>
|
|
<li><strong><?php _e('Profile Pages:', 'tigerstyle-heat'); ?></strong> <a href="https://developers.google.com/search/docs/appearance/structured-data/profile-page" target="_blank"><?php _e('Documentation', 'tigerstyle-heat'); ?></a></li>
|
|
<li><strong><?php _e('QA Pages:', 'tigerstyle-heat'); ?></strong> <a href="https://developers.google.com/search/docs/appearance/structured-data/qapage" target="_blank"><?php _e('Documentation', 'tigerstyle-heat'); ?></a></li>
|
|
<li><strong><?php _e('Video Content:', 'tigerstyle-heat'); ?></strong> <a href="https://developers.google.com/search/docs/appearance/video" target="_blank"><?php _e('Documentation', 'tigerstyle-heat'); ?></a></li>
|
|
<li><strong><?php _e('Product Data:', 'tigerstyle-heat'); ?></strong> <a href="https://developers.google.com/search/docs/appearance/structured-data/product" target="_blank"><?php _e('Documentation', 'tigerstyle-heat'); ?></a></li>
|
|
<li><strong><?php _e('Article Data:', 'tigerstyle-heat'); ?></strong> <a href="https://developers.google.com/search/docs/appearance/structured-data/article" target="_blank"><?php _e('Documentation', 'tigerstyle-heat'); ?></a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|