/var/www/hkosl.com/aga/wp-content/plugins/wordpress-seo/admin/class-option-tabs-formatter.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?php
/**
 * WPSEO plugin file.
 *
 * @package WPSEO\Admin\Options\Tabs
 */

/**
 * Class WPSEO_Option_Tabs_Formatter.
 */
class WPSEO_Option_Tabs_Formatter {

    
/**
     * @param WPSEO_Option_Tabs $option_tabs Option Tabs to get base from.
     * @param WPSEO_Option_Tab  $tab         Tab to get name from.
     *
     * @return string
     */
    
public function get_tab_viewWPSEO_Option_Tabs $option_tabsWPSEO_Option_Tab $tab ) {
        return 
WPSEO_PATH 'admin/views/tabs/' $option_tabs->get_base() . '/' $tab->get_name() . '.php';
    }

    
/**
     * @param WPSEO_Option_Tabs $option_tabs Option Tabs to get tabs from.
     */
    
public function runWPSEO_Option_Tabs $option_tabs ) {

        echo 
'<h2 class="nav-tab-wrapper" id="wpseo-tabs">';
        foreach ( 
$option_tabs->get_tabs() as $tab ) {
            
printf(
                
'<a class="nav-tab" id="%1$s" href="%2$s">%3$s</a>',
                
esc_attr$tab->get_name() . '-tab' ),
                
esc_url'#top#' $tab->get_name() ),
                
esc_html$tab->get_label() )
            );
        }
        echo 
'</h2>';

        
$help_center = new WPSEO_Help_Center''$option_tabsWPSEO_Utils::is_yoast_seo_premium() );
        
$help_center->localize_data();
        
$help_center->mount();

        foreach ( 
$option_tabs->get_tabs() as $tab ) {
            
$identifier $tab->get_name();

            
$class 'wpseotab ' . ( $tab->has_save_button() ? 'save' 'nosave' );
            
printf'<div id="%1$s" class="%2$s">'esc_attr$identifier ), esc_attr$class ) );

            
$tab_filter_name sprintf'%s_%s'$option_tabs->get_base(), $tab->get_name() );

            
/**
             * Allows to override the content that is display on the specific option tab.
             *
             * @internal For internal Yoast SEO use only.
             *
             * @api      string|null The content that should be displayed for this tab. Leave empty for default behaviour.
             *
             * @param WPSEO_Option_Tabs $option_tabs The registered option tabs.
             * @param WPSEO_Option_Tab  $tab         The tab that is being displayed.
             */
            
$option_tab_content apply_filters'wpseo_option_tab-' $tab_filter_namenull$option_tabs$tab );
            if ( ! empty( 
$option_tab_content ) ) {
                echo 
$option_tab_content;
            }

            if ( empty( 
$option_tab_content ) ) {
                
// Output the settings view for all tabs.
                
$tab_view $this->get_tab_view$option_tabs$tab );

                if ( 
is_file$tab_view ) ) {
                    
$yform Yoast_Form::get_instance();
                    require 
$tab_view;
                }
            }

            echo 
'</div>';
        }
    }
}