Plugin Directory

Changeset 3421200


Ignore:
Timestamp:
12/16/2025 03:34:19 PM (3 months ago)
Author:
domainsupport
Message:

Tagging version 1.6.5

Location:
options-for-twenty-twenty
Files:
1 deleted
4 edited
3 copied

Legend:

Unmodified
Added
Removed
  • options-for-twenty-twenty/tags/1.6.5/includes/class-oftt-common.php

    r2986666 r3421200  
    11<?php
    22/*
    3  * Version: 1.3.9
     3 * Version: 1.4.3
    44 */
    55
     
    4343        public static function plugin_text_domain() {
    4444
    45             return self::$plugin_text_domain;
     45            return 'options-for-twenty-twenty';
    4646
    4747        }
     
    6161        public static function support_url() {
    6262
    63             return 'https://wordpress.org/support/plugin/' . self::$plugin_text_domain . '/';
     63            return 'https://wordpress.org/support/plugin/' . 'options-for-twenty-twenty' . '/';
    6464
    6565        }
     
    6767        public static function control_upgrade_text() {
    6868
    69             $upgrade_text = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name)) . '">' . sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name) . '</a>';
     69/* translators: name of the plugin */
     70            $upgrade_text = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)) . '">' . sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name) . '</a>';
    7071
    7172            if (!class_exists(self::$plugin_premium_class) || !get_option(self::$plugin_prefix . '_purchased')) {
     
    7374                if (!class_exists(self::$plugin_premium_class)) {
    7475
    75                     $upgrade_text .= sprintf(wp_kses(__(' or <a href="%s" title="Download Free Trial">trial it for 7 days</a>', self::$plugin_text_domain), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::premium_link()));
     76/* translators: link to the premium upgrade */
     77                    $upgrade_text .= sprintf(wp_kses(__(' or <a href="%s" title="Download Free Trial">trial it for 7 days</a>', 'options-for-twenty-twenty'), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::premium_link()));
    7678
    7779                }
     
    8587        public static function control_section_description() {
    8688
    87             $default_description = sprintf(wp_kses(__('If you have any requests for new features, please <a href="%s" title="Support Forum">let us know in the support forum</a>.', self::$plugin_text_domain), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::support_url()));
     89/* translators: link to the plugin's support forum */
     90            $default_description = sprintf(wp_kses(__('If you have any requests for new features, please <a href="%s" title="Support Forum">let us know in the support forum</a>.', 'options-for-twenty-twenty'), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::support_url()));
    8891
    8992            if (self::$plugin_premium_class) {
     
    9598                    if (!class_exists(self::$plugin_premium_class)) {
    9699
    97                         $section_description = '<strong>' . __('For even more options', self::$plugin_text_domain) . '</strong>' . ' ' . $upgrade_text;
     100                        $section_description = '<strong>' . __('For even more options', 'options-for-twenty-twenty') . '</strong>' . ' ' . $upgrade_text;
    98101
    99102                    } else {
    100103
    101                         $section_description = '<strong>' . __('To keep using premium options', self::$plugin_text_domain) . '</strong>' . ' ' . $upgrade_text;
     104                        $section_description = '<strong>' . __('To keep using premium options', 'options-for-twenty-twenty') . '</strong>' . ' ' . $upgrade_text;
    102105
    103106                    }
     
    119122                $section_description .= ' ' . sprintf(
    120123                    wp_kses(
     124/* translators: link to plugin install page */
    121125                        __(
    122126                            '<strong>To reset this section of options to default settings</strong> without affecting other sections in the customizer, install <a href="%s" title="Reset Customizer">Reset Customizer</a>.',
    123                             self::$plugin_text_domain
     127                            'options-for-twenty-twenty'
    124128                        ),
    125129                        array('strong' => array(), 'a' => array('href' => array(), 'title' => array()))
     
    145149        public static function control_setting_upgrade_nag() {
    146150
    147             $upgrade_nag = self::control_upgrade_text() . __(' to use this option.', self::$plugin_text_domain);
     151            $upgrade_nag = self::control_upgrade_text() . __(' to use this option.', 'options-for-twenty-twenty');
    148152
    149153            return $upgrade_nag;
     
    234238
    235239                $generated_css = sprintf('%s { %s: %s; }', $selector, $style, $prefix.$mod.$postfix);
    236                 echo $generated_css;
     240
     241// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
     242                echo wp_strip_all_tags($generated_css);
    237243
    238244            } elseif ($mod) {
    239245
    240246                $generated_css = sprintf('%s { %s:%s; }', $selector, $style, $prefix.$value.$postfix);
    241                 echo $generated_css;
     247
     248// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
     249                echo wp_strip_all_tags($generated_css);
    242250
    243251            }
     
    249257            if (self::$plugin_premium_class) {
    250258
    251                 return add_query_arg('url', (isset($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'], 'https://webd.uk/product/' . self::$plugin_text_domain . '-upgrade/');
    252 
     259                if (isset($_SERVER['HTTP_HOST'])) {
     260
     261                    return add_query_arg('url', (isset($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . filter_var(wp_unslash($_SERVER['HTTP_HOST'], FILTER_SANITIZE_URL)), 'https://webd.uk/product/' . 'options-for-twenty-twenty' . '-upgrade/');
     262
     263                } else {
     264
     265                    return 'https://webd.uk/product/' . 'options-for-twenty-twenty' . '-upgrade/';
     266
     267                }
    253268
    254269            } else {
     
    276291            $settings_links = array();
    277292
    278             $settings_links[] = '<a href="' . esc_url($settings_link) . '" title="' . esc_attr(__('Settings', self::$plugin_text_domain)) . '">' . __('Settings', self::$plugin_text_domain) . '</a>';
     293            $settings_links[] = '<a href="' . esc_url($settings_link) . '" title="' . esc_attr(__('Settings', 'options-for-twenty-twenty')) . '">' . __('Settings', 'options-for-twenty-twenty') . '</a>';
    279294
    280295            if (!get_option(self::$plugin_prefix . '_purchased')) {
     
    284299                    if (self::$plugin_upgrade) {
    285300
    286                         $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s Premium', self::$plugin_text_domain), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', self::$plugin_text_domain) . '</a>';
     301/* translators: name of the plugin */
     302                        $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', 'options-for-twenty-twenty') . '</a>';
    287303
    288304                    } else {
    289305
    290                         $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s', self::$plugin_text_domain), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', self::$plugin_text_domain) . '</a>';
     306/* translators: name of the plugin */
     307                        $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s', 'options-for-twenty-twenty'), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', 'options-for-twenty-twenty') . '</a>';
    291308
    292309                    }
     
    294311                } else {
    295312
    296                     $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr((self::$plugin_premium_class ? sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name) : sprintf(__('Contribute to %s', self::$plugin_text_domain), self::$plugin_name))) . '" style="color: orange; font-weight: bold;">' . (self::$plugin_premium_class ? __('Upgrade', self::$plugin_text_domain) : __('Support Us', self::$plugin_text_domain)) . '</a>';
     313/* translators: name of the plugin */
     314                    $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr((self::$plugin_premium_class ? sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name) : sprintf(__('Contribute to %s', 'options-for-twenty-twenty'), self::$plugin_name))) . '" style="color: orange; font-weight: bold;">' . (self::$plugin_premium_class ? __('Upgrade', 'options-for-twenty-twenty') : __('Support Us', 'options-for-twenty-twenty')) . '</a>';
    297315
    298316                }
     
    300318                if ($premium) {
    301319
    302                     $settings_links[] = '<a href="' . wp_nonce_url('?activate-' . self::$plugin_prefix . '=true', self::$plugin_prefix . '_activate') . '" id="' . self::$plugin_prefix . '_activate_upgrade" title="' . esc_attr(__('Activate Purchase', self::$plugin_text_domain)) . '" onclick="jQuery(this).append(&#39; <img src=&#34;/wp-admin/images/loading.gif&#34; style=&#34;float: none; width: auto; height: auto;&#34; />&#39;); setTimeout(function(){document.getElementById(\'' . self::$plugin_prefix . '_activate_upgrade\').removeAttribute(\'href\');},1); return true;">' . __('Activate Purchase', self::$plugin_text_domain) . '</a>';
    303 
    304                 } elseif (self::$plugin_trial && !is_plugin_active(self::$plugin_text_domain . '-premium/' . self::$plugin_text_domain . '-premium.php')) {
    305 
    306                     $settings_links[] = '<a href="' . esc_url(self::premium_link()) . '" title="' . esc_attr(sprintf(__('Trial %s Premium', self::$plugin_text_domain), self::$plugin_name)) . ' for 7 days">' . __('Download Trial', self::$plugin_text_domain) . '</a>';
     320                    $settings_links[] = '<a href="' . wp_nonce_url('?activate-' . self::$plugin_prefix . '=true', self::$plugin_prefix . '_activate') . '" id="' . self::$plugin_prefix . '_activate_upgrade" title="' . esc_attr(__('Activate Purchase', 'options-for-twenty-twenty')) . '" onclick="jQuery(this).append(&#39; <img src=&#34;/wp-admin/images/loading.gif&#34; style=&#34;float: none; width: auto; height: auto;&#34; />&#39;); setTimeout(function(){document.getElementById(\'' . self::$plugin_prefix . '_activate_upgrade\').removeAttribute(\'href\');},1); return true;">' . __('Activate Purchase', 'options-for-twenty-twenty') . '</a>';
     321
     322                } elseif (self::$plugin_trial && !is_plugin_active('options-for-twenty-twenty' . '-premium/' . 'options-for-twenty-twenty' . '-premium.php')) {
     323
     324/* translators: name of the plugin */
     325                    $settings_links[] = '<a href="' . esc_url(self::premium_link()) . '" title="' . esc_attr(sprintf(__('Trial %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)) . ' for 7 days">' . __('Download Trial', 'options-for-twenty-twenty') . '</a>';
    307326
    308327                }
     
    310329            } elseif ($premium) {
    311330
    312                 $settings_links[] = '<strong style="color: green; display: inline;">' . __('Purchase Confirmed', self::$plugin_text_domain) . '</strong>';
     331                $settings_links[] = '<strong style="color: green; display: inline;">' . __('Purchase Confirmed', 'options-for-twenty-twenty') . '</strong>';
    313332
    314333            }
     
    320339        public static function plugin_row_meta($plugin_meta, $plugin_file, $plugin_data, $status) {
    321340
    322             if ($plugin_file === self::$plugin_text_domain . '/' . self::$plugin_text_domain . '.php') {
    323 
    324                 $plugin_meta[] = '<a href="' . esc_url(self::support_url()) . '" title="' . __('Problems? We are here to help!', self::$plugin_text_domain) . '" style="color: orange; font-weight: bold;">' . __('Need help?', self::$plugin_text_domain) . '</a>';
    325                 $plugin_meta[] = '<a href="https://wordpress.org/support/plugin/' . self::$plugin_text_domain . '/reviews/#new-post" title="' . esc_attr(sprintf(__('If you like %s, please leave a review!', self::$plugin_text_domain), self::$plugin_name)) . '">' . __('Review plugin', self::$plugin_text_domain) . '</a>';
     341            if ($plugin_file === 'options-for-twenty-twenty' . '/' . 'options-for-twenty-twenty' . '.php') {
     342
     343                $plugin_meta[] = '<a href="' . esc_url(self::support_url()) . '" title="' . __('Problems? We are here to help!', 'options-for-twenty-twenty') . '" style="color: orange; font-weight: bold;">' . __('Need help?', 'options-for-twenty-twenty') . '</a>';
     344/* translators: name of the plugin */
     345                $plugin_meta[] = '<a href="https://wordpress.org/support/plugin/' . 'options-for-twenty-twenty' . '/reviews/#new-post" title="' . esc_attr(sprintf(__('If you like %s, please leave a review!', 'options-for-twenty-twenty'), self::$plugin_name)) . '">' . __('Review plugin', 'options-for-twenty-twenty') . '</a>';
    326346
    327347            }
     
    353373            if (self::$plugin_premium_class) {
    354374
    355                 if (get_option(self::$plugin_prefix . '_purchased') && !class_exists(self::$plugin_premium_class) && get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()) {
    356 
    357 ?>
    358 
    359 <div class="notice notice-error is-dismissible <?php echo self::$plugin_prefix; ?>-notice">
    360 
    361 <p><strong><?php echo self::$plugin_name; ?></strong><br />
    362 <?php esc_html_e('In order to use the premium features, you need to install the premium version of the plugin ...', self::$plugin_text_domain); ?></p>
    363 
    364 <p><a href="<?php echo esc_url(self::premium_link()); ?>" title="<?php echo esc_attr(sprintf(__('Download %s Premium', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Download %s Premium', self::$plugin_text_domain), self::$plugin_name); ?></a></p>
     375                if (
     376                    get_option(self::$plugin_prefix . '_purchased') &&
     377                    !class_exists(self::$plugin_premium_class) &&
     378                    get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()
     379                ) {
     380
     381?>
     382
     383<div class="notice notice-error is-dismissible <?php echo esc_html(self::$plugin_prefix); ?>-notice">
     384
     385<p><strong><?php echo esc_html(self::$plugin_name); ?></strong><br />
     386<?php esc_html_e('In order to use the premium features, you need to install the premium version of the plugin ...', 'options-for-twenty-twenty'); ?></p>
     387
     388<p><a href="<?php
     389/* translators: name of the plugin */
     390echo esc_url(self::premium_link()); ?>" title="<?php echo esc_attr(sprintf(__('Download %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)); ?>" class="button-primary"><?php printf(esc_html(__('Download %s Premium', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></a></p>
    365391
    366392</div>
    367393
    368394<script type="text/javascript">
    369     jQuery(document).on('click', '.<?php echo self::$plugin_prefix; ?>-notice .notice-dismiss', function() {
     395    jQuery(document).on('click', '.<?php echo esc_attr(self::$plugin_prefix); ?>-notice .notice-dismiss', function() {
    370396        jQuery.ajax({
    371397            url: ajaxurl,
    372398            data: {
    373                 action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
    374                 _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     399                action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
     400                _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    375401            }
    376402        });
     
    380406<?php
    381407
    382                 } elseif (!class_exists(self::$plugin_premium_class) && time() > (strtotime('+1 hour', filectime(__DIR__))) && get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()) {
    383 
    384 ?>
    385 
    386 <div class="notice notice-info is-dismissible <?php echo self::$plugin_prefix; ?>-notice">
    387 
    388 <p><strong><?php printf(__('Thank you for using %s plugin', self::$plugin_text_domain), self::$plugin_name); ?></strong><br />
     408                } elseif (
     409                    !class_exists(self::$plugin_premium_class) &&
     410                    time() > (strtotime('+1 hour', filectime(__DIR__))) &&
     411                    get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()
     412                ) {
     413
     414?>
     415
     416<div class="notice notice-info is-dismissible <?php echo esc_attr(self::$plugin_prefix); ?>-notice">
     417
     418    <p style="font-size:15px;"><strong><?php
     419/* translators: name of the plugin */
     420printf(esc_html(__('Thank you for using %s plugin', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></strong></p>
    389421<?php
    390422
    391423                    if (self::$plugin_trial == true) {
    392424
    393                         _e('Would you like to try even more features? Download your 7 day free trial now!', self::$plugin_text_domain);
     425?>
     426
     427    <p><?php echo esc_html(__('Would you like to try even more features? Download your 7 day free trial now!', 'options-for-twenty-twenty')); ?></p>
     428<?php
    394429
    395430                    } else {
    396431
    397                         echo sprintf(__('Upgrade now to %s Premium to enable more options and features and contribute to the further development of this plugin.', self::$plugin_text_domain), self::$plugin_name);
     432?>
     433
     434    <p>
     435        <?php
     436/* translators: name of the plugin */
     437                        echo esc_html(sprintf(__('Upgrade now to %s Premium to enable more options and features and contribute to the further development of this plugin.', 'options-for-twenty-twenty'), self::$plugin_name)); ?>
     438    </p>
     439<?php
    398440
    399441                    }
    400442
    401 ?></p>
    402 
    403 <p><?php
     443?>
     444
     445    <p><?php
    404446
    405447                    if (self::$plugin_trial == true) {
     
    407449?>
    408450
    409 <a href="<?php echo esc_url(self::premium_link()); ?>" title="<?php echo esc_attr(sprintf(__('Try %s Premium', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Trial %s Premium for 7 days', self::$plugin_text_domain), self::$plugin_name); ?></a>
    410 
     451        <a href="<?php echo esc_url(self::premium_link()); ?>"
     452           title="<?php
     453/* translators: name of the plugin */
     454echo esc_attr(sprintf(__('Try %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)); ?>"
     455           class="button-secondary">
     456           <?php echo esc_html(__('Try premium plugin free for 7 days', 'options-for-twenty-twenty')); ?>
     457        </a>
    411458<?php
    412459
     
    414461
    415462?>
    416 <a href="<?php echo esc_url(self::upgrade_link()); ?>" title="<?php echo esc_attr(sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name); ?></a></p>
     463
     464        <a href="<?php echo esc_url(self::upgrade_link()); ?>"
     465           title="<?php
     466/* translators: name of the plugin */
     467echo esc_attr(sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)); ?>"
     468           class="button-primary">
     469           <?php echo esc_html(__('Upgrade now to premium plugin', 'options-for-twenty-twenty')); ?>
     470        </a>
     471
     472    </p>
     473
     474    <hr style="margin:12px 0;">
     475
     476    <p>
     477        <strong>✨ Need help with your WordPress site?</strong>
     478        🚀 Slow, want new features, or need a glow-up?
     479        <a href="https://webd.uk/services/?utm_campaign=notice&utm_term=options-for-twenty-twenty" class="button-secondary" style="margin-left:6px; vertical-align: middle;">Explore our services</a>
     480    </p>
    417481
    418482</div>
    419483
    420484<script type="text/javascript">
    421     jQuery(document).on('click', '.<?php echo self::$plugin_prefix; ?>-notice .notice-dismiss', function() {
     485    jQuery(document).on('click', '.<?php echo esc_attr(self::$plugin_prefix); ?>-notice .notice-dismiss', function() {
    422486        jQuery.ajax({
    423487            url: ajaxurl,
    424488            data: {
    425                 action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
    426                 _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     489                action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
     490                _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    427491            }
    428492        });
     
    434498                }
    435499
    436             } elseif (time() > (strtotime('+1 hour', filectime(__DIR__))) && get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version() && !get_option(self::$plugin_prefix . '_donated')) {
    437 
    438 ?>
    439 
    440 <div class="notice notice-info is-dismissible <?php echo self::$plugin_prefix; ?>-notice">
    441 <p><strong><?php printf(__('Thank you for using %s plugin', self::$plugin_text_domain), self::$plugin_name); ?></strong></p>
    442 <?php
    443 
     500            } elseif (
     501                time() > (strtotime('+1 hour', filectime(__DIR__))) &&
     502                get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version() &&
     503                !get_option(self::$plugin_prefix . '_donated')
     504            ) {
     505
     506?>
     507
     508<div class="notice notice-info is-dismissible <?php echo esc_attr(self::$plugin_prefix); ?>-notice">
     509<p><strong><?php
     510/* translators: name of the plugin */
     511printf(esc_html(__('Thank you for using %s plugin', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></strong></p>
     512<?php
     513
     514// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound
    444515                do_action(self::$plugin_prefix . '_admin_notice_donate');
    445516
    446517?>
    447 <p><?php esc_html_e('Funding plugins like this one with small financial contributions is essential to pay the developers to continue to do what they do. Please take a moment to give a small amount ...', self::$plugin_text_domain); ?></p>
    448 <p><a href="<?php echo esc_url(self::upgrade_link()); ?>" title="<?php echo esc_attr(sprintf(__('Contribute to %s', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Contribute to %s', self::$plugin_text_domain), self::$plugin_name); ?></a> <a href="#" id="<?php echo self::$plugin_prefix; ?>-already-paid" title="<?php echo esc_attr(__('Aleady Contributed!', self::$plugin_text_domain)); ?>" class="button-primary"><?php esc_html_e('Aleady Contributed!', self::$plugin_text_domain); ?></a></p>
     518<p><?php esc_html_e('Funding plugins like this one with small financial contributions is essential to pay the developers to continue to do what they do. Please take a moment to give a small amount ...', 'options-for-twenty-twenty'); ?></p>
     519<p><a href="<?php echo esc_url(self::upgrade_link()); ?>" title="<?php
     520/* translators: name of the plugin */
     521echo esc_attr(sprintf(__('Contribute to %s', 'options-for-twenty-twenty'), self::$plugin_name)); ?>" class="button-primary"><?php printf(esc_html(__('Contribute to %s', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></a> <a href="#" id="<?php echo esc_attr(self::$plugin_prefix); ?>-already-paid" title="<?php echo esc_attr(__('Aleady Contributed!', 'options-for-twenty-twenty')); ?>" class="button-primary"><?php esc_html_e('Aleady Contributed!', 'options-for-twenty-twenty'); ?></a></p>
    449522</div>
    450523
    451524<script type="text/javascript">
    452     jQuery(document).on('click', '#<?php echo self::$plugin_prefix; ?>-already-paid', function() {
    453         if (confirm(<?php echo json_encode(__('Have you really? Press "Cancel" if you forgot to 🙂', self::$plugin_text_domain)); ?>)) {
    454             alert(<?php echo json_encode(__('Thank you!', self::$plugin_text_domain)); ?>);
    455             jQuery('.<?php echo self::$plugin_prefix; ?>-notice').fadeTo(100, 0, function() {
    456                 jQuery('.<?php echo self::$plugin_prefix; ?>-notice').slideUp(100, function() {
    457                     jQuery('.<?php echo self::$plugin_prefix; ?>-notice').remove()
     525    jQuery(document).on('click', '#<?php echo esc_attr(self::$plugin_prefix); ?>-already-paid', function() {
     526        if (confirm(<?php echo json_encode(__('Have you really? Press "Cancel" if you forgot to 🙂', 'options-for-twenty-twenty')); ?>)) {
     527            alert(<?php echo json_encode(__('Thank you!', 'options-for-twenty-twenty')); ?>);
     528            jQuery('.<?php echo esc_attr(self::$plugin_prefix); ?>-notice').fadeTo(100, 0, function() {
     529                jQuery('.<?php echo esc_attr(self::$plugin_prefix); ?>-notice').slideUp(100, function() {
     530                    jQuery('.<?php echo esc_attr(self::$plugin_prefix); ?>-notice').remove()
    458531                });
    459532            });
     
    461534                url: ajaxurl,
    462535                data: {
    463                     action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
     536                    action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
    464537                    donated: 'true',
    465                     _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     538                    _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    466539                }
    467540            });
    468541        } else {
    469             window.location.assign('<?php echo self::upgrade_link(); ?>');
     542            window.location.assign('<?php echo esc_url(self::upgrade_link()); ?>');
    470543        }
    471544    });
    472     jQuery(document).on('click', '.<?php echo self::$plugin_prefix; ?>-notice .notice-dismiss', function() {
     545    jQuery(document).on('click', '.<?php echo esc_attr(self::$plugin_prefix); ?>-notice .notice-dismiss', function() {
    473546        jQuery.ajax({
    474547            url: ajaxurl,
    475548            data: {
    476                 action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
    477                 _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     549                action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
     550                _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    478551            }
    479552        });
     
    509582                    is_admin() &&
    510583                    $pagenow === 'customize.php' &&
    511                     isset($_GET['theme']) &&
    512                     !in_array($_GET['theme'], $themes, true)
     584                    isset($_GET['theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     585                    !in_array($_GET['theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    513586                ) && !(
    514587                    !is_admin() &&
    515588                    $pagenow === 'index.php' &&
    516                     isset($_GET['customize_theme']) &&
    517                     isset($_GET['customize_changeset_uuid']) &&
    518                     !in_array($_GET['customize_theme'], $themes, true)
     589                    isset($_GET['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     590                    isset($_GET['customize_changeset_uuid']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     591                    !in_array($_GET['customize_theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    519592                )
    520593            ) {
     
    530603                    is_admin() &&
    531604                    $pagenow === 'customize.php' &&
    532                     isset($_GET['theme']) &&
    533                     in_array($_GET['theme'], $themes, true)
     605                    isset($_GET['theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     606                    in_array($_GET['theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    534607                ) || (
    535608                    !is_admin() &&
    536609                    $pagenow === 'index.php' &&
    537                     isset($_GET['customize_theme']) &&
    538                     isset($_GET['customize_changeset_uuid']) &&
    539                     in_array($_GET['customize_theme'], $themes, true)
     610                    isset($_GET['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     611                    isset($_GET['customize_changeset_uuid']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     612                    in_array($_GET['customize_theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    540613                ))
    541614            ) {
     
    549622                    !is_admin() &&
    550623                    $pagenow === 'index.php' &&
    551                     isset($_GET['customize_theme']) &&
    552                     isset($_GET['customize_changeset_uuid'])
     624                    isset($_GET['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     625                    isset($_GET['customize_changeset_uuid']) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    553626               
    554627            ) {
    555628
    556                 $child = wp_get_theme($_GET['customize_theme']);
     629                $child = wp_get_theme(sanitize_file_name(wp_unslash($_GET['customize_theme']))); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    557630
    558631                if (isset($child->template) && in_array($child->template, $themes, true)) {
     
    568641                is_admin() &&
    569642                ($pagenow === 'customize.php' || $pagenow === 'admin-ajax.php') &&
    570                 isset($_GET['theme']) || (isset($_POST['customize_theme']) && isset($_POST['customize_changeset_uuid']))
     643                (
     644                    isset($_GET['theme']) || // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     645                    (
     646                        isset($_POST['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Missing
     647                        isset($_POST['customize_changeset_uuid']) // phpcs:ignore WordPress.Security.NonceVerification.Missing
     648                    )
     649                )
    571650            ) {
    572651
    573                 if (isset($_GET['theme'])) {
    574 
    575                     $child = wp_get_theme($_GET['theme']);
     652                if (isset($_GET['theme'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     653
     654                    $child = wp_get_theme(sanitize_file_name(wp_unslash($_GET['theme']))); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    576655
    577656                } else {
    578657
    579                     $child = wp_get_theme($_POST['customize_theme']);
     658                    $child = wp_get_theme(sanitize_file_name(wp_unslash($_POST['customize_theme']))); // phpcs:ignore WordPress.Security.NonceVerification.Missing
    580659
    581660                }
     
    599678if (!function_exists('webd_customize_register')) {
    600679
     680// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound
    601681    function webd_customize_register($wp_customize) {
    602682
    603683        if (!class_exists('webd_Customize_Control_Checkbox_Multiple')) {
    604684
     685// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound
    605686            class webd_Customize_Control_Checkbox_Multiple extends WP_Customize_Control {
    606687
     
    622703
    623704?>
    624 <span class="description customize-control-description"><?php echo $this->description; ?></span>
     705<span class="description customize-control-description"><?php echo esc_html($this->description); ?></span>
    625706<?php
    626707
     
    647728?>
    648729        </ul>
    649         <input type="hidden" id="_customize-input-<?php echo $this->id; ?>" <?php $this->link(); ?> value="<?php echo esc_attr(implode(',', $multi_values)); ?>" />
     730        <input type="hidden" id="_customize-input-<?php echo esc_attr($this->id); ?>" <?php $this->link(); ?> value="<?php echo esc_attr(implode(',', $multi_values)); ?>" />
    650731<?php
    651732
  • options-for-twenty-twenty/tags/1.6.5/options-for-twenty-twenty.php

    r3180354 r3421200  
    22/*
    33 * Plugin Name: Options for Twenty Twenty
    4  * Version: 1.6.4
     4 * Version: 1.6.5
    55 * Plugin URI: https://webd.uk/product/options-for-twenty-twenty-upgrade/
    66 * Description: Adds powerful customizer options to modify all aspects of the default WordPress theme Twenty Twenty
    77 * Author: Webd Ltd
    88 * Author URI: https://webd.uk
     9 * License: GPLv2 or later
     10 * License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
    911 * Text Domain: options-for-twenty-twenty
    1012 */
     
    2224    class options_for_twenty_twenty_class {
    2325
    24         public static $version = '1.6.4';
     26        public static $version = '1.6.5';
    2527
    2628        function __construct() {
     
    592594            ));
    593595            $wp_customize->add_control('toggle_use_dashicon', array(
    594                 'label'         => __('Use Hamburger Dashicon', 'sidemenu'),
    595                 'description'   => __('Use a hamburger Dashicon on the button used to open the Expanded / Mobile menu.', 'sidemenu'),
     596                'label'         => __('Use Hamburger Dashicon', 'options-for-twenty-twenty'),
     597                'description'   => __('Use a hamburger Dashicon on the button used to open the Expanded / Mobile menu.', 'options-for-twenty-twenty'),
    596598                'section'       => 'oftt_navigation',
    597599                'settings'      => 'toggle_use_dashicon',
     
    11861188            ));
    11871189            $wp_customize->add_control('inject_breadcrumbs', array(
    1188                 'label'         => __('Inject Breadcrumbs', 'options-for-twenty-seventeen'),
    1189                 'description'   => sprintf(wp_kses(__('Inject <a href="%s">Yoast SEO</a> or <a href="%s">Breadcrumb NavXT</a> breadcrumbs above page content.', 'options-for-twenty-twenty'), array('a' => array('href' => array()))), esc_url(admin_url('plugin-install.php?s=wordpress-seo&tab=search&type=term')), esc_url(admin_url('plugin-install.php?s=breadcrumb-navxt&tab=search&type=term'))),
     1190                'label'         => __('Inject Breadcrumbs', 'options-for-twenty-twenty'),
     1191/* translators: links to plugin installer */
     1192                'description'   => wp_kses(sprintf(__('Inject <a href="%1$s">Yoast SEO</a> or <a href="%2$s">Breadcrumb NavXT</a> breadcrumbs above page content.', 'options-for-twenty-twenty'), esc_url(admin_url('plugin-install.php?s=wordpress-seo&tab=search&type=term')), esc_url(admin_url('plugin-install.php?s=breadcrumb-navxt&tab=search&type=term'))), array('a' => array('href' => array()))),
    11901193                'section'       => 'oftt_content',
    11911194                'settings'      => 'inject_breadcrumbs',
     
    18241827
    18251828            $control_label = __('Custom Toggle Dashicon', 'options-for-twenty-twenty');
    1826             $control_description = sprintf(wp_kses(__('Choose your own <a href="%s">dashicon</a> for the button that opens the expanded / mobile menu.', 'options-for-twenty-twenty'), array('a' => array('href' => array()))), esc_url('https://developer.wordpress.org/resource/dashicons/'));
     1829/* translators: link to dashicon documentation */
     1830            $control_description = wp_kses(sprintf(__('Choose your own <a href="%s">dashicon</a> for the button that opens the expanded / mobile menu.', 'options-for-twenty-twenty'), esc_url('https://developer.wordpress.org/resource/dashicons/')), array('a' => array('href' => array())));
    18271831            ofttCommon::add_hidden_control($wp_customize, 'nav_toggle_dashicon', 'oftt_navigation', $control_label, $control_description . ' ' . $upgrade_nag);
    18281832
     
    18841888
    18851889            $control_label = __('Background Slider', 'options-for-twenty-twenty');
    1886             $control_description = sprintf(
    1887                 wp_kses(__('Places a <a href="%s">MetaSlider</a> slider in the background of the Cover Template.', 'options-for-twenty-twenty'), array('a' => array('href' => array()))),
    1888                 esc_url(add_query_arg( array(
    1889                     's' => 'ml-slider',
    1890                     'tab' => 'search',
    1891                     'type' => 'term'
    1892                 ), admin_url('plugin-install.php')))
     1890            $control_description = wp_kses(
     1891                sprintf(
     1892/* translators: link to plugin installer */
     1893                    __('Places a <a href="%s">MetaSlider</a> slider in the background of the Cover Template.', 'options-for-twenty-twenty'),
     1894                    esc_url(add_query_arg(
     1895                        array(
     1896                            's' => 'ml-slider',
     1897                            'tab' => 'search',
     1898                            'type' => 'term'
     1899                        ),
     1900                        admin_url('plugin-install.php')
     1901                    ))
     1902                ),
     1903                array('a' => array('href' => array()))
    18931904            );
    18941905            ofttCommon::add_hidden_control($wp_customize, 'slider_cover', 'cover_template_options', $control_label, $control_description . ' ' . $upgrade_nag);
     
    19831994        right: 0;
    19841995        background-image: inherit;
    1985         background-size: <?php echo $size; ?>;
     1996        background-size: <?php echo wp_kses($size, 'strip'); ?>;
    19861997        background-position: inherit;
    19871998        background-repeat: inherit;
     
    20162027?>
    20172028#site-header, #breadcrumbs {
    2018     max-width: <?php echo $mod; ?>;
     2029    max-width: <?php echo wp_kses($mod, 'strip'); ?>;
    20192030    margin: 0 auto;
    20202031}
     
    20462057?>
    20472058.site-title {
    2048     font-size: <?php echo ($mod * 0.0875); ?>rem;
     2059    font-size: <?php echo wp_kses(($mod * 0.0875), 'strip'); ?>rem;
    20492060}
    20502061@media (min-width: 700px) {
    20512062    .site-title {
    2052         font-size: <?php echo ($mod / 10); ?>rem;
     2063        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    20532064    }
    20542065}
     
    20682079?>
    20692080.modal-menu > li > a, .modal-menu > li > .ancestor-wrapper > a {
    2070     font-size: <?php echo ($mod * 0.2 / 2.4); ?>rem;
     2081    font-size: <?php echo wp_kses(($mod * 0.2 / 2.4), 'strip'); ?>rem;
    20712082}
    20722083@media (min-width: 700px) {
    20732084    .modal-menu > li > a, .modal-menu > li > .ancestor-wrapper > a {
    2074         font-size: <?php echo ($mod / 10); ?>rem;
     2085        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    20752086    }
    20762087}
     
    21542165
    21552166?>
    2156 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap,
    2157 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner {
     2167.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap,
     2168.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner {
    21582169    display: flex;
    21592170    flex-wrap: wrap;
    21602171    padding: 0;
    21612172}
    2162 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap {
     2173.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap {
    21632174    width: 100%;
    21642175}
    2165 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>header {
     2176.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>header {
    21662177    flex: 0 1 auto;
    21672178    width: 100%;
    21682179}
    2169 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article,
    2170 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
     2180.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article,
     2181.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
    21712182    display: flex;
    21722183    flex-direction: column;
     
    21762187}
    21772188@media (min-width: 700px) {
    2178     .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article,
    2179     .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
     2189    .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article,
     2190    .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
    21802191        width: 50%;
    21812192    }
    21822193}
    21832194@media (min-width: 1000px) {
    2184     .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article,
    2185     .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
     2195    .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article,
     2196    .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
    21862197        width: 25%;
    21872198    }
    21882199}
    2189 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>header, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>header,
    2190 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>header, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header {
     2200.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>header,
     2201.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header {
    21912202    width: 100%;
    21922203    order: 2;
    21932204}
    2194 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>header>.section-inner, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>header>.section-inner,
    2195 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>header>.section-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header>.section-inner {
     2205.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>header>.section-inner,
     2206.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header>.section-inner {
    21962207    width: auto;
    21972208}
    2198 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article h2.entry-title, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article h2.entry-title,
    2199 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article h2.entry-title, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article h2.entry-title {
     2209.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article h2.entry-title,
     2210.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article h2.entry-title {
    22002211    font-size: 1.2em;
    22012212    padding-top: 0.5em;
    22022213}
    2203 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header::after, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header::after,
    2204 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header::after, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header::after {
     2214.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header::after,
     2215.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header::after {
    22052216    display: block;
    22062217    content: '';
    22072218    padding-bottom: 65%;
    22082219}
    2209 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header,
    2210 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header {
    2211     background-color: <?php echo $accent; ?>;
     2220.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header,
     2221.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header {
     2222    background-color: <?php echo wp_kses($accent, 'strip'); ?>;
    22122223    flex: 1 1 auto;
    22132224    position: relative;
    22142225}
    2215 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header>.section-inner,
    2216 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner {
     2226.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header>.section-inner,
     2227.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner {
    22172228    position: absolute;
    22182229    height: 100%;
     
    22222233    flex-direction: column;
    22232234}
    2224 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title a,
    2225 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a {
     2235.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title a,
     2236.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a {
    22262237    color: white;
    22272238}
    2228 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title,
    2229 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title {
     2239.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title,
     2240.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title {
    22302241    flex: 0 1 auto;
    22312242    font-size: 2.5em;
    22322243    padding: 0 1rem;
    22332244}
    2234 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article .post-meta-wrapper, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article .post-meta-wrapper,
    2235 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article .post-meta-wrapper, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article .post-meta-wrapper {
     2245.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article .post-meta-wrapper, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article .post-meta-wrapper,
     2246.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article .post-meta-wrapper, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article .post-meta-wrapper {
    22362247    display: none;
    22372248}
    2238 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media,
    2239 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media {
     2249.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media,
     2250.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media {
    22402251    width: 100%;
    22412252    margin: 0;
    22422253    order: 1;
    22432254}
    2244 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media::after, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media::after,
    2245 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media::after, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media::after {
     2255.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media::after,
     2256.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media::after {
    22462257    display: block;
    22472258    content: '';
    22482259    padding-bottom: 65%;
    22492260}
    2250 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media-inner, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media-inner,
    2251 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media-inner {
     2261.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media-inner,
     2262.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media-inner {
    22522263    position: static;
    22532264}
    2254 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media .featured-media-inner img, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media .featured-media-inner img,
    2255 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media .featured-media-inner img, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media .featured-media-inner img {
     2265.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media .featured-media-inner img, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media .featured-media-inner img,
     2266.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media .featured-media-inner img, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media .featured-media-inner img {
    22562267    position: absolute;
    22572268    left: 0;
     
    22612272    object-fit: cover;
    22622273}
    2263 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media figcaption, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media figcaption,
    2264 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media figcaption, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media figcaption {
     2274.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media figcaption, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media figcaption,
     2275.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media figcaption, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media figcaption {
    22652276    display: none;
    22662277}
    2267 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>.post-inner.thin, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>.post-inner>article>.section-inner,
    2268 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner.thin, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner>article>.section-inner,
    2269 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>.post-inner.thin, .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>.section-inner,
    2270 .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.post-inner.thin, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.section-inner {
     2278.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>.post-inner>article>.section-inner,
     2279.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner>article>.section-inner,
     2280.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>.section-inner,
     2281.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.section-inner {
    22712282    display: none;
    22722283}
    2273 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content hr, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap hr,
    2274 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner hr, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner hr {
     2284.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content hr, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap hr,
     2285.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner hr, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner hr {
    22752286    display: none;
    22762287}
    2277 .<?php echo $taxonomy; ?>.footer-top-visible:not(.template-cover) .footer-nav-widgets-wrapper {
     2288.<?php echo wp_kses($taxonomy, 'strip'); ?>.footer-top-visible:not(.template-cover) .footer-nav-widgets-wrapper {
    22782289    margin-top: 0;
    22792290}
     
    23192330?>
    23202331.archive-title {
    2321     font-size: <?php echo ($mod * 0.24 / 3.2); ?>rem;
     2332    font-size: <?php echo wp_kses(($mod * 0.24 / 3.2), 'strip'); ?>rem;
    23222333}
    23232334@media (min-width: 700px) {
    23242335    .archive-title {
    2325         font-size: <?php echo ($mod / 10); ?>rem;
     2336        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    23262337    }
    23272338}
     
    24492460?>
    24502461h1.entry-title, h2.entry-title {
    2451     font-size: <?php echo ($mod * 0.36 / 8.4); ?>rem;
     2462    font-size: <?php echo wp_kses(($mod * 0.36 / 8.4), 'strip'); ?>rem;
    24522463}
    24532464@media (min-width: 700px) {
    24542465    h1.entry-title, h2.entry-title {
    2455         font-size: <?php echo ($mod * 0.64 / 8.4); ?>rem;
     2466        font-size: <?php echo wp_kses(($mod * 0.64 / 8.4), 'strip'); ?>rem;
    24562467    }
    24572468}
    24582469@media (min-width: 1220px) {
    24592470    h1.entry-title, h2.entry-title {
    2460         font-size: <?php echo ($mod / 10); ?>rem;
     2471        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    24612472    }
    24622473}
     
    24712482?>
    24722483.archive .post h2.entry-title {
    2473     font-size: <?php echo ($mod * 0.36 / 6.4); ?>rem;
     2484    font-size: <?php echo wp_kses(($mod * 0.36 / 6.4), 'strip'); ?>rem;
    24742485}
    24752486@media (min-width: 700px) {
    24762487    .archive .post h2.entry-title {
    2477         font-size: <?php echo ($mod / 10); ?>rem;
     2488        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    24782489    }
    24792490}
     
    24882499?>
    24892500.page h1.entry-title, h2.entry-title {
    2490     font-size: <?php echo ($mod * 0.36 / 8.4); ?>rem;
     2501    font-size: <?php echo wp_kses(($mod * 0.36 / 8.4), 'strip'); ?>rem;
    24912502}
    24922503@media (min-width: 700px) {
    24932504    .page h1.entry-title, h2.entry-title {
    2494         font-size: <?php echo ($mod * 0.64 / 8.4); ?>rem;
     2505        font-size: <?php echo wp_kses(($mod * 0.64 / 8.4), 'strip'); ?>rem;
    24952506    }
    24962507}
    24972508@media (min-width: 1220px) {
    24982509    .page h1.entry-title, h2.entry-title {
    2499         font-size: <?php echo ($mod / 10); ?>rem;
     2510        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    25002511    }
    25012512}
     
    25142525?>
    25152526.singular .intro-text {
    2516     font-size: <?php echo ($mod * 0.2 / 3.2); ?>rem;
     2527    font-size: <?php echo wp_kses(($mod * 0.2 / 3.2), 'strip'); ?>rem;
    25172528}
    25182529@media (min-width: 700px) {
    25192530    .singular .intro-text {
    2520         font-size: <?php echo ($mod * 0.26 / 3.2); ?>rem;
     2531        font-size: <?php echo wp_kses(($mod * 0.26 / 3.2), 'strip'); ?>rem;
    25212532    }
    25222533}
    25232534@media (min-width: 1000px) {
    25242535    .singular .intro-text {
    2525         font-size: <?php echo ($mod * 0.28 / 3.2); ?>rem;
     2536        font-size: <?php echo wp_kses(($mod * 0.28 / 3.2), 'strip'); ?>rem;
    25262537    }
    25272538}
    25282539@media (min-width: 1220px) {
    25292540    .singular .intro-text {
    2530         font-size: <?php echo ($mod / 10); ?>rem;
     2541        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    25312542    }
    25322543}
     
    25412552?>
    25422553.post-meta-single-top .post-meta {
    2543     justify-content: <?php echo $mod; ?>;
     2554    justify-content: <?php echo wp_kses($mod, 'strip'); ?>;
    25442555   
    25452556}
     
    26712682    }
    26722683    .entry-content > .wp-block-image figure.alignleft {
    2673         margin-left: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2684        margin-left: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    26742685        margin-right: 1em;
    26752686    }
    26762687    .entry-content > .wp-block-image figure.alignright {
    2677         margin-right: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2688        margin-right: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    26782689        margin-left: 1em;
    26792690    }
     
    26882699    }
    26892700    .entry-content > .wp-block-image figure.alignleft {
    2690         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2701        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    26912702        margin-left: 0;
    26922703        margin-right: 1em;
    26932704    }
    26942705    .entry-content > .wp-block-image figure.alignright {
    2695         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2706        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    26962707        margin-right: 0;
    26972708        margin-left: 1em;
     
    27142725    }
    27152726    .entry-content > .wp-block-image figure.alignleft {
    2716         margin-left: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2727        margin-left: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    27172728        margin-right: 1em;
    27182729    }
    27192730    .entry-content > .wp-block-image figure.alignright {
    2720         margin-right: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2731        margin-right: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    27212732        margin-left: 1em;
    27222733    }
     
    27332744    }
    27342745    .entry-content > .wp-block-image figure.alignleft {
    2735         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2746        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27362747        margin-left: 0;
    27372748        margin-right: 1em;
    27382749    }
    27392750    .entry-content > .wp-block-image figure.alignright {
    2740         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2751        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27412752        margin-right: 0;
    27422753        margin-left: 1em;
     
    27532764    .entry-content > .wp-block-pullquote.alignleft, .entry-content > .wp-block-pullquote.alignright {
    27542765        position: absolute;
    2755         max-width: calc((100% - <?php echo $mod; ?>) / 2 - 6rem);
     2766        max-width: calc((100% - <?php echo wp_kses($mod, 'strip'); ?>) / 2 - 6rem);
    27562767    }
    27572768    .entry-content > .wp-block-pullquote.alignleft {
    2758         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 2rem);
     2769        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 2rem);
    27592770        margin-left: -31rem;
    27602771    }
    27612772    .entry-content > .wp-block-pullquote.alignright {
    2762         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 2rem);
     2773        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 2rem);
    27632774        margin-right: -31rem;
    27642775    }
    27652776    .entry-content > .wp-block-image figure.alignleft, .entry-content > .wp-block-image figure.alignright {
    27662777        position: absolute;
    2767         max-width: calc((100% - <?php echo $mod; ?>) / 2 - 4rem);
     2778        max-width: calc((100% - <?php echo wp_kses($mod, 'strip'); ?>) / 2 - 4rem);
    27682779    }
    27692780    .entry-content > .wp-block-image figure.alignleft {
    2770         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2781        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27712782        margin-left: -29rem;
    27722783        margin-right: -2rem;
    27732784    }
    27742785    .entry-content > .wp-block-image figure.alignright {
    2775         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2786        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27762787        margin-right: -29rem;
    27772788        margin-left: -2rem;
     
    28022813?>
    28032814.entry-content hr, hr.styled-separator {
    2804     border-top: <?php echo absint($mod); ?>px <?php echo (get_theme_mod('hr_style') ? get_theme_mod('hr_style') : 'solid'); ?> <?php echo (get_theme_mod('hr_color') ? get_theme_mod('hr_color') : '#6d6d6d'); ?>;
     2815    border-top: <?php echo wp_kses(absint($mod), 'strip'); ?>px <?php echo wp_kses((get_theme_mod('hr_style') ? get_theme_mod('hr_style') : 'solid'), 'strip'); ?> <?php echo wp_kses((get_theme_mod('hr_color') ? get_theme_mod('hr_color') : '#6d6d6d'), 'strip'); ?>;
    28052816    position: static;
    28062817}
     
    28302841?>
    28312842.footer-menu {
    2832     font-size: <?php echo ($mod * 0.18 / 2.4); ?>rem;
     2843    font-size: <?php echo wp_kses(($mod * 0.18 / 2.4), 'strip'); ?>rem;
    28332844}
    28342845@media (min-width: 700px) {
    28352846    .footer-menu {
    2836         font-size: <?php echo ($mod / 10); ?>rem;
     2847        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    28372848    }
    28382849}
    28392850@media (min-width: 1000px) {
    28402851    .footer-menu {
    2841     font-size: <?php echo ($mod * 0.12 / 2.4); ?>rem;
     2852    font-size: <?php echo wp_kses(($mod * 0.12 / 2.4), 'strip'); ?>rem;
    28422853    }
    28432854}
    28442855@media (min-width: 1220px) {
    28452856    .footer-menu {
    2846         font-size: <?php echo ($mod / 10); ?>rem;
     2857        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    28472858    }
    28482859}
     
    29792990?>
    29802991.powered-by-wordpress {
    2981     font-size: <?php echo ($mod * 1.6 / 18); ?>rem;
     2992    font-size: <?php echo wp_kses(($mod * 1.6 / 18), 'strip'); ?>rem;
    29822993}
    29832994@media (min-width: 700px) {
    29842995    .powered-by-wordpress {
    2985         font-size: <?php echo ($mod / 10); ?>rem;
     2996        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    29862997    }
    29872998}
     
    31803191                if ($breadcrumbs) {
    31813192
    3182                     echo '<div id="breadcrumbs">' . $breadcrumbs . '</div>';
     3193                    echo '<div id="breadcrumbs">' . wp_kses($breadcrumbs, 'post') . '</div>';
    31833194
    31843195                } elseif (function_exists('bcn_display')) {
     
    33423353<?php
    33433354        printf(
    3344             __('This plugin requires the default WordPress theme Twenty Twenty to be active or live previewed in order to function. Your theme "%s" is not compatible.', 'options-for-twenty-twenty'),
    3345             get_template()
     3355/* translators: active theme slug */
     3356            esc_html(__('This plugin requires the default WordPress theme Twenty Twenty to be active or live previewed in order to function. Your theme "%s" is not compatible.', 'options-for-twenty-twenty')),
     3357            esc_html(get_template())
    33463358        );
    33473359?>
    33483360
    3349 <a href="<?php echo add_query_arg('search', 'twentytwenty', admin_url('theme-install.php')); ?>" title="<?php esc_attr_e('Twenty Twenty', 'options-for-twenty-twenty'); ?>"><?php
     3361<a href="<?php echo esc_url(add_query_arg('search', 'twentytwenty', admin_url('theme-install.php'))); ?>" title="<?php esc_attr_e('Twenty Twenty', 'options-for-twenty-twenty'); ?>"><?php
    33503362        esc_html_e('Please install and activate or live preview the Twenty Twenty theme (or a child theme thereof)', 'options-for-twenty-twenty');
    33513363?></a>.</p>
  • options-for-twenty-twenty/tags/1.6.5/readme.txt

    r3412271 r3421200  
    66Tested up to: 6.9
    77Requires PHP: 5.6
    8 Stable tag: 1.6.4
     8Stable tag: 1.6.5
    99License: GPLv2 or later
    1010License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    159159== Changelog ==
    160160
     161= 1.6.5 =
     162* General housekeeping preparing for "Plugin Check" code review
     163
    161164= 1.6.4 =
    162165* Remove Customizer CSS due to incompatible change introduced in WordPress v6.7
     
    385388== Upgrade Notice ==
    386389
    387 = 1.6.4 =
    388 * Remove Customizer CSS due to incompatible change introduced in WordPress v6.7
     390= 1.6.5 =
     391* General housekeeping preparing for "Plugin Check" code review
  • options-for-twenty-twenty/trunk/includes/class-oftt-common.php

    r2986666 r3421200  
    11<?php
    22/*
    3  * Version: 1.3.9
     3 * Version: 1.4.3
    44 */
    55
     
    4343        public static function plugin_text_domain() {
    4444
    45             return self::$plugin_text_domain;
     45            return 'options-for-twenty-twenty';
    4646
    4747        }
     
    6161        public static function support_url() {
    6262
    63             return 'https://wordpress.org/support/plugin/' . self::$plugin_text_domain . '/';
     63            return 'https://wordpress.org/support/plugin/' . 'options-for-twenty-twenty' . '/';
    6464
    6565        }
     
    6767        public static function control_upgrade_text() {
    6868
    69             $upgrade_text = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name)) . '">' . sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name) . '</a>';
     69/* translators: name of the plugin */
     70            $upgrade_text = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)) . '">' . sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name) . '</a>';
    7071
    7172            if (!class_exists(self::$plugin_premium_class) || !get_option(self::$plugin_prefix . '_purchased')) {
     
    7374                if (!class_exists(self::$plugin_premium_class)) {
    7475
    75                     $upgrade_text .= sprintf(wp_kses(__(' or <a href="%s" title="Download Free Trial">trial it for 7 days</a>', self::$plugin_text_domain), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::premium_link()));
     76/* translators: link to the premium upgrade */
     77                    $upgrade_text .= sprintf(wp_kses(__(' or <a href="%s" title="Download Free Trial">trial it for 7 days</a>', 'options-for-twenty-twenty'), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::premium_link()));
    7678
    7779                }
     
    8587        public static function control_section_description() {
    8688
    87             $default_description = sprintf(wp_kses(__('If you have any requests for new features, please <a href="%s" title="Support Forum">let us know in the support forum</a>.', self::$plugin_text_domain), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::support_url()));
     89/* translators: link to the plugin's support forum */
     90            $default_description = sprintf(wp_kses(__('If you have any requests for new features, please <a href="%s" title="Support Forum">let us know in the support forum</a>.', 'options-for-twenty-twenty'), array('a' => array('href' => array(), 'title' => array()))), esc_url(self::support_url()));
    8891
    8992            if (self::$plugin_premium_class) {
     
    9598                    if (!class_exists(self::$plugin_premium_class)) {
    9699
    97                         $section_description = '<strong>' . __('For even more options', self::$plugin_text_domain) . '</strong>' . ' ' . $upgrade_text;
     100                        $section_description = '<strong>' . __('For even more options', 'options-for-twenty-twenty') . '</strong>' . ' ' . $upgrade_text;
    98101
    99102                    } else {
    100103
    101                         $section_description = '<strong>' . __('To keep using premium options', self::$plugin_text_domain) . '</strong>' . ' ' . $upgrade_text;
     104                        $section_description = '<strong>' . __('To keep using premium options', 'options-for-twenty-twenty') . '</strong>' . ' ' . $upgrade_text;
    102105
    103106                    }
     
    119122                $section_description .= ' ' . sprintf(
    120123                    wp_kses(
     124/* translators: link to plugin install page */
    121125                        __(
    122126                            '<strong>To reset this section of options to default settings</strong> without affecting other sections in the customizer, install <a href="%s" title="Reset Customizer">Reset Customizer</a>.',
    123                             self::$plugin_text_domain
     127                            'options-for-twenty-twenty'
    124128                        ),
    125129                        array('strong' => array(), 'a' => array('href' => array(), 'title' => array()))
     
    145149        public static function control_setting_upgrade_nag() {
    146150
    147             $upgrade_nag = self::control_upgrade_text() . __(' to use this option.', self::$plugin_text_domain);
     151            $upgrade_nag = self::control_upgrade_text() . __(' to use this option.', 'options-for-twenty-twenty');
    148152
    149153            return $upgrade_nag;
     
    234238
    235239                $generated_css = sprintf('%s { %s: %s; }', $selector, $style, $prefix.$mod.$postfix);
    236                 echo $generated_css;
     240
     241// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
     242                echo wp_strip_all_tags($generated_css);
    237243
    238244            } elseif ($mod) {
    239245
    240246                $generated_css = sprintf('%s { %s:%s; }', $selector, $style, $prefix.$value.$postfix);
    241                 echo $generated_css;
     247
     248// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
     249                echo wp_strip_all_tags($generated_css);
    242250
    243251            }
     
    249257            if (self::$plugin_premium_class) {
    250258
    251                 return add_query_arg('url', (isset($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'], 'https://webd.uk/product/' . self::$plugin_text_domain . '-upgrade/');
    252 
     259                if (isset($_SERVER['HTTP_HOST'])) {
     260
     261                    return add_query_arg('url', (isset($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . filter_var(wp_unslash($_SERVER['HTTP_HOST'], FILTER_SANITIZE_URL)), 'https://webd.uk/product/' . 'options-for-twenty-twenty' . '-upgrade/');
     262
     263                } else {
     264
     265                    return 'https://webd.uk/product/' . 'options-for-twenty-twenty' . '-upgrade/';
     266
     267                }
    253268
    254269            } else {
     
    276291            $settings_links = array();
    277292
    278             $settings_links[] = '<a href="' . esc_url($settings_link) . '" title="' . esc_attr(__('Settings', self::$plugin_text_domain)) . '">' . __('Settings', self::$plugin_text_domain) . '</a>';
     293            $settings_links[] = '<a href="' . esc_url($settings_link) . '" title="' . esc_attr(__('Settings', 'options-for-twenty-twenty')) . '">' . __('Settings', 'options-for-twenty-twenty') . '</a>';
    279294
    280295            if (!get_option(self::$plugin_prefix . '_purchased')) {
     
    284299                    if (self::$plugin_upgrade) {
    285300
    286                         $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s Premium', self::$plugin_text_domain), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', self::$plugin_text_domain) . '</a>';
     301/* translators: name of the plugin */
     302                        $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', 'options-for-twenty-twenty') . '</a>';
    287303
    288304                    } else {
    289305
    290                         $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s', self::$plugin_text_domain), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', self::$plugin_text_domain) . '</a>';
     306/* translators: name of the plugin */
     307                        $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr(sprintf(__('Buy %s', 'options-for-twenty-twenty'), self::$plugin_name)) . '" style="color: orange; font-weight: bold;">' . __('Buy Now', 'options-for-twenty-twenty') . '</a>';
    291308
    292309                    }
     
    294311                } else {
    295312
    296                     $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr((self::$plugin_premium_class ? sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name) : sprintf(__('Contribute to %s', self::$plugin_text_domain), self::$plugin_name))) . '" style="color: orange; font-weight: bold;">' . (self::$plugin_premium_class ? __('Upgrade', self::$plugin_text_domain) : __('Support Us', self::$plugin_text_domain)) . '</a>';
     313/* translators: name of the plugin */
     314                    $settings_links[] = '<a href="' . esc_url(self::upgrade_link()) . '" title="' . esc_attr((self::$plugin_premium_class ? sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name) : sprintf(__('Contribute to %s', 'options-for-twenty-twenty'), self::$plugin_name))) . '" style="color: orange; font-weight: bold;">' . (self::$plugin_premium_class ? __('Upgrade', 'options-for-twenty-twenty') : __('Support Us', 'options-for-twenty-twenty')) . '</a>';
    297315
    298316                }
     
    300318                if ($premium) {
    301319
    302                     $settings_links[] = '<a href="' . wp_nonce_url('?activate-' . self::$plugin_prefix . '=true', self::$plugin_prefix . '_activate') . '" id="' . self::$plugin_prefix . '_activate_upgrade" title="' . esc_attr(__('Activate Purchase', self::$plugin_text_domain)) . '" onclick="jQuery(this).append(&#39; <img src=&#34;/wp-admin/images/loading.gif&#34; style=&#34;float: none; width: auto; height: auto;&#34; />&#39;); setTimeout(function(){document.getElementById(\'' . self::$plugin_prefix . '_activate_upgrade\').removeAttribute(\'href\');},1); return true;">' . __('Activate Purchase', self::$plugin_text_domain) . '</a>';
    303 
    304                 } elseif (self::$plugin_trial && !is_plugin_active(self::$plugin_text_domain . '-premium/' . self::$plugin_text_domain . '-premium.php')) {
    305 
    306                     $settings_links[] = '<a href="' . esc_url(self::premium_link()) . '" title="' . esc_attr(sprintf(__('Trial %s Premium', self::$plugin_text_domain), self::$plugin_name)) . ' for 7 days">' . __('Download Trial', self::$plugin_text_domain) . '</a>';
     320                    $settings_links[] = '<a href="' . wp_nonce_url('?activate-' . self::$plugin_prefix . '=true', self::$plugin_prefix . '_activate') . '" id="' . self::$plugin_prefix . '_activate_upgrade" title="' . esc_attr(__('Activate Purchase', 'options-for-twenty-twenty')) . '" onclick="jQuery(this).append(&#39; <img src=&#34;/wp-admin/images/loading.gif&#34; style=&#34;float: none; width: auto; height: auto;&#34; />&#39;); setTimeout(function(){document.getElementById(\'' . self::$plugin_prefix . '_activate_upgrade\').removeAttribute(\'href\');},1); return true;">' . __('Activate Purchase', 'options-for-twenty-twenty') . '</a>';
     321
     322                } elseif (self::$plugin_trial && !is_plugin_active('options-for-twenty-twenty' . '-premium/' . 'options-for-twenty-twenty' . '-premium.php')) {
     323
     324/* translators: name of the plugin */
     325                    $settings_links[] = '<a href="' . esc_url(self::premium_link()) . '" title="' . esc_attr(sprintf(__('Trial %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)) . ' for 7 days">' . __('Download Trial', 'options-for-twenty-twenty') . '</a>';
    307326
    308327                }
     
    310329            } elseif ($premium) {
    311330
    312                 $settings_links[] = '<strong style="color: green; display: inline;">' . __('Purchase Confirmed', self::$plugin_text_domain) . '</strong>';
     331                $settings_links[] = '<strong style="color: green; display: inline;">' . __('Purchase Confirmed', 'options-for-twenty-twenty') . '</strong>';
    313332
    314333            }
     
    320339        public static function plugin_row_meta($plugin_meta, $plugin_file, $plugin_data, $status) {
    321340
    322             if ($plugin_file === self::$plugin_text_domain . '/' . self::$plugin_text_domain . '.php') {
    323 
    324                 $plugin_meta[] = '<a href="' . esc_url(self::support_url()) . '" title="' . __('Problems? We are here to help!', self::$plugin_text_domain) . '" style="color: orange; font-weight: bold;">' . __('Need help?', self::$plugin_text_domain) . '</a>';
    325                 $plugin_meta[] = '<a href="https://wordpress.org/support/plugin/' . self::$plugin_text_domain . '/reviews/#new-post" title="' . esc_attr(sprintf(__('If you like %s, please leave a review!', self::$plugin_text_domain), self::$plugin_name)) . '">' . __('Review plugin', self::$plugin_text_domain) . '</a>';
     341            if ($plugin_file === 'options-for-twenty-twenty' . '/' . 'options-for-twenty-twenty' . '.php') {
     342
     343                $plugin_meta[] = '<a href="' . esc_url(self::support_url()) . '" title="' . __('Problems? We are here to help!', 'options-for-twenty-twenty') . '" style="color: orange; font-weight: bold;">' . __('Need help?', 'options-for-twenty-twenty') . '</a>';
     344/* translators: name of the plugin */
     345                $plugin_meta[] = '<a href="https://wordpress.org/support/plugin/' . 'options-for-twenty-twenty' . '/reviews/#new-post" title="' . esc_attr(sprintf(__('If you like %s, please leave a review!', 'options-for-twenty-twenty'), self::$plugin_name)) . '">' . __('Review plugin', 'options-for-twenty-twenty') . '</a>';
    326346
    327347            }
     
    353373            if (self::$plugin_premium_class) {
    354374
    355                 if (get_option(self::$plugin_prefix . '_purchased') && !class_exists(self::$plugin_premium_class) && get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()) {
    356 
    357 ?>
    358 
    359 <div class="notice notice-error is-dismissible <?php echo self::$plugin_prefix; ?>-notice">
    360 
    361 <p><strong><?php echo self::$plugin_name; ?></strong><br />
    362 <?php esc_html_e('In order to use the premium features, you need to install the premium version of the plugin ...', self::$plugin_text_domain); ?></p>
    363 
    364 <p><a href="<?php echo esc_url(self::premium_link()); ?>" title="<?php echo esc_attr(sprintf(__('Download %s Premium', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Download %s Premium', self::$plugin_text_domain), self::$plugin_name); ?></a></p>
     375                if (
     376                    get_option(self::$plugin_prefix . '_purchased') &&
     377                    !class_exists(self::$plugin_premium_class) &&
     378                    get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()
     379                ) {
     380
     381?>
     382
     383<div class="notice notice-error is-dismissible <?php echo esc_html(self::$plugin_prefix); ?>-notice">
     384
     385<p><strong><?php echo esc_html(self::$plugin_name); ?></strong><br />
     386<?php esc_html_e('In order to use the premium features, you need to install the premium version of the plugin ...', 'options-for-twenty-twenty'); ?></p>
     387
     388<p><a href="<?php
     389/* translators: name of the plugin */
     390echo esc_url(self::premium_link()); ?>" title="<?php echo esc_attr(sprintf(__('Download %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)); ?>" class="button-primary"><?php printf(esc_html(__('Download %s Premium', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></a></p>
    365391
    366392</div>
    367393
    368394<script type="text/javascript">
    369     jQuery(document).on('click', '.<?php echo self::$plugin_prefix; ?>-notice .notice-dismiss', function() {
     395    jQuery(document).on('click', '.<?php echo esc_attr(self::$plugin_prefix); ?>-notice .notice-dismiss', function() {
    370396        jQuery.ajax({
    371397            url: ajaxurl,
    372398            data: {
    373                 action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
    374                 _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     399                action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
     400                _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    375401            }
    376402        });
     
    380406<?php
    381407
    382                 } elseif (!class_exists(self::$plugin_premium_class) && time() > (strtotime('+1 hour', filectime(__DIR__))) && get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()) {
    383 
    384 ?>
    385 
    386 <div class="notice notice-info is-dismissible <?php echo self::$plugin_prefix; ?>-notice">
    387 
    388 <p><strong><?php printf(__('Thank you for using %s plugin', self::$plugin_text_domain), self::$plugin_name); ?></strong><br />
     408                } elseif (
     409                    !class_exists(self::$plugin_premium_class) &&
     410                    time() > (strtotime('+1 hour', filectime(__DIR__))) &&
     411                    get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version()
     412                ) {
     413
     414?>
     415
     416<div class="notice notice-info is-dismissible <?php echo esc_attr(self::$plugin_prefix); ?>-notice">
     417
     418    <p style="font-size:15px;"><strong><?php
     419/* translators: name of the plugin */
     420printf(esc_html(__('Thank you for using %s plugin', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></strong></p>
    389421<?php
    390422
    391423                    if (self::$plugin_trial == true) {
    392424
    393                         _e('Would you like to try even more features? Download your 7 day free trial now!', self::$plugin_text_domain);
     425?>
     426
     427    <p><?php echo esc_html(__('Would you like to try even more features? Download your 7 day free trial now!', 'options-for-twenty-twenty')); ?></p>
     428<?php
    394429
    395430                    } else {
    396431
    397                         echo sprintf(__('Upgrade now to %s Premium to enable more options and features and contribute to the further development of this plugin.', self::$plugin_text_domain), self::$plugin_name);
     432?>
     433
     434    <p>
     435        <?php
     436/* translators: name of the plugin */
     437                        echo esc_html(sprintf(__('Upgrade now to %s Premium to enable more options and features and contribute to the further development of this plugin.', 'options-for-twenty-twenty'), self::$plugin_name)); ?>
     438    </p>
     439<?php
    398440
    399441                    }
    400442
    401 ?></p>
    402 
    403 <p><?php
     443?>
     444
     445    <p><?php
    404446
    405447                    if (self::$plugin_trial == true) {
     
    407449?>
    408450
    409 <a href="<?php echo esc_url(self::premium_link()); ?>" title="<?php echo esc_attr(sprintf(__('Try %s Premium', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Trial %s Premium for 7 days', self::$plugin_text_domain), self::$plugin_name); ?></a>
    410 
     451        <a href="<?php echo esc_url(self::premium_link()); ?>"
     452           title="<?php
     453/* translators: name of the plugin */
     454echo esc_attr(sprintf(__('Try %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)); ?>"
     455           class="button-secondary">
     456           <?php echo esc_html(__('Try premium plugin free for 7 days', 'options-for-twenty-twenty')); ?>
     457        </a>
    411458<?php
    412459
     
    414461
    415462?>
    416 <a href="<?php echo esc_url(self::upgrade_link()); ?>" title="<?php echo esc_attr(sprintf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Upgrade now to %s Premium', self::$plugin_text_domain), self::$plugin_name); ?></a></p>
     463
     464        <a href="<?php echo esc_url(self::upgrade_link()); ?>"
     465           title="<?php
     466/* translators: name of the plugin */
     467echo esc_attr(sprintf(__('Upgrade now to %s Premium', 'options-for-twenty-twenty'), self::$plugin_name)); ?>"
     468           class="button-primary">
     469           <?php echo esc_html(__('Upgrade now to premium plugin', 'options-for-twenty-twenty')); ?>
     470        </a>
     471
     472    </p>
     473
     474    <hr style="margin:12px 0;">
     475
     476    <p>
     477        <strong>✨ Need help with your WordPress site?</strong>
     478        🚀 Slow, want new features, or need a glow-up?
     479        <a href="https://webd.uk/services/?utm_campaign=notice&utm_term=options-for-twenty-twenty" class="button-secondary" style="margin-left:6px; vertical-align: middle;">Explore our services</a>
     480    </p>
    417481
    418482</div>
    419483
    420484<script type="text/javascript">
    421     jQuery(document).on('click', '.<?php echo self::$plugin_prefix; ?>-notice .notice-dismiss', function() {
     485    jQuery(document).on('click', '.<?php echo esc_attr(self::$plugin_prefix); ?>-notice .notice-dismiss', function() {
    422486        jQuery.ajax({
    423487            url: ajaxurl,
    424488            data: {
    425                 action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
    426                 _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     489                action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
     490                _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    427491            }
    428492        });
     
    434498                }
    435499
    436             } elseif (time() > (strtotime('+1 hour', filectime(__DIR__))) && get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version() && !get_option(self::$plugin_prefix . '_donated')) {
    437 
    438 ?>
    439 
    440 <div class="notice notice-info is-dismissible <?php echo self::$plugin_prefix; ?>-notice">
    441 <p><strong><?php printf(__('Thank you for using %s plugin', self::$plugin_text_domain), self::$plugin_name); ?></strong></p>
    442 <?php
    443 
     500            } elseif (
     501                time() > (strtotime('+1 hour', filectime(__DIR__))) &&
     502                get_user_meta(get_current_user_id(), self::$plugin_prefix . '-notice-dismissed', true) != self::plugin_version() &&
     503                !get_option(self::$plugin_prefix . '_donated')
     504            ) {
     505
     506?>
     507
     508<div class="notice notice-info is-dismissible <?php echo esc_attr(self::$plugin_prefix); ?>-notice">
     509<p><strong><?php
     510/* translators: name of the plugin */
     511printf(esc_html(__('Thank you for using %s plugin', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></strong></p>
     512<?php
     513
     514// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound
    444515                do_action(self::$plugin_prefix . '_admin_notice_donate');
    445516
    446517?>
    447 <p><?php esc_html_e('Funding plugins like this one with small financial contributions is essential to pay the developers to continue to do what they do. Please take a moment to give a small amount ...', self::$plugin_text_domain); ?></p>
    448 <p><a href="<?php echo esc_url(self::upgrade_link()); ?>" title="<?php echo esc_attr(sprintf(__('Contribute to %s', self::$plugin_text_domain), self::$plugin_name)); ?>" class="button-primary"><?php printf(__('Contribute to %s', self::$plugin_text_domain), self::$plugin_name); ?></a> <a href="#" id="<?php echo self::$plugin_prefix; ?>-already-paid" title="<?php echo esc_attr(__('Aleady Contributed!', self::$plugin_text_domain)); ?>" class="button-primary"><?php esc_html_e('Aleady Contributed!', self::$plugin_text_domain); ?></a></p>
     518<p><?php esc_html_e('Funding plugins like this one with small financial contributions is essential to pay the developers to continue to do what they do. Please take a moment to give a small amount ...', 'options-for-twenty-twenty'); ?></p>
     519<p><a href="<?php echo esc_url(self::upgrade_link()); ?>" title="<?php
     520/* translators: name of the plugin */
     521echo esc_attr(sprintf(__('Contribute to %s', 'options-for-twenty-twenty'), self::$plugin_name)); ?>" class="button-primary"><?php printf(esc_html(__('Contribute to %s', 'options-for-twenty-twenty')), esc_html(self::$plugin_name)); ?></a> <a href="#" id="<?php echo esc_attr(self::$plugin_prefix); ?>-already-paid" title="<?php echo esc_attr(__('Aleady Contributed!', 'options-for-twenty-twenty')); ?>" class="button-primary"><?php esc_html_e('Aleady Contributed!', 'options-for-twenty-twenty'); ?></a></p>
    449522</div>
    450523
    451524<script type="text/javascript">
    452     jQuery(document).on('click', '#<?php echo self::$plugin_prefix; ?>-already-paid', function() {
    453         if (confirm(<?php echo json_encode(__('Have you really? Press "Cancel" if you forgot to 🙂', self::$plugin_text_domain)); ?>)) {
    454             alert(<?php echo json_encode(__('Thank you!', self::$plugin_text_domain)); ?>);
    455             jQuery('.<?php echo self::$plugin_prefix; ?>-notice').fadeTo(100, 0, function() {
    456                 jQuery('.<?php echo self::$plugin_prefix; ?>-notice').slideUp(100, function() {
    457                     jQuery('.<?php echo self::$plugin_prefix; ?>-notice').remove()
     525    jQuery(document).on('click', '#<?php echo esc_attr(self::$plugin_prefix); ?>-already-paid', function() {
     526        if (confirm(<?php echo json_encode(__('Have you really? Press "Cancel" if you forgot to 🙂', 'options-for-twenty-twenty')); ?>)) {
     527            alert(<?php echo json_encode(__('Thank you!', 'options-for-twenty-twenty')); ?>);
     528            jQuery('.<?php echo esc_attr(self::$plugin_prefix); ?>-notice').fadeTo(100, 0, function() {
     529                jQuery('.<?php echo esc_attr(self::$plugin_prefix); ?>-notice').slideUp(100, function() {
     530                    jQuery('.<?php echo esc_attr(self::$plugin_prefix); ?>-notice').remove()
    458531                });
    459532            });
     
    461534                url: ajaxurl,
    462535                data: {
    463                     action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
     536                    action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
    464537                    donated: 'true',
    465                     _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     538                    _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    466539                }
    467540            });
    468541        } else {
    469             window.location.assign('<?php echo self::upgrade_link(); ?>');
     542            window.location.assign('<?php echo esc_url(self::upgrade_link()); ?>');
    470543        }
    471544    });
    472     jQuery(document).on('click', '.<?php echo self::$plugin_prefix; ?>-notice .notice-dismiss', function() {
     545    jQuery(document).on('click', '.<?php echo esc_attr(self::$plugin_prefix); ?>-notice .notice-dismiss', function() {
    473546        jQuery.ajax({
    474547            url: ajaxurl,
    475548            data: {
    476                 action: 'dismiss_<?php echo self::$plugin_prefix; ?>_notice_handler',
    477                 _ajax_nonce: '<?php echo wp_create_nonce(self::$plugin_prefix . '-ajax-nonce'); ?>'
     549                action: 'dismiss_<?php echo esc_attr(self::$plugin_prefix); ?>_notice_handler',
     550                _ajax_nonce: '<?php echo esc_attr(wp_create_nonce(self::$plugin_prefix . '-ajax-nonce')); ?>'
    478551            }
    479552        });
     
    509582                    is_admin() &&
    510583                    $pagenow === 'customize.php' &&
    511                     isset($_GET['theme']) &&
    512                     !in_array($_GET['theme'], $themes, true)
     584                    isset($_GET['theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     585                    !in_array($_GET['theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    513586                ) && !(
    514587                    !is_admin() &&
    515588                    $pagenow === 'index.php' &&
    516                     isset($_GET['customize_theme']) &&
    517                     isset($_GET['customize_changeset_uuid']) &&
    518                     !in_array($_GET['customize_theme'], $themes, true)
     589                    isset($_GET['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     590                    isset($_GET['customize_changeset_uuid']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     591                    !in_array($_GET['customize_theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    519592                )
    520593            ) {
     
    530603                    is_admin() &&
    531604                    $pagenow === 'customize.php' &&
    532                     isset($_GET['theme']) &&
    533                     in_array($_GET['theme'], $themes, true)
     605                    isset($_GET['theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     606                    in_array($_GET['theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    534607                ) || (
    535608                    !is_admin() &&
    536609                    $pagenow === 'index.php' &&
    537                     isset($_GET['customize_theme']) &&
    538                     isset($_GET['customize_changeset_uuid']) &&
    539                     in_array($_GET['customize_theme'], $themes, true)
     610                    isset($_GET['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     611                    isset($_GET['customize_changeset_uuid']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     612                    in_array($_GET['customize_theme'], $themes, true) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    540613                ))
    541614            ) {
     
    549622                    !is_admin() &&
    550623                    $pagenow === 'index.php' &&
    551                     isset($_GET['customize_theme']) &&
    552                     isset($_GET['customize_changeset_uuid'])
     624                    isset($_GET['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     625                    isset($_GET['customize_changeset_uuid']) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    553626               
    554627            ) {
    555628
    556                 $child = wp_get_theme($_GET['customize_theme']);
     629                $child = wp_get_theme(sanitize_file_name(wp_unslash($_GET['customize_theme']))); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    557630
    558631                if (isset($child->template) && in_array($child->template, $themes, true)) {
     
    568641                is_admin() &&
    569642                ($pagenow === 'customize.php' || $pagenow === 'admin-ajax.php') &&
    570                 isset($_GET['theme']) || (isset($_POST['customize_theme']) && isset($_POST['customize_changeset_uuid']))
     643                (
     644                    isset($_GET['theme']) || // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     645                    (
     646                        isset($_POST['customize_theme']) && // phpcs:ignore WordPress.Security.NonceVerification.Missing
     647                        isset($_POST['customize_changeset_uuid']) // phpcs:ignore WordPress.Security.NonceVerification.Missing
     648                    )
     649                )
    571650            ) {
    572651
    573                 if (isset($_GET['theme'])) {
    574 
    575                     $child = wp_get_theme($_GET['theme']);
     652                if (isset($_GET['theme'])) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
     653
     654                    $child = wp_get_theme(sanitize_file_name(wp_unslash($_GET['theme']))); // phpcs:ignore WordPress.Security.NonceVerification.Recommended
    576655
    577656                } else {
    578657
    579                     $child = wp_get_theme($_POST['customize_theme']);
     658                    $child = wp_get_theme(sanitize_file_name(wp_unslash($_POST['customize_theme']))); // phpcs:ignore WordPress.Security.NonceVerification.Missing
    580659
    581660                }
     
    599678if (!function_exists('webd_customize_register')) {
    600679
     680// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedFunctionFound
    601681    function webd_customize_register($wp_customize) {
    602682
    603683        if (!class_exists('webd_Customize_Control_Checkbox_Multiple')) {
    604684
     685// phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedClassFound
    605686            class webd_Customize_Control_Checkbox_Multiple extends WP_Customize_Control {
    606687
     
    622703
    623704?>
    624 <span class="description customize-control-description"><?php echo $this->description; ?></span>
     705<span class="description customize-control-description"><?php echo esc_html($this->description); ?></span>
    625706<?php
    626707
     
    647728?>
    648729        </ul>
    649         <input type="hidden" id="_customize-input-<?php echo $this->id; ?>" <?php $this->link(); ?> value="<?php echo esc_attr(implode(',', $multi_values)); ?>" />
     730        <input type="hidden" id="_customize-input-<?php echo esc_attr($this->id); ?>" <?php $this->link(); ?> value="<?php echo esc_attr(implode(',', $multi_values)); ?>" />
    650731<?php
    651732
  • options-for-twenty-twenty/trunk/options-for-twenty-twenty.php

    r3180354 r3421200  
    22/*
    33 * Plugin Name: Options for Twenty Twenty
    4  * Version: 1.6.4
     4 * Version: 1.6.5
    55 * Plugin URI: https://webd.uk/product/options-for-twenty-twenty-upgrade/
    66 * Description: Adds powerful customizer options to modify all aspects of the default WordPress theme Twenty Twenty
    77 * Author: Webd Ltd
    88 * Author URI: https://webd.uk
     9 * License: GPLv2 or later
     10 * License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
    911 * Text Domain: options-for-twenty-twenty
    1012 */
     
    2224    class options_for_twenty_twenty_class {
    2325
    24         public static $version = '1.6.4';
     26        public static $version = '1.6.5';
    2527
    2628        function __construct() {
     
    592594            ));
    593595            $wp_customize->add_control('toggle_use_dashicon', array(
    594                 'label'         => __('Use Hamburger Dashicon', 'sidemenu'),
    595                 'description'   => __('Use a hamburger Dashicon on the button used to open the Expanded / Mobile menu.', 'sidemenu'),
     596                'label'         => __('Use Hamburger Dashicon', 'options-for-twenty-twenty'),
     597                'description'   => __('Use a hamburger Dashicon on the button used to open the Expanded / Mobile menu.', 'options-for-twenty-twenty'),
    596598                'section'       => 'oftt_navigation',
    597599                'settings'      => 'toggle_use_dashicon',
     
    11861188            ));
    11871189            $wp_customize->add_control('inject_breadcrumbs', array(
    1188                 'label'         => __('Inject Breadcrumbs', 'options-for-twenty-seventeen'),
    1189                 'description'   => sprintf(wp_kses(__('Inject <a href="%s">Yoast SEO</a> or <a href="%s">Breadcrumb NavXT</a> breadcrumbs above page content.', 'options-for-twenty-twenty'), array('a' => array('href' => array()))), esc_url(admin_url('plugin-install.php?s=wordpress-seo&tab=search&type=term')), esc_url(admin_url('plugin-install.php?s=breadcrumb-navxt&tab=search&type=term'))),
     1190                'label'         => __('Inject Breadcrumbs', 'options-for-twenty-twenty'),
     1191/* translators: links to plugin installer */
     1192                'description'   => wp_kses(sprintf(__('Inject <a href="%1$s">Yoast SEO</a> or <a href="%2$s">Breadcrumb NavXT</a> breadcrumbs above page content.', 'options-for-twenty-twenty'), esc_url(admin_url('plugin-install.php?s=wordpress-seo&tab=search&type=term')), esc_url(admin_url('plugin-install.php?s=breadcrumb-navxt&tab=search&type=term'))), array('a' => array('href' => array()))),
    11901193                'section'       => 'oftt_content',
    11911194                'settings'      => 'inject_breadcrumbs',
     
    18241827
    18251828            $control_label = __('Custom Toggle Dashicon', 'options-for-twenty-twenty');
    1826             $control_description = sprintf(wp_kses(__('Choose your own <a href="%s">dashicon</a> for the button that opens the expanded / mobile menu.', 'options-for-twenty-twenty'), array('a' => array('href' => array()))), esc_url('https://developer.wordpress.org/resource/dashicons/'));
     1829/* translators: link to dashicon documentation */
     1830            $control_description = wp_kses(sprintf(__('Choose your own <a href="%s">dashicon</a> for the button that opens the expanded / mobile menu.', 'options-for-twenty-twenty'), esc_url('https://developer.wordpress.org/resource/dashicons/')), array('a' => array('href' => array())));
    18271831            ofttCommon::add_hidden_control($wp_customize, 'nav_toggle_dashicon', 'oftt_navigation', $control_label, $control_description . ' ' . $upgrade_nag);
    18281832
     
    18841888
    18851889            $control_label = __('Background Slider', 'options-for-twenty-twenty');
    1886             $control_description = sprintf(
    1887                 wp_kses(__('Places a <a href="%s">MetaSlider</a> slider in the background of the Cover Template.', 'options-for-twenty-twenty'), array('a' => array('href' => array()))),
    1888                 esc_url(add_query_arg( array(
    1889                     's' => 'ml-slider',
    1890                     'tab' => 'search',
    1891                     'type' => 'term'
    1892                 ), admin_url('plugin-install.php')))
     1890            $control_description = wp_kses(
     1891                sprintf(
     1892/* translators: link to plugin installer */
     1893                    __('Places a <a href="%s">MetaSlider</a> slider in the background of the Cover Template.', 'options-for-twenty-twenty'),
     1894                    esc_url(add_query_arg(
     1895                        array(
     1896                            's' => 'ml-slider',
     1897                            'tab' => 'search',
     1898                            'type' => 'term'
     1899                        ),
     1900                        admin_url('plugin-install.php')
     1901                    ))
     1902                ),
     1903                array('a' => array('href' => array()))
    18931904            );
    18941905            ofttCommon::add_hidden_control($wp_customize, 'slider_cover', 'cover_template_options', $control_label, $control_description . ' ' . $upgrade_nag);
     
    19831994        right: 0;
    19841995        background-image: inherit;
    1985         background-size: <?php echo $size; ?>;
     1996        background-size: <?php echo wp_kses($size, 'strip'); ?>;
    19861997        background-position: inherit;
    19871998        background-repeat: inherit;
     
    20162027?>
    20172028#site-header, #breadcrumbs {
    2018     max-width: <?php echo $mod; ?>;
     2029    max-width: <?php echo wp_kses($mod, 'strip'); ?>;
    20192030    margin: 0 auto;
    20202031}
     
    20462057?>
    20472058.site-title {
    2048     font-size: <?php echo ($mod * 0.0875); ?>rem;
     2059    font-size: <?php echo wp_kses(($mod * 0.0875), 'strip'); ?>rem;
    20492060}
    20502061@media (min-width: 700px) {
    20512062    .site-title {
    2052         font-size: <?php echo ($mod / 10); ?>rem;
     2063        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    20532064    }
    20542065}
     
    20682079?>
    20692080.modal-menu > li > a, .modal-menu > li > .ancestor-wrapper > a {
    2070     font-size: <?php echo ($mod * 0.2 / 2.4); ?>rem;
     2081    font-size: <?php echo wp_kses(($mod * 0.2 / 2.4), 'strip'); ?>rem;
    20712082}
    20722083@media (min-width: 700px) {
    20732084    .modal-menu > li > a, .modal-menu > li > .ancestor-wrapper > a {
    2074         font-size: <?php echo ($mod / 10); ?>rem;
     2085        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    20752086    }
    20762087}
     
    21542165
    21552166?>
    2156 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap,
    2157 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner {
     2167.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap,
     2168.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner {
    21582169    display: flex;
    21592170    flex-wrap: wrap;
    21602171    padding: 0;
    21612172}
    2162 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap {
     2173.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap {
    21632174    width: 100%;
    21642175}
    2165 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>header {
     2176.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>header {
    21662177    flex: 0 1 auto;
    21672178    width: 100%;
    21682179}
    2169 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article,
    2170 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
     2180.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article,
     2181.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
    21712182    display: flex;
    21722183    flex-direction: column;
     
    21762187}
    21772188@media (min-width: 700px) {
    2178     .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article,
    2179     .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
     2189    .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article,
     2190    .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
    21802191        width: 50%;
    21812192    }
    21822193}
    21832194@media (min-width: 1000px) {
    2184     .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article,
    2185     .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
     2195    .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article,
     2196    .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article {
    21862197        width: 25%;
    21872198    }
    21882199}
    2189 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>header, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>header,
    2190 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>header, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header {
     2200.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>header,
     2201.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header {
    21912202    width: 100%;
    21922203    order: 2;
    21932204}
    2194 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>header>.section-inner, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>header>.section-inner,
    2195 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>header>.section-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header>.section-inner {
     2205.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>header>.section-inner,
     2206.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>header>.section-inner {
    21962207    width: auto;
    21972208}
    2198 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article h2.entry-title, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article h2.entry-title,
    2199 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article h2.entry-title, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article h2.entry-title {
     2209.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article h2.entry-title,
     2210.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article h2.entry-title {
    22002211    font-size: 1.2em;
    22012212    padding-top: 0.5em;
    22022213}
    2203 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header::after, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header::after,
    2204 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header::after, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header::after {
     2214.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header::after,
     2215.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header::after {
    22052216    display: block;
    22062217    content: '';
    22072218    padding-bottom: 65%;
    22082219}
    2209 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header,
    2210 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header {
    2211     background-color: <?php echo $accent; ?>;
     2220.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header,
     2221.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header {
     2222    background-color: <?php echo wp_kses($accent, 'strip'); ?>;
    22122223    flex: 1 1 auto;
    22132224    position: relative;
    22142225}
    2215 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header>.section-inner,
    2216 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner {
     2226.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail)>header>.section-inner,
     2227.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail)>header>.section-inner {
    22172228    position: absolute;
    22182229    height: 100%;
     
    22222233    flex-direction: column;
    22232234}
    2224 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title a,
    2225 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a {
     2235.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title a,
     2236.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title a {
    22262237    color: white;
    22272238}
    2228 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title,
    2229 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title {
     2239.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article:not(.has-post-thumbnail) h2.entry-title,
     2240.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article:not(.has-post-thumbnail) h2.entry-title {
    22302241    flex: 0 1 auto;
    22312242    font-size: 2.5em;
    22322243    padding: 0 1rem;
    22332244}
    2234 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article .post-meta-wrapper, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article .post-meta-wrapper,
    2235 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article .post-meta-wrapper, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article .post-meta-wrapper {
     2245.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article .post-meta-wrapper, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article .post-meta-wrapper,
     2246.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article .post-meta-wrapper, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article .post-meta-wrapper {
    22362247    display: none;
    22372248}
    2238 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media,
    2239 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media {
     2249.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media,
     2250.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media {
    22402251    width: 100%;
    22412252    margin: 0;
    22422253    order: 1;
    22432254}
    2244 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media::after, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media::after,
    2245 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media::after, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media::after {
     2255.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media::after,
     2256.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media::after, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media::after {
    22462257    display: block;
    22472258    content: '';
    22482259    padding-bottom: 65%;
    22492260}
    2250 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media-inner, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media-inner,
    2251 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media-inner, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media-inner {
     2261.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media-inner,
     2262.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media-inner, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media-inner {
    22522263    position: static;
    22532264}
    2254 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media .featured-media-inner img, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media .featured-media-inner img,
    2255 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media .featured-media-inner img, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media .featured-media-inner img {
     2265.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media .featured-media-inner img, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media .featured-media-inner img,
     2266.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media .featured-media-inner img, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media .featured-media-inner img {
    22562267    position: absolute;
    22572268    left: 0;
     
    22612272    object-fit: cover;
    22622273}
    2263 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content .featured-media figcaption, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media figcaption,
    2264 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner .featured-media figcaption, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media figcaption {
     2274.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content .featured-media figcaption, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap .featured-media figcaption,
     2275.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner .featured-media figcaption, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner .featured-media figcaption {
    22652276    display: none;
    22662277}
    2267 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>.post-inner.thin, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>article>.post-inner>article>.section-inner,
    2268 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner.thin, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner>article>.section-inner,
    2269 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>.post-inner.thin, .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner>article>.section-inner,
    2270 .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.post-inner.thin, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.section-inner {
     2278.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>article>.post-inner>article>.section-inner,
     2279.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap>article>.post-inner>article>.section-inner,
     2280.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner>article>.section-inner,
     2281.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.post-inner.thin, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner>article>.section-inner {
    22712282    display: none;
    22722283}
    2273 .<?php echo $taxonomy; ?>:not(.template-cover) #site-content hr, .<?php echo $taxonomy; ?>:not(.template-cover) #site-content>.infinite-wrap hr,
    2274 .<?php echo $taxonomy; ?>.template-cover #site-content>article>.post-inner hr, .<?php echo $taxonomy; ?>.template-cover #site-content>.infinite-wrap>article>.post-inner hr {
     2284.<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content hr, .<?php echo wp_kses($taxonomy, 'strip'); ?>:not(.template-cover) #site-content>.infinite-wrap hr,
     2285.<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>article>.post-inner hr, .<?php echo wp_kses($taxonomy, 'strip'); ?>.template-cover #site-content>.infinite-wrap>article>.post-inner hr {
    22752286    display: none;
    22762287}
    2277 .<?php echo $taxonomy; ?>.footer-top-visible:not(.template-cover) .footer-nav-widgets-wrapper {
     2288.<?php echo wp_kses($taxonomy, 'strip'); ?>.footer-top-visible:not(.template-cover) .footer-nav-widgets-wrapper {
    22782289    margin-top: 0;
    22792290}
     
    23192330?>
    23202331.archive-title {
    2321     font-size: <?php echo ($mod * 0.24 / 3.2); ?>rem;
     2332    font-size: <?php echo wp_kses(($mod * 0.24 / 3.2), 'strip'); ?>rem;
    23222333}
    23232334@media (min-width: 700px) {
    23242335    .archive-title {
    2325         font-size: <?php echo ($mod / 10); ?>rem;
     2336        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    23262337    }
    23272338}
     
    24492460?>
    24502461h1.entry-title, h2.entry-title {
    2451     font-size: <?php echo ($mod * 0.36 / 8.4); ?>rem;
     2462    font-size: <?php echo wp_kses(($mod * 0.36 / 8.4), 'strip'); ?>rem;
    24522463}
    24532464@media (min-width: 700px) {
    24542465    h1.entry-title, h2.entry-title {
    2455         font-size: <?php echo ($mod * 0.64 / 8.4); ?>rem;
     2466        font-size: <?php echo wp_kses(($mod * 0.64 / 8.4), 'strip'); ?>rem;
    24562467    }
    24572468}
    24582469@media (min-width: 1220px) {
    24592470    h1.entry-title, h2.entry-title {
    2460         font-size: <?php echo ($mod / 10); ?>rem;
     2471        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    24612472    }
    24622473}
     
    24712482?>
    24722483.archive .post h2.entry-title {
    2473     font-size: <?php echo ($mod * 0.36 / 6.4); ?>rem;
     2484    font-size: <?php echo wp_kses(($mod * 0.36 / 6.4), 'strip'); ?>rem;
    24742485}
    24752486@media (min-width: 700px) {
    24762487    .archive .post h2.entry-title {
    2477         font-size: <?php echo ($mod / 10); ?>rem;
     2488        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    24782489    }
    24792490}
     
    24882499?>
    24892500.page h1.entry-title, h2.entry-title {
    2490     font-size: <?php echo ($mod * 0.36 / 8.4); ?>rem;
     2501    font-size: <?php echo wp_kses(($mod * 0.36 / 8.4), 'strip'); ?>rem;
    24912502}
    24922503@media (min-width: 700px) {
    24932504    .page h1.entry-title, h2.entry-title {
    2494         font-size: <?php echo ($mod * 0.64 / 8.4); ?>rem;
     2505        font-size: <?php echo wp_kses(($mod * 0.64 / 8.4), 'strip'); ?>rem;
    24952506    }
    24962507}
    24972508@media (min-width: 1220px) {
    24982509    .page h1.entry-title, h2.entry-title {
    2499         font-size: <?php echo ($mod / 10); ?>rem;
     2510        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    25002511    }
    25012512}
     
    25142525?>
    25152526.singular .intro-text {
    2516     font-size: <?php echo ($mod * 0.2 / 3.2); ?>rem;
     2527    font-size: <?php echo wp_kses(($mod * 0.2 / 3.2), 'strip'); ?>rem;
    25172528}
    25182529@media (min-width: 700px) {
    25192530    .singular .intro-text {
    2520         font-size: <?php echo ($mod * 0.26 / 3.2); ?>rem;
     2531        font-size: <?php echo wp_kses(($mod * 0.26 / 3.2), 'strip'); ?>rem;
    25212532    }
    25222533}
    25232534@media (min-width: 1000px) {
    25242535    .singular .intro-text {
    2525         font-size: <?php echo ($mod * 0.28 / 3.2); ?>rem;
     2536        font-size: <?php echo wp_kses(($mod * 0.28 / 3.2), 'strip'); ?>rem;
    25262537    }
    25272538}
    25282539@media (min-width: 1220px) {
    25292540    .singular .intro-text {
    2530         font-size: <?php echo ($mod / 10); ?>rem;
     2541        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    25312542    }
    25322543}
     
    25412552?>
    25422553.post-meta-single-top .post-meta {
    2543     justify-content: <?php echo $mod; ?>;
     2554    justify-content: <?php echo wp_kses($mod, 'strip'); ?>;
    25442555   
    25452556}
     
    26712682    }
    26722683    .entry-content > .wp-block-image figure.alignleft {
    2673         margin-left: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2684        margin-left: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    26742685        margin-right: 1em;
    26752686    }
    26762687    .entry-content > .wp-block-image figure.alignright {
    2677         margin-right: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2688        margin-right: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    26782689        margin-left: 1em;
    26792690    }
     
    26882699    }
    26892700    .entry-content > .wp-block-image figure.alignleft {
    2690         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2701        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    26912702        margin-left: 0;
    26922703        margin-right: 1em;
    26932704    }
    26942705    .entry-content > .wp-block-image figure.alignright {
    2695         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2706        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    26962707        margin-right: 0;
    26972708        margin-left: 1em;
     
    27142725    }
    27152726    .entry-content > .wp-block-image figure.alignleft {
    2716         margin-left: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2727        margin-left: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    27172728        margin-right: 1em;
    27182729    }
    27192730    .entry-content > .wp-block-image figure.alignright {
    2720         margin-right: calc(( 100vw - <?php echo $mod; ?> - 8rem ) / -2);
     2731        margin-right: calc(( 100vw - <?php echo wp_kses($mod, 'strip'); ?> - 8rem ) / -2);
    27212732        margin-left: 1em;
    27222733    }
     
    27332744    }
    27342745    .entry-content > .wp-block-image figure.alignleft {
    2735         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2746        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27362747        margin-left: 0;
    27372748        margin-right: 1em;
    27382749    }
    27392750    .entry-content > .wp-block-image figure.alignright {
    2740         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2751        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27412752        margin-right: 0;
    27422753        margin-left: 1em;
     
    27532764    .entry-content > .wp-block-pullquote.alignleft, .entry-content > .wp-block-pullquote.alignright {
    27542765        position: absolute;
    2755         max-width: calc((100% - <?php echo $mod; ?>) / 2 - 6rem);
     2766        max-width: calc((100% - <?php echo wp_kses($mod, 'strip'); ?>) / 2 - 6rem);
    27562767    }
    27572768    .entry-content > .wp-block-pullquote.alignleft {
    2758         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 2rem);
     2769        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 2rem);
    27592770        margin-left: -31rem;
    27602771    }
    27612772    .entry-content > .wp-block-pullquote.alignright {
    2762         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 2rem);
     2773        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 2rem);
    27632774        margin-right: -31rem;
    27642775    }
    27652776    .entry-content > .wp-block-image figure.alignleft, .entry-content > .wp-block-image figure.alignright {
    27662777        position: absolute;
    2767         max-width: calc((100% - <?php echo $mod; ?>) / 2 - 4rem);
     2778        max-width: calc((100% - <?php echo wp_kses($mod, 'strip'); ?>) / 2 - 4rem);
    27682779    }
    27692780    .entry-content > .wp-block-image figure.alignleft {
    2770         right: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2781        right: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27712782        margin-left: -29rem;
    27722783        margin-right: -2rem;
    27732784    }
    27742785    .entry-content > .wp-block-image figure.alignright {
    2775         left: calc((100vw - <?php echo $mod; ?>) / 2 + <?php echo $mod; ?> + 4rem);
     2786        left: calc((100vw - <?php echo wp_kses($mod, 'strip'); ?>) / 2 + <?php echo wp_kses($mod, 'strip'); ?> + 4rem);
    27762787        margin-right: -29rem;
    27772788        margin-left: -2rem;
     
    28022813?>
    28032814.entry-content hr, hr.styled-separator {
    2804     border-top: <?php echo absint($mod); ?>px <?php echo (get_theme_mod('hr_style') ? get_theme_mod('hr_style') : 'solid'); ?> <?php echo (get_theme_mod('hr_color') ? get_theme_mod('hr_color') : '#6d6d6d'); ?>;
     2815    border-top: <?php echo wp_kses(absint($mod), 'strip'); ?>px <?php echo wp_kses((get_theme_mod('hr_style') ? get_theme_mod('hr_style') : 'solid'), 'strip'); ?> <?php echo wp_kses((get_theme_mod('hr_color') ? get_theme_mod('hr_color') : '#6d6d6d'), 'strip'); ?>;
    28052816    position: static;
    28062817}
     
    28302841?>
    28312842.footer-menu {
    2832     font-size: <?php echo ($mod * 0.18 / 2.4); ?>rem;
     2843    font-size: <?php echo wp_kses(($mod * 0.18 / 2.4), 'strip'); ?>rem;
    28332844}
    28342845@media (min-width: 700px) {
    28352846    .footer-menu {
    2836         font-size: <?php echo ($mod / 10); ?>rem;
     2847        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    28372848    }
    28382849}
    28392850@media (min-width: 1000px) {
    28402851    .footer-menu {
    2841     font-size: <?php echo ($mod * 0.12 / 2.4); ?>rem;
     2852    font-size: <?php echo wp_kses(($mod * 0.12 / 2.4), 'strip'); ?>rem;
    28422853    }
    28432854}
    28442855@media (min-width: 1220px) {
    28452856    .footer-menu {
    2846         font-size: <?php echo ($mod / 10); ?>rem;
     2857        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    28472858    }
    28482859}
     
    29792990?>
    29802991.powered-by-wordpress {
    2981     font-size: <?php echo ($mod * 1.6 / 18); ?>rem;
     2992    font-size: <?php echo wp_kses(($mod * 1.6 / 18), 'strip'); ?>rem;
    29822993}
    29832994@media (min-width: 700px) {
    29842995    .powered-by-wordpress {
    2985         font-size: <?php echo ($mod / 10); ?>rem;
     2996        font-size: <?php echo wp_kses(($mod / 10), 'strip'); ?>rem;
    29862997    }
    29872998}
     
    31803191                if ($breadcrumbs) {
    31813192
    3182                     echo '<div id="breadcrumbs">' . $breadcrumbs . '</div>';
     3193                    echo '<div id="breadcrumbs">' . wp_kses($breadcrumbs, 'post') . '</div>';
    31833194
    31843195                } elseif (function_exists('bcn_display')) {
     
    33423353<?php
    33433354        printf(
    3344             __('This plugin requires the default WordPress theme Twenty Twenty to be active or live previewed in order to function. Your theme "%s" is not compatible.', 'options-for-twenty-twenty'),
    3345             get_template()
     3355/* translators: active theme slug */
     3356            esc_html(__('This plugin requires the default WordPress theme Twenty Twenty to be active or live previewed in order to function. Your theme "%s" is not compatible.', 'options-for-twenty-twenty')),
     3357            esc_html(get_template())
    33463358        );
    33473359?>
    33483360
    3349 <a href="<?php echo add_query_arg('search', 'twentytwenty', admin_url('theme-install.php')); ?>" title="<?php esc_attr_e('Twenty Twenty', 'options-for-twenty-twenty'); ?>"><?php
     3361<a href="<?php echo esc_url(add_query_arg('search', 'twentytwenty', admin_url('theme-install.php'))); ?>" title="<?php esc_attr_e('Twenty Twenty', 'options-for-twenty-twenty'); ?>"><?php
    33503362        esc_html_e('Please install and activate or live preview the Twenty Twenty theme (or a child theme thereof)', 'options-for-twenty-twenty');
    33513363?></a>.</p>
  • options-for-twenty-twenty/trunk/readme.txt

    r3412271 r3421200  
    66Tested up to: 6.9
    77Requires PHP: 5.6
    8 Stable tag: 1.6.4
     8Stable tag: 1.6.5
    99License: GPLv2 or later
    1010License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    159159== Changelog ==
    160160
     161= 1.6.5 =
     162* General housekeeping preparing for "Plugin Check" code review
     163
    161164= 1.6.4 =
    162165* Remove Customizer CSS due to incompatible change introduced in WordPress v6.7
     
    385388== Upgrade Notice ==
    386389
    387 = 1.6.4 =
    388 * Remove Customizer CSS due to incompatible change introduced in WordPress v6.7
     390= 1.6.5 =
     391* General housekeeping preparing for "Plugin Check" code review
Note: See TracChangeset for help on using the changeset viewer.