Willkommen bei WordPress. Dies ist dein erster Beitrag. Bearbeite oder lösche ihn und beginne mit dem Schreiben!
Hallo Welt!
von raredesign | Dez 3, 2019 | Allgemein | 0 Kommentare
Cokiee Shell
Current Path : /var/www/web28/html/wp-content/themes/Avada/includes/ |
Current File : //var/www/web28/html/wp-content/themes/Avada/includes/class-fusion-deprecate-pyre-po.php |
<?php /** * Deprecate pyre_* post-meta. * * @author ThemeFusion * @copyright (c) Copyright by ThemeFusion * @link https://avada.com * @package Fusion-Library * @since 6.2.0 */ /** * Get & set setting values. */ class Fusion_Deprecate_Pyre_PO { /** * The root post-meta key. * * @since 6.2.0 */ const ROOT = '_fusion'; /** * The post-ID. * * @access protected * @since 6.2.0 * @var int */ protected $post_id; /** * The post-type. * * @access protected * @since 6.2.0 * @var int */ protected $post_type; /** * The post-meta. * * @access protected * @since 6.2.0 * @var array */ protected $post_meta; /** * An array of mismatched options. * * Format: old_option_name => new_option_name. * * @static * @access protected * @since 6.2.0 * @var array */ protected static $mismatched = [ 'avada_rev_styles' => 'avada_rev_styles', 'show_first_featured_image' => 'show_first_featured_image', ]; /** * Constructor. * * @access public * @since 6.2.0 * @param array $post_id The arguments. * @return void */ public function __construct( $post_id = 0 ) { $this->post_id = $post_id ? $post_id : fusion_library()->get_page_id(); if ( ! $this->post_id || ! is_int( $this->post_id ) ) { return; } $this->post_type = get_post_type( $this->post_id ); $this->post_meta = get_post_meta( $this->post_id ); // Don't want to migrate for revisions or continue if we are not on a single post/page. if ( 'revision' === $this->post_type ) { return; } // Trigger migrations. $this->migrate(); } /** * Migrate old value to new structure. * * @access protected * @since 6.2.0 * @return void */ protected function migrate() { $this->modify_initial_postmeta(); // Get all post-meta. $new_meta = []; // Loop all postmeta. foreach ( $this->post_meta as $old_key => $value ) { // Only migrate non-empty, non-default meta. if ( '' === $value || 'default' === $value ) { continue; } // Get the new key. $new_key = $this->get_new_option_name( $old_key ); // Format the value. $value = $this->format_value( $value, $old_key, $new_key ); if ( false === strpos( $new_key, '[' ) ) { $new_meta[ $new_key ] = $value; } else { $new_key_root = explode( '[', $new_key )[0]; if ( ! isset( $new_meta[ $new_key_root ] ) ) { $new_meta[ $new_key_root ] = []; } $new_key_child = str_replace( ']', '', explode( '[', $new_key )[1] ); $new_meta[ $new_key_root ][ $new_key_child ] = $value; } } update_post_meta( $this->post_id, Fusion_Data_PostMeta::ROOT, $new_meta ); } /** * Get the new option name. * * @access protected * @since 6.2.0 * @param string $option_name The old option-name. * @return string */ protected function get_new_option_name( $option_name ) { switch ( $option_name ) { case 'portfolio_width_100': if ( 'product' === $this->post_type ) { return 'product_width_100'; } elseif ( 'avada_portfolio' === $this->post_type ) { return 'portfolio_width_100'; } return 'blog_width_100'; case 'share_box': if ( 'tribe_events' === $this->post_type ) { return 'events_social_sharing_box'; } elseif ( 'avada_portfolio' === $this->post_type ) { return 'portfolio_social_sharing_box'; } return 'social_sharing_box'; case 'post_pagination': return ( 'avada_portfolio' === $this->post_type ) ? 'portfolio_pn_nav' : 'blog_pn_nav'; case 'related_posts': if ( 'avada_portfolio' === $this->post_type ) { return 'portfolio_related_posts'; } elseif ( 'avada_faq' === $this->post_type ) { return 'faq_related_posts'; } return 'related_posts'; case 'sbg_selected_sidebar_replacement': if ( 'page' === $this->post_type ) { return 'pages_sidebar'; } elseif ( 'post' === $this->post_type || 'avada_faq' === $this->post_type ) { return 'posts_sidebar'; } elseif ( 'avada_portfolio' === $this->post_type ) { return 'portfolio_sidebar'; } elseif ( 'product' === $this->post_type ) { return 'woo_sidebar'; } elseif ( 'tribe_events' === $this->post_type ) { return 'ec_sidebar'; } elseif ( 'forum' === $this->post_type || 'topic' === $this->post_type || 'reply' === $this->post_type ) { return 'ppbress_sidebar'; } return 'posts_sidebar'; // Migrate to post option naming for CPT. case 'sbg_selected_sidebar_2_replacement': if ( 'page' === $this->post_type ) { return 'pages_sidebar_2'; } elseif ( 'post' === $this->post_type || 'avada_faq' === $this->post_type ) { return 'posts_sidebar_2'; } elseif ( 'avada_portfolio' === $this->post_type ) { return 'portfolio_sidebar_2'; } elseif ( 'product' === $this->post_type ) { return 'woo_sidebar_2'; } elseif ( 'tribe_events' === $this->post_type ) { return 'ec_sidebar_2'; } elseif ( 'forum' === $this->post_type || 'topic' === $this->post_type || 'reply' === $this->post_type ) { return 'ppbress_sidebar_2'; } return 'posts_sidebar_2'; // Migrate to post option naming for CPT. case 'sidebar_position': if ( 'page' === $this->post_type ) { return 'default_sidebar_pos'; } elseif ( 'post' === $this->post_type || 'avada_faq' === $this->post_type ) { return 'blog_sidebar_position'; } elseif ( 'avada_portfolio' === $this->post_type ) { return 'portfolio_sidebar_position'; } elseif ( 'product' === $this->post_type ) { return 'woo_sidebar_position'; } elseif ( 'tribe_events' === $this->post_type ) { return 'ec_sidebar_pos'; } elseif ( 'forum' === $this->post_type || 'topic' === $this->post_type || 'reply' === $this->post_type ) { return 'bbpress_sidebar_position'; } return 'blog_sidebar_position'; case 'page_bg_layout': return 'layout'; case 'page_bg_color': return 'bg_color'; case 'page_bg': return 'bg_image[url]'; case 'page_bg_full': return 'bg_full'; case 'page_bg_repeat': return 'bg_repeat'; case 'wide_page_bg_color': return 'content_bg_color'; case 'wide_page_bg': return 'content_bg_image[url]'; case 'wide_page_bg_full': return 'content_bg_full'; case 'wide_page_bg_repeat': return 'content_bg_repeat'; case 'display_footer': return 'footer_widgets'; case 'display_copyright': return 'footer_copyright'; case 'combined_header_bg_color': return 'header_bg_color'; case 'header_bg': return 'header_bg_image[url]'; case 'main_top_padding': return 'main_padding[top]'; case 'main_bottom_padding': return 'main_padding[bottom]'; case 'page_title': return 'page_title_bar'; case 'page_title_breadcrumbs_search_bar': return 'page_title_bar_bs'; case 'page_title_text': return 'page_title_bar_text'; case 'page_title_text_alignment': return 'page_title_alignment'; case 'page_title_text_size': return 'page_title_font_size'; case 'page_title_font_color': return 'page_title_color'; case 'page_title_custom_subheader_text_size': return 'page_title_subheader_font_size'; case 'page_title_subheader_font_color': return 'page_title_subheader_color'; case 'page_title_bar_bg_color': return 'page_title_bg_color'; case 'page_title_bar_borders_color': return 'page_title_border_color'; case 'page_title_bar_bg': return 'page_title_bg[url]'; case 'page_title_bar_bg_retina': return 'page_title_bg_retina[url]'; case 'page_title_bar_bg_full': return 'page_title_bg_full'; case 'width': return 'portfolio_featured_image_width'; case 'project_desc_title': return 'portfolio_project_desc_title'; case 'project_details': return 'portfolio_project_details'; case 'link_icon_target': return 'portfolio_link_icon_target'; case 'post_comments': return 'blog_comments'; case 'sidebar_bg_color': return ( 'tribe_events' === $this->post_type ) ? 'ec_sidebar_bg_color' : 'sidebar_bg_color'; case 'fimg_width': return 'fimg[width]'; case 'fimg_height': return 'fimg[height]'; case 'mp4': return 'mp4[url]'; case 'webm': return 'webm[url]'; case 'ogv': return 'ogv[url]'; case 'preview_image': return 'preview_image[url]'; } return $option_name; } /** * Format the value. * * @access private * @since 6.2.0 * @param mixed $value The value. * @param string $key The old post-meta key. * @param string $new_key The new post-meta key. */ private function format_value( $value, $key, $new_key ) { if ( 'sbg_selected_sidebar_replacement' === $key || 'sbg_selected_sidebar_2_replacement' === $key ) { $value = maybe_unserialize( $value ); if ( is_array( $value ) && isset( $value[0] ) ) { return $value[0]; } } if ( isset( self::$mismatched[ $key ] ) && $new_key === self::$mismatched[ $key ] ) { if ( 'yes' === $value ) { return 'no'; } elseif ( '1' === $value ) { return '0'; } elseif ( 1 === $value ) { return 0; } elseif ( true === $value ) { return false; } elseif ( 'no' === $value ) { return 'yes'; } elseif ( '0' === $value ) { return '1'; } elseif ( 0 === $value ) { return 1; } elseif ( false === $value ) { return true; } } return $value; } /** * Run initial migrations on post-meta. * * @since 6.2.0 * @return void */ protected function modify_initial_postmeta() { $post_meta = []; foreach ( $this->post_meta as $key => $val ) { // Check if this is a meta we want to migrate. if ( ! $this->is_ours( $key ) ) { unset( $this->post_meta[ $key ] ); continue; } $val = ( is_array( $val ) && isset( $val[0] ) ) ? $val[0] : $val; $val = maybe_unserialize( $val ); $post_meta[ str_replace( 'pyre_', '', $key ) ] = $val; } /** * Modification for the combined_header_bg_color page-option. * In the past there were separate controls for color & opacity * which were combined to a single rgba control in Avada v5.7. */ if ( isset( $post_meta['header_bg_opacity'] ) && isset( $post_meta['header_bg_color'] ) && ! isset( $post_meta['combined_header_bg_color'] ) ) { // Only proceed if header_bg_color is not rgba. if ( false === strpos( $post_meta['header_bg_color'], 'rgba' ) ) { $alpha = $post_meta['header_bg_opacity']; // Only proceed if alpha is numeric. if ( is_numeric( $alpha ) ) { $color = $post_meta['header_bg_color']; if ( ! $color || empty( $color ) ) { $color = fusion_get_theme_option( 'header_bg_color' ); } $post_meta['combined_header_bg_color'] = $post_meta['header_bg_color']; if ( 1 > $alpha ) { $post_meta['combined_header_bg_color'] = Fusion_Color::new_color( $color )->getNew( 'alpha', $alpha )->toCSS( 'rgba' ); } } } } $this->post_meta = $post_meta; } /** * Check if the post-meta is one of ours. * * @access protected * @since 6.2.0 * @param string $key The post-meta key. * @return bool */ protected function is_ours( $key ) { if ( 0 === strpos( $key, 'pyre_' ) ) { return true; } if ( 0 === strpos( $key, 'sbg_' ) ) { return true; } if ( 0 === strpos( $key, 'kd_' ) ) { return true; } return false; } } /* Omit closing PHP tag to avoid "Headers already sent" issues. */
Cokiee Shell Web 1.0, Coded By Razor
Neueste Kommentare