%PDF- %PDF-
Direktori : /home/l/a/n/langpiergz/www/wp-content/plugins/wp-seopress/inc/functions/ |
Current File : /home/l/a/n/langpiergz/www/wp-content/plugins/wp-seopress/inc/functions/options-social.php |
<?php defined( 'ABSPATH' ) or die( 'Please don’t call the plugin directly. Thanks :)' ); //Social //================================================================================================= //Knowledge Graph //Type function seopress_social_knowledge_type_option() { $seopress_social_knowledge_type_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_knowledge_type_option ) ) { foreach ($seopress_social_knowledge_type_option as $key => $seopress_social_knowledge_type_value) $options[$key] = $seopress_social_knowledge_type_value; if (isset($seopress_social_knowledge_type_option['seopress_social_knowledge_type'])) { return $seopress_social_knowledge_type_option['seopress_social_knowledge_type']; } } } //Person name function seopress_social_knowledge_name_option() { $seopress_social_knowledge_name_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_knowledge_name_option ) ) { foreach ($seopress_social_knowledge_name_option as $key => $seopress_social_knowledge_name_value) $options[$key] = $seopress_social_knowledge_name_value; if (isset($seopress_social_knowledge_name_option['seopress_social_knowledge_name'])) { return $seopress_social_knowledge_name_option['seopress_social_knowledge_name']; } } } //Logo function seopress_social_knowledge_img_option() { $seopress_social_knowledge_img_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_knowledge_img_option ) ) { foreach ($seopress_social_knowledge_img_option as $key => $seopress_social_knowledge_img_value) $options[$key] = $seopress_social_knowledge_img_value; if (isset($seopress_social_knowledge_img_option['seopress_social_knowledge_img'])) { return $seopress_social_knowledge_img_option['seopress_social_knowledge_img']; } } } //Phone number function seopress_social_knowledge_phone_number_option() { $seopress_social_knowledge_phone_number_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_knowledge_phone_number_option ) ) { foreach ($seopress_social_knowledge_phone_number_option as $key => $seopress_social_knowledge_phone_number_value) $options[$key] = $seopress_social_knowledge_phone_number_value; if (isset($seopress_social_knowledge_phone_number_option['seopress_social_knowledge_phone'])) { return $seopress_social_knowledge_phone_number_option['seopress_social_knowledge_phone']; } } } //Contact type function seopress_social_knowledge_contact_type_option() { $seopress_social_knowledge_contact_type_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_knowledge_contact_type_option ) ) { foreach ($seopress_social_knowledge_contact_type_option as $key => $seopress_social_knowledge_contact_type_value) $options[$key] = $seopress_social_knowledge_contact_type_value; if (isset($seopress_social_knowledge_contact_type_option['seopress_social_knowledge_contact_type'])) { return $seopress_social_knowledge_contact_type_option['seopress_social_knowledge_contact_type']; } } } //Contact option function seopress_social_knowledge_contact_option_option() { $seopress_social_knowledge_contact_option_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_knowledge_contact_option_option ) ) { foreach ($seopress_social_knowledge_contact_option_option as $key => $seopress_social_knowledge_contact_option_value) $options[$key] = $seopress_social_knowledge_contact_option_value; if (isset($seopress_social_knowledge_contact_option_option['seopress_social_knowledge_contact_option'])) { return $seopress_social_knowledge_contact_option_option['seopress_social_knowledge_contact_option']; } } } //Accounts //Facebook function seopress_social_accounts_facebook_option() { $seopress_social_accounts_facebook_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_facebook_option ) ) { foreach ($seopress_social_accounts_facebook_option as $key => $seopress_social_accounts_facebook_value) $options[$key] = $seopress_social_accounts_facebook_value; if (isset($seopress_social_accounts_facebook_option['seopress_social_accounts_facebook'])) { return $seopress_social_accounts_facebook_option['seopress_social_accounts_facebook']; } } } //Twitter function seopress_social_accounts_twitter_option() { $seopress_social_accounts_twitter_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_twitter_option ) ) { foreach ($seopress_social_accounts_twitter_option as $key => $seopress_social_accounts_twitter_value) $options[$key] = $seopress_social_accounts_twitter_value; if (isset($seopress_social_accounts_twitter_option['seopress_social_accounts_twitter'])) { return $seopress_social_accounts_twitter_option['seopress_social_accounts_twitter']; } } } //Pinterest function seopress_social_accounts_pinterest_option() { $seopress_social_accounts_pinterest_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_pinterest_option ) ) { foreach ($seopress_social_accounts_pinterest_option as $key => $seopress_social_accounts_pinterest_value) $options[$key] = $seopress_social_accounts_pinterest_value; if (isset($seopress_social_accounts_pinterest_option['seopress_social_accounts_pinterest'])) { return $seopress_social_accounts_pinterest_option['seopress_social_accounts_pinterest']; } } } //Instagram function seopress_social_accounts_instagram_option() { $seopress_social_accounts_instagram_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_instagram_option ) ) { foreach ($seopress_social_accounts_instagram_option as $key => $seopress_social_accounts_instagram_value) $options[$key] = $seopress_social_accounts_instagram_value; if (isset($seopress_social_accounts_instagram_option['seopress_social_accounts_instagram'])) { return $seopress_social_accounts_instagram_option['seopress_social_accounts_instagram']; } } } //YouTube function seopress_social_accounts_youtube_option() { $seopress_social_accounts_youtube_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_youtube_option ) ) { foreach ($seopress_social_accounts_youtube_option as $key => $seopress_social_accounts_youtube_value) $options[$key] = $seopress_social_accounts_youtube_value; if (isset($seopress_social_accounts_youtube_option['seopress_social_accounts_youtube'])) { return $seopress_social_accounts_youtube_option['seopress_social_accounts_youtube']; } } } //LinkedIn function seopress_social_accounts_linkedin_option() { $seopress_social_accounts_linkedin_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_linkedin_option ) ) { foreach ($seopress_social_accounts_linkedin_option as $key => $seopress_social_accounts_linkedin_value) $options[$key] = $seopress_social_accounts_linkedin_value; if (isset($seopress_social_accounts_linkedin_option['seopress_social_accounts_linkedin'])) { return $seopress_social_accounts_linkedin_option['seopress_social_accounts_linkedin']; } } } //MySpace function seopress_social_accounts_myspace_option() { $seopress_social_accounts_myspace_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_myspace_option ) ) { foreach ($seopress_social_accounts_myspace_option as $key => $seopress_social_accounts_myspace_value) $options[$key] = $seopress_social_accounts_myspace_value; if (isset($seopress_social_accounts_myspace_option['seopress_social_accounts_myspace'])) { return $seopress_social_accounts_myspace_option['seopress_social_accounts_myspace']; } } } //Soundcloud function seopress_social_accounts_soundcloud_option() { $seopress_social_accounts_soundcloud_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_soundcloud_option ) ) { foreach ($seopress_social_accounts_soundcloud_option as $key => $seopress_social_accounts_soundcloud_value) $options[$key] = $seopress_social_accounts_soundcloud_value; if (isset($seopress_social_accounts_soundcloud_option['seopress_social_accounts_soundcloud'])) { return $seopress_social_accounts_soundcloud_option['seopress_social_accounts_soundcloud']; } } } //Tumblr function seopress_social_accounts_tumblr_option() { $seopress_social_accounts_tumblr_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_accounts_tumblr_option ) ) { foreach ($seopress_social_accounts_tumblr_option as $key => $seopress_social_accounts_tumblr_value) $options[$key] = $seopress_social_accounts_tumblr_value; if (isset($seopress_social_accounts_tumblr_option['seopress_social_accounts_tumblr'])) { return $seopress_social_accounts_tumblr_option['seopress_social_accounts_tumblr']; } } } function seopress_social_accounts_jsonld_hook() { $seopress_comma_array = array(); //If enable (!=none) if (seopress_social_knowledge_type_option() !='none') { if (seopress_social_accounts_facebook_option() !='') { $seopress_social_accounts_facebook_option = json_encode(seopress_social_accounts_facebook_option()); array_push($seopress_comma_array, $seopress_social_accounts_facebook_option); } if (seopress_social_accounts_twitter_option() !='') { $seopress_social_accounts_twitter_option = json_encode('https://twitter.com/'.seopress_social_accounts_twitter_option()); array_push($seopress_comma_array, $seopress_social_accounts_twitter_option); } if (seopress_social_accounts_pinterest_option() !='') { $seopress_social_accounts_pinterest_option = json_encode(seopress_social_accounts_pinterest_option()); array_push($seopress_comma_array, $seopress_social_accounts_pinterest_option); } if (seopress_social_accounts_instagram_option() !='') { $seopress_social_accounts_instagram_option = json_encode(seopress_social_accounts_instagram_option()); array_push($seopress_comma_array, $seopress_social_accounts_instagram_option); } if (seopress_social_accounts_youtube_option() !='') { $seopress_social_accounts_youtube_option = json_encode(seopress_social_accounts_youtube_option()); array_push($seopress_comma_array, $seopress_social_accounts_youtube_option); } if (seopress_social_accounts_linkedin_option() !='') { $seopress_social_accounts_linkedin_option = json_encode(seopress_social_accounts_linkedin_option()); array_push($seopress_comma_array, $seopress_social_accounts_linkedin_option); } if (seopress_social_accounts_myspace_option() !='') { $seopress_social_accounts_myspace_option = json_encode(seopress_social_accounts_myspace_option()); array_push($seopress_comma_array, $seopress_social_accounts_myspace_option); } if (seopress_social_accounts_soundcloud_option() !='') { $seopress_social_accounts_soundcloud_option = json_encode(seopress_social_accounts_soundcloud_option()); array_push($seopress_comma_array, $seopress_social_accounts_soundcloud_option); } if (seopress_social_accounts_tumblr_option() !='') { $seopress_social_accounts_tumblr_option = json_encode(seopress_social_accounts_tumblr_option()); array_push($seopress_comma_array, $seopress_social_accounts_tumblr_option); } if (seopress_social_knowledge_type_option() !='') { $seopress_social_knowledge_type_option = json_encode(seopress_social_knowledge_type_option()); } else { $seopress_social_knowledge_type_option = json_encode('Organization'); } if (seopress_social_knowledge_name_option() !='' && seopress_social_knowledge_type_option() !='none') { $seopress_social_knowledge_name_option = json_encode(seopress_social_knowledge_name_option()); } elseif (seopress_social_knowledge_type_option() !='none') { $seopress_social_knowledge_name_option = json_encode(get_bloginfo('name')); } if (seopress_social_knowledge_img_option() !='' && seopress_social_knowledge_type_option() =='Organization') { $seopress_social_knowledge_img_option = json_encode(seopress_social_knowledge_img_option()); } if (seopress_social_knowledge_phone_number_option() !='') { $seopress_social_knowledge_phone_number_option = json_encode(seopress_social_knowledge_phone_number_option()); } if (seopress_social_knowledge_contact_type_option() !='') { $seopress_social_knowledge_contact_type_option = json_encode(seopress_social_knowledge_contact_type_option()); } if (seopress_social_knowledge_contact_option_option() !='') { $seopress_social_knowledge_contact_option_option = json_encode(seopress_social_knowledge_contact_option_option()); } $html = '<script type="application/ld+json">'; $html .= '{"@context" : "'.seopress_check_ssl().'schema.org","@type" : '.$seopress_social_knowledge_type_option.','; if (seopress_social_knowledge_img_option() !='' && seopress_social_knowledge_type_option() =='Organization') { $html .= '"logo": '.$seopress_social_knowledge_img_option.','; } $html .= '"name" : '.$seopress_social_knowledge_name_option.',"url" : '.json_encode(get_home_url()); if (seopress_social_knowledge_type_option() =='Organization' && seopress_social_knowledge_phone_number_option() !='' && seopress_social_knowledge_contact_type_option() !='' ) { if ($seopress_social_knowledge_phone_number_option && $seopress_social_knowledge_contact_type_option ) { $html .= ',"contactPoint": [{ "@type": "ContactPoint", "telephone": '.$seopress_social_knowledge_phone_number_option.','; if ($seopress_social_knowledge_contact_option_option !='' && $seopress_social_knowledge_contact_option_option !='None') { $html .= '"contactOption": '.$seopress_social_knowledge_contact_option_option.','; } $html .= '"contactType": '.$seopress_social_knowledge_contact_type_option.' }]'; } } if (seopress_social_accounts_facebook_option() !='' || seopress_social_accounts_twitter_option() !='' || seopress_social_accounts_pinterest_option() !='' || seopress_social_accounts_instagram_option() !='' || seopress_social_accounts_youtube_option() !='' || seopress_social_accounts_linkedin_option() !='' || seopress_social_accounts_myspace_option() !='' || seopress_social_accounts_soundcloud_option() !='' || seopress_social_accounts_tumblr_option() !='' ) { $html .= ',"sameAs" : ['; $seopress_comma_count = count($seopress_comma_array); for ($i = 0; $i < $seopress_comma_count; $i++) { $html .= $seopress_comma_array[$i]; if ($i < ($seopress_comma_count - 1)) { $html .= ', '; } } $html .= ']'; } $html .= '}'; $html .= '</script>'; $html .= "\n"; $html = apply_filters('seopress_schemas_organization_html', $html); echo $html; } } add_action( 'wp_head', 'seopress_social_accounts_jsonld_hook', 1 ); //Website Schema.org in JSON-LD - Sitelinks if (function_exists('seopress_titles_nositelinkssearchbox_option') && seopress_titles_nositelinkssearchbox_option() =='1') { //do not display searchbox schema } else { function seopress_social_website_option() { $target = get_home_url().'/?s={search_term_string}'; echo '<script type="application/ld+json">'; echo '{ "@context": "'.seopress_check_ssl().'schema.org", "@type": "WebSite", "url" : '.json_encode(get_home_url()).', "potentialAction": { "@type": "SearchAction", "target": '.json_encode($target).', "query-input": "required name=search_term_string" } }'; echo '</script>'; echo "\n"; } if (is_home() || is_front_page()) { add_action( 'wp_head', 'seopress_social_website_option', 1 ); } } //Facebook //OG Enabled function seopress_social_facebook_og_option() { $seopress_social_facebook_og_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_facebook_og_option ) ) { foreach ($seopress_social_facebook_og_option as $key => $seopress_social_facebook_og_value) $options[$key] = $seopress_social_facebook_og_value; if (isset($seopress_social_facebook_og_option['seopress_social_facebook_og'])) { return $seopress_social_facebook_og_option['seopress_social_facebook_og']; } } } //OG URL function seopress_social_facebook_og_url_hook() { if (seopress_social_facebook_og_option() =='1') { global $wp; if (seopress_advanced_advanced_trailingslash_option()) { $current_url = home_url(add_query_arg(array(), $wp->request)); } else { $current_url = trailingslashit(home_url(add_query_arg(array(), $wp->request))); } if (is_search()) { $seopress_social_og_url = '<meta property="og:url" content="'.htmlspecialchars(urldecode(get_home_url().'/search/'.get_search_query())).'" />'; } else { $seopress_social_og_url = '<meta property="og:url" content="'.htmlspecialchars(urldecode($current_url),ENT_COMPAT, 'UTF-8').'" />'; } //Hook on post OG URL - 'seopress_social_og_url' if (has_filter('seopress_social_og_url')) { $seopress_social_og_url = apply_filters('seopress_social_og_url', $seopress_social_og_url); } echo $seopress_social_og_url."\n"; } } add_action( 'wp_head', 'seopress_social_facebook_og_url_hook', 1 ); //OG Site Name function seopress_social_facebook_og_site_name_hook() { if (seopress_social_facebook_og_option() =='1' && get_bloginfo('name') !='') { $seopress_social_og_site_name = '<meta property="og:site_name" content="'.get_bloginfo('name').'" />'; //Hook on post OG site name - 'seopress_social_og_site_name' if (has_filter('seopress_social_og_site_name')) { $seopress_social_og_site_name = apply_filters('seopress_social_og_site_name', $seopress_social_og_site_name); } echo $seopress_social_og_site_name."\n"; } } add_action( 'wp_head', 'seopress_social_facebook_og_site_name_hook', 1 ); //OG Locale function seopress_social_facebook_og_locale_hook() { if (seopress_social_facebook_og_option() =='1') { $seopress_social_og_locale = '<meta property="og:locale" content="'.get_locale().'" />'; //Polylang include_once( ABSPATH . 'wp-admin/includes/plugin.php' ); if ( is_plugin_active( 'polylang/polylang.php' ) || is_plugin_active( 'polylang-pro/polylang.php' )) { //@credits Polylang if (did_action('pll_init') && function_exists('PLL')) { $alternates = array(); foreach ( PLL()->model->get_languages_list() as $language ) { if ( PLL()->curlang->slug !== $language->slug && PLL()->links->get_translation_url( $language ) && isset( $language->facebook ) ) { $alternates[] = $language->facebook; } } // There is a risk that 2 languages have the same Facebook locale. So let's make sure to output each locale only once. $alternates = array_unique( $alternates ); foreach ( $alternates as $lang ) { $seopress_social_og_locale .= "\n"; $seopress_social_og_locale .= '<meta property="og:locale:alternate" content="'.$lang.'" />'; } } } //Hook on post OG locale - 'seopress_social_og_locale' if (has_filter('seopress_social_og_locale')) { $seopress_social_og_locale = apply_filters('seopress_social_og_locale', $seopress_social_og_locale); } if (isset($seopress_social_og_locale) && $seopress_social_og_locale !='') { echo $seopress_social_og_locale."\n"; } } } add_action( 'wp_head', 'seopress_social_facebook_og_locale_hook', 1 ); //OG Type function seopress_social_facebook_og_type_hook() { if (seopress_social_facebook_og_option() =='1') { if (is_home() || is_front_page()) { $seopress_social_og_type = '<meta property="og:type" content="website" />'; } elseif (is_singular('product') || is_singular('download')) { $seopress_social_og_type = '<meta property="og:type" content="product" />'; } elseif (is_singular()) { global $post; $seopress_video_disabled = get_post_meta($post->ID,'_seopress_video_disabled', true); $seopress_video = get_post_meta($post->ID,'_seopress_video'); if (!empty($seopress_video[0][0]['url']) && $seopress_video_disabled =='') { $seopress_social_og_type = '<meta property="og:type" content="video.other" />'; } else { $seopress_social_og_type = '<meta property="og:type" content="article" />'; } } elseif (is_search() || is_archive() || is_404()) { $seopress_social_og_type = '<meta property="og:type" content="object" />'; } if (isset($seopress_social_og_type)) { //Hook on post OG type - 'seopress_social_og_type' if (has_filter('seopress_social_og_type')) { $seopress_social_og_type = apply_filters('seopress_social_og_type', $seopress_social_og_type); } echo $seopress_social_og_type."\n"; } } } add_action( 'wp_head', 'seopress_social_facebook_og_type_hook', 1 ); //Article Author / Article Publisher function seopress_social_facebook_og_author_hook() { if (seopress_social_facebook_og_option() =='1' && seopress_social_accounts_facebook_option() !='') { if (is_singular() && !is_home() && !is_front_page()) { global $post; $seopress_video_disabled = get_post_meta($post->ID,'_seopress_video_disabled', true); $seopress_video = get_post_meta($post->ID,'_seopress_video'); if (!empty($seopress_video[0][0]['url']) && $seopress_video_disabled =='') { //do nothing } else { $seopress_social_og_author = '<meta property="article:author" content="'.seopress_social_accounts_facebook_option().'" />'; $seopress_social_og_author .= "\n"; $seopress_social_og_author .= '<meta property="article:publisher" content="'.seopress_social_accounts_facebook_option().'" />'; } } if (isset($seopress_social_og_author)) { //Hook on post OG author - 'seopress_social_og_author' if (has_filter('seopress_social_og_author')) { $seopress_social_og_author = apply_filters('seopress_social_og_author', $seopress_social_og_author); } echo $seopress_social_og_author."\n"; } if (is_singular('post')) { // article:section if (get_post_meta($post->ID,'_seopress_robots_primary_cat',true)) { $_seopress_robots_primary_cat = get_post_meta($post->ID,'_seopress_robots_primary_cat',true); if (isset($_seopress_robots_primary_cat) && $_seopress_robots_primary_cat !='' && $_seopress_robots_primary_cat !='none') { if ($post->post_type !=NULL && $post->post_type =='post') { $current_cat = get_category($_seopress_robots_primary_cat); } } else { $current_cat = current( get_the_category( $post ) ); } } else { $current_cat = current( get_the_category( $post ) ); } if ($current_cat) { $seopress_social_og_section = ''; $seopress_social_og_section .= '<meta property="article:section" content="'.$current_cat->name.'" />'; $seopress_social_og_section .= "\n"; if (isset($seopress_social_og_section)) { //Hook on post OG article:section - 'seopress_social_og_section' if (has_filter('seopress_social_og_section')) { $seopress_social_og_section = apply_filters('seopress_social_og_section', $seopress_social_og_section); } echo $seopress_social_og_section; } } // article:tag if (function_exists('get_the_tags')) { $tags = get_the_tags(); if (!empty($tags)) { $seopress_social_og_tag = ''; foreach($tags as $tag) { $seopress_social_og_tag .= '<meta property="article:tag" content="'.$tag->name.'" />'; $seopress_social_og_tag .= "\n"; } if (isset($seopress_social_og_tag)) { //Hook on post OG article:tag - 'seopress_social_og_tag' if (has_filter('seopress_social_og_tag')) { $seopress_social_og_tag = apply_filters('seopress_social_og_tag', $seopress_social_og_tag); } echo $seopress_social_og_tag; } } } } } } add_action( 'wp_head', 'seopress_social_facebook_og_author_hook', 1 ); //Facebook Title function seopress_social_fb_title_post_option() { if (function_exists("is_shop") && is_shop()) { $_seopress_social_fb_title = get_post_meta(get_option( 'woocommerce_shop_page_id' ),'_seopress_social_fb_title',true); } else { $_seopress_social_fb_title = get_post_meta(get_the_ID(),'_seopress_social_fb_title',true); } if ($_seopress_social_fb_title != '') { return $_seopress_social_fb_title; } } function seopress_social_fb_title_term_option() { $_seopress_social_fb_title = get_term_meta(get_queried_object()->{'term_id'},'_seopress_social_fb_title',true); if ($_seopress_social_fb_title != '') { return $_seopress_social_fb_title; } } function seopress_social_fb_title_home_option() { $_seopress_social_fb_title = get_post_meta(get_option( 'page_for_posts' ),'_seopress_social_fb_title',true); if ($_seopress_social_fb_title != '') { return $_seopress_social_fb_title; } } function seopress_social_fb_title_hook() { if (seopress_social_facebook_og_option() =='1') { //Init $seopress_social_og_title =''; if (is_home()) { if (seopress_social_fb_title_home_option() !='') { $seopress_social_og_title .= '<meta property="og:title" content="'.seopress_social_fb_title_home_option().'" />'; $seopress_social_og_title .= "\n"; } elseif (function_exists('seopress_titles_the_title') && seopress_titles_the_title() !='') { $seopress_social_og_title .= '<meta property="og:title" content="'.esc_attr(seopress_titles_the_title()).'" />'; $seopress_social_og_title .= "\n"; } } elseif (is_tax() || is_category() || is_tag()) { if (seopress_social_fb_title_term_option() !='') { $seopress_social_og_title .= '<meta property="og:title" content="'.seopress_social_fb_title_term_option().'" />'; $seopress_social_og_title .= "\n"; } else { $seopress_social_og_title .= '<meta property="og:title" content="'.single_term_title('', false).' - '.get_bloginfo('name').'" />'; $seopress_social_og_title .= "\n"; } } elseif (is_singular() && seopress_social_facebook_og_option() =='1' && seopress_social_fb_title_post_option() !='') { $seopress_social_og_title .= '<meta property="og:title" content="'.seopress_social_fb_title_post_option().'" />'; $seopress_social_og_title .= "\n"; } elseif(function_exists("is_shop") && is_shop() && seopress_social_facebook_og_option() =='1' && seopress_social_fb_title_post_option() !='') { $seopress_social_og_title .= '<meta property="og:title" content="'.seopress_social_fb_title_post_option().'" />'; $seopress_social_og_title .= "\n"; } elseif (seopress_social_facebook_og_option() =='1' && function_exists('seopress_titles_the_title') && seopress_titles_the_title() !='') { $seopress_social_og_title .= '<meta property="og:title" content="'.esc_attr(seopress_titles_the_title()).'" />'; $seopress_social_og_title .= "\n"; } elseif (seopress_social_facebook_og_option() =='1' && get_the_title() !='') { $seopress_social_og_title .= '<meta property="og:title" content="'.the_title_attribute('echo=0').'" />'; $seopress_social_og_title .= "\n"; } //Hook on post OG title - 'seopress_social_og_title' if (has_filter('seopress_social_og_title')) { $seopress_social_og_title = apply_filters('seopress_social_og_title', $seopress_social_og_title); } if (isset($seopress_social_og_title) && $seopress_social_og_title !='') { echo $seopress_social_og_title; } } } add_action( 'wp_head', 'seopress_social_fb_title_hook', 1 ); //Facebook Desc function seopress_social_fb_desc_post_option() { if (function_exists("is_shop") && is_shop()) { $_seopress_social_fb_desc = get_post_meta(get_option( 'woocommerce_shop_page_id' ),'_seopress_social_fb_desc',true); } else { $_seopress_social_fb_desc = get_post_meta(get_the_ID(),'_seopress_social_fb_desc',true); } if ($_seopress_social_fb_desc != '') { return $_seopress_social_fb_desc; } } function seopress_social_fb_desc_term_option() { $_seopress_social_fb_desc = get_term_meta(get_queried_object()->{'term_id'},'_seopress_social_fb_desc',true); if ($_seopress_social_fb_desc != '') { return $_seopress_social_fb_desc; } } function seopress_social_fb_desc_home_option() { $_seopress_social_fb_desc = get_post_meta(get_option( 'page_for_posts' ),'_seopress_social_fb_desc',true); if ($_seopress_social_fb_desc != '') { return $_seopress_social_fb_desc; } } function seopress_social_fb_desc_hook() { if (seopress_social_facebook_og_option() =='1') { global $post; //Init $seopress_social_og_desc =''; //Excerpt length $seopress_excerpt_length = 50; $seopress_excerpt_length = apply_filters('seopress_excerpt_length',$seopress_excerpt_length); setup_postdata( $post ); if (is_home()) { if (seopress_social_fb_desc_home_option() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.seopress_social_fb_desc_home_option().'" />'; $seopress_social_og_desc .= "\n"; } elseif (function_exists('seopress_titles_the_description_content') && seopress_titles_the_description_content() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.seopress_titles_the_description_content().'" />'; $seopress_social_og_desc .= "\n"; } } elseif (is_tax() || is_category() || is_tag()) { if (seopress_social_fb_desc_term_option() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.seopress_social_fb_desc_term_option().'" />'; $seopress_social_og_desc .= "\n"; } elseif (term_description() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.wp_trim_words(stripslashes_deep(wp_filter_nohtml_kses(term_description())),$seopress_excerpt_length).' - '.get_bloginfo('name').'" />'; $seopress_social_og_desc .= "\n"; } } elseif (is_singular() && seopress_social_facebook_og_option() =='1' && seopress_social_fb_desc_post_option() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.seopress_social_fb_desc_post_option().'" />'; $seopress_social_og_desc .= "\n"; } elseif(function_exists("is_shop") && is_shop() && seopress_social_facebook_og_option() =='1' && seopress_social_fb_desc_post_option() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.seopress_social_fb_desc_post_option().'" />'; $seopress_social_og_desc .= "\n"; } elseif (seopress_social_facebook_og_option() =='1' && function_exists('seopress_titles_the_description_content') && seopress_titles_the_description_content() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.seopress_titles_the_description_content().'" />'; $seopress_social_og_desc .= "\n"; } elseif (seopress_social_facebook_og_option() =='1' && get_the_excerpt() !='') { $seopress_social_og_desc .= '<meta property="og:description" content="'.wp_trim_words(esc_attr(stripslashes_deep(wp_filter_nohtml_kses(get_the_excerpt()))), $seopress_excerpt_length).'" />'; $seopress_social_og_desc .= "\n"; } //Hook on post OG description - 'seopress_social_og_desc' if (has_filter('seopress_social_og_desc')) { $seopress_social_og_desc = apply_filters('seopress_social_og_desc', $seopress_social_og_desc); } if (isset($seopress_social_og_desc) && $seopress_social_og_desc !='') { echo $seopress_social_og_desc; } } } add_action( 'wp_head', 'seopress_social_fb_desc_hook', 1 ); //Facebook Thumbnail function seopress_social_fb_img_post_option() { if (function_exists("is_shop") && is_shop()) { $_seopress_social_fb_img = get_post_meta(get_option( 'woocommerce_shop_page_id' ),'_seopress_social_fb_img',true); } else { $_seopress_social_fb_img = get_post_meta(get_the_ID(),'_seopress_social_fb_img',true); } if ($_seopress_social_fb_img != '') { return $_seopress_social_fb_img; } } function seopress_social_fb_img_term_option() { $_seopress_social_fb_img = get_term_meta(get_queried_object()->{'term_id'},'_seopress_social_fb_img',true); if ($_seopress_social_fb_img != '') { return $_seopress_social_fb_img; } } function seopress_social_facebook_img_option() { $seopress_social_facebook_img_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_facebook_img_option ) ) { foreach ($seopress_social_facebook_img_option as $key => $seopress_social_facebook_img_value) $options[$key] = $seopress_social_facebook_img_value; if (isset($seopress_social_facebook_img_option['seopress_social_facebook_img'])) { return $seopress_social_facebook_img_option['seopress_social_facebook_img']; } } } function seopress_social_fb_img_home_option() { $_seopress_social_fb_img = get_post_meta(get_option( 'page_for_posts' ),'_seopress_social_fb_img',true); if ($_seopress_social_fb_img != '') { return $_seopress_social_fb_img; } elseif (has_post_thumbnail(get_option( 'page_for_posts' ))) { return get_the_post_thumbnail_url(get_option( 'page_for_posts' )); } } function seopress_thumbnail_in_content() { //Get post content $seopress_get_the_content = get_post_field('post_content', get_the_ID()); if ($seopress_get_the_content !='') { //DomDocument $dom = new domDocument; $internalErrors = libxml_use_internal_errors(true); if (function_exists('mb_convert_encoding')) { $dom->loadHTML(mb_convert_encoding($seopress_get_the_content, 'HTML-ENTITIES', 'UTF-8')); } else { $dom->loadHTML('<?xml encoding="utf-8" ?>'.$seopress_get_the_content); } $dom->preserveWhiteSpace = false; if ($dom->getElementsByTagName('img') !='') { $images = $dom->getElementsByTagName('img'); } if (isset($images) && !empty ($images)) { if ($images->length>=1) { foreach($images as $img) { $url = $img->getAttribute('src'); //Exclude Base64 img if (strpos($url, 'data:image/') === false) { if (seopress_is_absolute($url) ===true) { //do nothing } else { $url = get_home_url().$url; } //cleaning url $url = htmlspecialchars(esc_attr(wp_filter_nohtml_kses($url))); //remove query strings $parse_url = wp_parse_url($url); if (!empty($parse_url['scheme']) && !empty($parse_url['host']) && !empty($parse_url['path'])) { return $parse_url['scheme'].'://'.$parse_url['host'].$parse_url['path']; } else { return $url; } } } } } libxml_use_internal_errors($internalErrors); } } function seopress_social_fb_img_size_from_url($url) { if (function_exists('attachment_url_to_postid')) { $post_id = attachment_url_to_postid( $url ); //If cropped image if ( $post_id !=0 ){ $dir = wp_upload_dir(); $path = $url; if ( 0 === strpos( $path, $dir['baseurl'] . '/' ) ) { $path = substr( $path, strlen( $dir['baseurl'] . '/' ) ); } if ( preg_match( '/^(.*)(\-\d*x\d*)(\.\w{1,})/i', $path, $matches ) ){ $url = $dir['baseurl'] . '/' . $matches[1] . $matches[3]; $post_id = attachment_url_to_postid( $url ); } } $image_src = wp_get_attachment_image_src( $post_id, 'full' ); //OG:IMAGE $seopress_social_og_img = ''; $seopress_social_og_img .= '<meta property="og:image" content="'.$url.'" />'; $seopress_social_og_img .= "\n"; //OG:IMAGE:SECURE_URL IF SSL if (is_ssl()) { $seopress_social_og_img .= '<meta property="og:image:secure_url" content="'.$url.'" />'; $seopress_social_og_img .= "\n"; } //OG:IMAGE:WIDTH + OG:IMAGE:HEIGHT if (!empty($image_src)) { $seopress_social_og_img .= '<meta property="og:image:width" content="'.$image_src[1].'" />'; $seopress_social_og_img .= "\n"; $seopress_social_og_img .= '<meta property="og:image:height" content="'.$image_src[2].'" />'; $seopress_social_og_img .= "\n"; } //OG:IMAGE:ALT if (get_post_meta($post_id, '_wp_attachment_image_alt', true) !='') { $seopress_social_og_img .= '<meta property="og:image:alt" content="'.esc_attr(get_post_meta($post_id, '_wp_attachment_image_alt', true)).'" />'; $seopress_social_og_img .= "\n"; } return $seopress_social_og_img; } } function seopress_social_fb_img_hook() { if (seopress_social_facebook_og_option() =='1') { //Init global $post; $seopress_social_og_thumb =''; if (is_home() && seopress_social_fb_img_home_option() !='' && 'page' == get_option( 'show_on_front' )) { $seopress_social_og_thumb .= seopress_social_fb_img_size_from_url(seopress_social_fb_img_home_option()); } elseif ((is_singular() || (function_exists("is_shop") && is_shop())) && seopress_social_facebook_og_option() =='1' && seopress_social_fb_img_post_option() !='') { $seopress_social_og_thumb .= seopress_social_fb_img_size_from_url(seopress_social_fb_img_post_option()); } elseif ((is_singular() || (function_exists("is_shop") && is_shop())) && seopress_social_facebook_og_option() =='1' && has_post_thumbnail() ) { $seopress_social_og_thumb .= seopress_social_fb_img_size_from_url(get_the_post_thumbnail_url($post, 'full')); } elseif ((is_singular() || (function_exists("is_shop") && is_shop())) && seopress_social_facebook_og_option() =='1' && seopress_thumbnail_in_content() !='' ) { $seopress_social_og_thumb .= seopress_social_fb_img_size_from_url(seopress_thumbnail_in_content()); } elseif ((is_tax() || is_category() || is_tag()) && seopress_social_fb_img_term_option() !='') { $seopress_social_og_thumb .= seopress_social_fb_img_size_from_url(seopress_social_fb_img_term_option()); } elseif (seopress_social_facebook_og_option() =='1' && seopress_social_facebook_img_option() !='') { $seopress_social_og_thumb .= seopress_social_fb_img_size_from_url(seopress_social_facebook_img_option()); } //Hook on post OG thumbnail - 'seopress_social_og_thumb' if (has_filter('seopress_social_og_thumb')) { $seopress_social_og_thumb = apply_filters('seopress_social_og_thumb', $seopress_social_og_thumb); } if (isset($seopress_social_og_thumb) && $seopress_social_og_thumb !='') { echo $seopress_social_og_thumb; } } } add_action( 'wp_head', 'seopress_social_fb_img_hook', 1 ); //OG Facebook Link Ownership ID function seopress_social_facebook_link_ownership_id_option() { $seopress_social_facebook_link_ownership_id_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_facebook_link_ownership_id_option ) ) { foreach ($seopress_social_facebook_link_ownership_id_option as $key => $seopress_social_facebook_link_ownership_id_value) $options[$key] = $seopress_social_facebook_link_ownership_id_value; if (isset($seopress_social_facebook_link_ownership_id_option['seopress_social_facebook_link_ownership_id'])) { return $seopress_social_facebook_link_ownership_id_option['seopress_social_facebook_link_ownership_id']; } } } function seopress_social_facebook_link_ownership_id_hook() { if (seopress_social_facebook_og_option() =='1' && seopress_social_facebook_link_ownership_id_option() !='') { $seopress_social_link_ownership_id = '<meta property="fb:pages" content="'.seopress_social_facebook_link_ownership_id_option().'" />'; echo $seopress_social_link_ownership_id."\n"; } } add_action( 'wp_head', 'seopress_social_facebook_link_ownership_id_hook', 1 ); //OG Facebook Admin ID function seopress_social_facebook_admin_id_option() { $seopress_social_facebook_admin_id_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_facebook_admin_id_option ) ) { foreach ($seopress_social_facebook_admin_id_option as $key => $seopress_social_facebook_admin_id_value) $options[$key] = $seopress_social_facebook_admin_id_value; if (isset($seopress_social_facebook_admin_id_option['seopress_social_facebook_admin_id'])) { return $seopress_social_facebook_admin_id_option['seopress_social_facebook_admin_id']; } } } function seopress_social_facebook_admin_id_hook() { if (seopress_social_facebook_og_option() =='1' && seopress_social_facebook_admin_id_option() !='') { $seopress_social_admin_id = '<meta property="fb:admins" content="'.seopress_social_facebook_admin_id_option().'" />'; echo $seopress_social_admin_id."\n"; } } add_action( 'wp_head', 'seopress_social_facebook_admin_id_hook', 1 ); //OG Facebook App ID function seopress_social_facebook_app_id_option() { $seopress_social_facebook_app_id_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_facebook_app_id_option ) ) { foreach ($seopress_social_facebook_app_id_option as $key => $seopress_social_facebook_app_id_value) $options[$key] = $seopress_social_facebook_app_id_value; if (isset($seopress_social_facebook_app_id_option['seopress_social_facebook_app_id'])) { return $seopress_social_facebook_app_id_option['seopress_social_facebook_app_id']; } } } function seopress_social_facebook_app_id_hook() { if (seopress_social_facebook_og_option() =='1' && seopress_social_facebook_app_id_option() !="") { $seopress_social_app_id = '<meta property="fb:app_id" content="'.seopress_social_facebook_app_id_option().'" />'; echo $seopress_social_app_id."\n"; } } add_action( 'wp_head', 'seopress_social_facebook_app_id_hook', 1 ); //Twitter //Twitter Card Enabled function seopress_social_twitter_card_option() { $seopress_social_twitter_card_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_twitter_card_option ) ) { foreach ($seopress_social_twitter_card_option as $key => $seopress_social_twitter_card_value) $options[$key] = $seopress_social_twitter_card_value; if (isset($seopress_social_twitter_card_option['seopress_social_twitter_card'])) { return $seopress_social_twitter_card_option['seopress_social_twitter_card']; } } } //Twitter Card OG function seopress_social_twitter_card_og_option() { $seopress_social_twitter_card_og_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_twitter_card_og_option ) ) { foreach ($seopress_social_twitter_card_og_option as $key => $seopress_social_twitter_card_og_value) $options[$key] = $seopress_social_twitter_card_og_value; if (isset($seopress_social_twitter_card_og_option['seopress_social_twitter_card_og'])) { return $seopress_social_twitter_card_og_option['seopress_social_twitter_card_og']; } } } //Twitter Card Summary / large function seopress_social_twitter_card_img_size_option() { $seopress_social_twitter_card_img_size_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_twitter_card_img_size_option ) ) { foreach ($seopress_social_twitter_card_img_size_option as $key => $seopress_social_twitter_card_value) $options[$key] = $seopress_social_twitter_card_value; if (isset($seopress_social_twitter_card_img_size_option['seopress_social_twitter_card_img_size'])) { return $seopress_social_twitter_card_img_size_option['seopress_social_twitter_card_img_size']; } } } //Twitter Summary Card function seopress_social_twitter_card_summary_hook() { if (seopress_social_twitter_card_option() =='1') { if (seopress_social_twitter_card_img_size_option() =='large') { $seopress_social_twitter_card_summary = '<meta name="twitter:card" content="summary_large_image">'; } else { $seopress_social_twitter_card_summary = '<meta name="twitter:card" content="summary" />'; } //Hook on post Twitter card summary - 'seopress_social_twitter_card_summary' if (has_filter('seopress_social_twitter_card_summary')) { $seopress_social_twitter_card_summary = apply_filters('seopress_social_twitter_card_summary', $seopress_social_twitter_card_summary); } echo $seopress_social_twitter_card_summary."\n"; } } add_action( 'wp_head', 'seopress_social_twitter_card_summary_hook', 1 ); //Twitter Site function seopress_social_twitter_card_site_hook() { if (seopress_social_twitter_card_option() =='1' && seopress_social_accounts_twitter_option() !='' ) { $seopress_social_twitter_card_site = '<meta name="twitter:site" content="'.seopress_social_accounts_twitter_option().'" />'; //Hook on post Twitter card site - 'seopress_social_twitter_card_site' if (has_filter('seopress_social_twitter_card_site')) { $seopress_social_twitter_card_site = apply_filters('seopress_social_twitter_card_site', $seopress_social_twitter_card_site); } echo $seopress_social_twitter_card_site."\n"; } } add_action( 'wp_head', 'seopress_social_twitter_card_site_hook', 1 ); //Twitter Creator function seopress_social_twitter_card_creator_hook() { //Init $seopress_social_twitter_card_creator =''; if (seopress_social_twitter_card_option() =='1' && get_the_author_meta('twitter') ) { $seopress_social_twitter_card_creator .= '<meta name="twitter:creator" content="@'.get_the_author_meta('twitter').'" />'; } elseif (seopress_social_twitter_card_option() =='1' && seopress_social_accounts_twitter_option() !='' ) { $seopress_social_twitter_card_creator .= '<meta name="twitter:creator" content="'.seopress_social_accounts_twitter_option().'" />'; } //Hook on post Twitter card creator - 'seopress_social_twitter_card_creator' if (has_filter('seopress_social_twitter_card_creator')) { $seopress_social_twitter_card_creator = apply_filters('seopress_social_twitter_card_creator', $seopress_social_twitter_card_creator); } if (isset($seopress_social_twitter_card_creator) && $seopress_social_twitter_card_creator !='') { echo $seopress_social_twitter_card_creator."\n"; } } add_action( 'wp_head', 'seopress_social_twitter_card_creator_hook', 1 ); //Twitter Title function seopress_social_twitter_title_post_option() { if (function_exists("is_shop") && is_shop()) { $_seopress_social_twitter_title = get_post_meta(get_option( 'woocommerce_shop_page_id' ),'_seopress_social_twitter_title',true); } else { $_seopress_social_twitter_title = get_post_meta(get_the_ID(),'_seopress_social_twitter_title',true); } if ($_seopress_social_twitter_title != '') { return $_seopress_social_twitter_title; } } function seopress_social_twitter_title_term_option() { $_seopress_social_twitter_title = get_term_meta(get_queried_object()->{'term_id'},'_seopress_social_twitter_title',true); if ($_seopress_social_twitter_title != '') { return $_seopress_social_twitter_title; } } function seopress_social_twitter_title_home_option() { $_seopress_social_twitter_title = get_post_meta(get_option( 'page_for_posts' ),'_seopress_social_twitter_title',true); if ($_seopress_social_twitter_title != '') { return $_seopress_social_twitter_title; } } function seopress_social_twitter_title_hook() { //If Twitter cards enable if (seopress_social_twitter_card_option() =='1') { //Init $seopress_social_twitter_card_title =''; if (is_home()) {//Home if (seopress_social_twitter_title_home_option() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_twitter_title_home_option().'" />'; } elseif (seopress_social_twitter_card_og_option() =='1' && seopress_social_fb_title_home_option() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_fb_title_home_option().'" />'; } elseif (function_exists('seopress_titles_the_title') && seopress_titles_the_title() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.esc_attr(seopress_titles_the_title()).'" />'; } } elseif (is_tax() || is_category() || is_tag()) {//Term archive if (seopress_social_twitter_title_term_option() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_twitter_title_term_option().'" />'; } elseif (seopress_social_twitter_card_og_option() =='1' && seopress_social_fb_title_term_option() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_fb_title_term_option().'" />'; } else { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.single_term_title('', false).' - '.get_bloginfo('name').'" />'; } } elseif (is_singular() && seopress_social_twitter_title_post_option() !='') {//Single $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_twitter_title_post_option().'" />'; } elseif (is_singular() && seopress_social_twitter_card_og_option() =='1' && seopress_social_facebook_og_option() =='1' && seopress_social_fb_title_post_option() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_fb_title_post_option().'" />'; } elseif (function_exists("is_shop") && is_shop() && seopress_social_twitter_title_post_option() !='') {//Single $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_twitter_title_post_option().'" />'; } elseif (function_exists("is_shop") && is_shop() && seopress_social_twitter_card_og_option() =='1' && seopress_social_facebook_og_option() =='1' && seopress_social_fb_title_post_option() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.seopress_social_fb_title_post_option().'" />'; } elseif (function_exists('seopress_titles_the_title') && seopress_titles_the_title() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.esc_attr(seopress_titles_the_title()).'" />'; } elseif (seopress_social_facebook_og_option() =='1' && seopress_social_twitter_card_og_option() =='1' && function_exists('seopress_titles_the_title') && seopress_titles_the_title() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.esc_attr(seopress_titles_the_title()).'" />'; } elseif (get_the_title() !='') { $seopress_social_twitter_card_title .= '<meta name="twitter:title" content="'.the_title_attribute('echo=0').'" />'; } //Hook on post Twitter card title - 'seopress_social_twitter_card_title' if (has_filter('seopress_social_twitter_card_title')) { $seopress_social_twitter_card_title = apply_filters('seopress_social_twitter_card_title', $seopress_social_twitter_card_title); } if (isset($seopress_social_twitter_card_title) && $seopress_social_twitter_card_title !='') { echo $seopress_social_twitter_card_title."\n"; } } } add_action( 'wp_head', 'seopress_social_twitter_title_hook', 1 ); //Twitter Desc function seopress_social_twitter_desc_post_option() { if (function_exists("is_shop") && is_shop()) { $_seopress_social_twitter_desc = get_post_meta(get_option( 'woocommerce_shop_page_id' ),'_seopress_social_twitter_desc',true); } else { $_seopress_social_twitter_desc = get_post_meta(get_the_ID(),'_seopress_social_twitter_desc',true); } if ($_seopress_social_twitter_desc != '') { return $_seopress_social_twitter_desc; } } function seopress_social_twitter_desc_term_option() { $_seopress_social_twitter_desc = get_term_meta(get_queried_object()->{'term_id'},'_seopress_social_twitter_desc',true); if ($_seopress_social_twitter_desc != '') { return $_seopress_social_twitter_desc; } } function seopress_social_twitter_desc_home_option() { $_seopress_social_twitter_desc = get_post_meta(get_option( 'page_for_posts' ),'_seopress_social_twitter_desc',true); if ($_seopress_social_twitter_desc != '') { return $_seopress_social_twitter_desc; } } function seopress_social_twitter_desc_hook() { //If Twitter cards enable if (seopress_social_twitter_card_option() =='1') { global $post; setup_postdata( $post ); //Init $seopress_social_twitter_card_desc =''; //Excerpt length $seopress_excerpt_length = 50; $seopress_excerpt_length = apply_filters('seopress_excerpt_length',$seopress_excerpt_length); if (is_home()) {//Home if (seopress_social_twitter_desc_home_option() !='') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_twitter_desc_home_option().'" />'; } elseif (seopress_social_fb_desc_home_option() !='' && seopress_social_twitter_card_og_option() =='1') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_fb_desc_home_option().'" />'; } elseif (function_exists('seopress_titles_the_description_content') && seopress_titles_the_description_content() !='') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_titles_the_description_content().'" />'; } } elseif (is_tax() || is_category() || is_tag()) {//Term archive if (seopress_social_twitter_desc_term_option() !='') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_twitter_desc_term_option().'" />'; } elseif (seopress_social_fb_desc_term_option() !='' && seopress_social_twitter_card_og_option() =='1') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_fb_desc_term_option().'" />'; } elseif (term_description() !='') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.wp_trim_words(stripslashes_deep(wp_filter_nohtml_kses(term_description())),$seopress_excerpt_length).' - '.get_bloginfo('name').'" />'; } } elseif (is_singular() && seopress_social_twitter_desc_post_option() !='') {//Single $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_twitter_desc_post_option().'" />'; } elseif (is_singular() && seopress_social_facebook_og_option() =='1' && seopress_social_fb_desc_post_option() !='' && seopress_social_twitter_card_og_option() =='1') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_fb_desc_post_option().'" />'; } elseif (function_exists("is_shop") && is_shop() && seopress_social_twitter_desc_post_option() !='') {//Single $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_twitter_desc_post_option().'" />'; } elseif (function_exists("is_shop") && is_shop() && seopress_social_facebook_og_option() =='1' && seopress_social_fb_desc_post_option() !='' && seopress_social_twitter_card_og_option() =='1') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_social_fb_desc_post_option().'" />'; } elseif (function_exists('seopress_titles_the_description_content') && seopress_titles_the_description_content() !='') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_titles_the_description_content().'" />'; } elseif (seopress_social_facebook_og_option() =='1' && function_exists('seopress_titles_the_description_content') && seopress_titles_the_description_content() !='' && seopress_social_twitter_card_og_option() =='1') { $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.seopress_titles_the_description_content().'" />'; } elseif (get_the_excerpt() !='') { setup_postdata( $post ); $seopress_social_twitter_card_desc .= '<meta name="twitter:description" content="'.wp_trim_words(esc_attr(stripslashes_deep(wp_filter_nohtml_kses(get_the_excerpt()))), $seopress_excerpt_length).'" />'; } //Hook on post Twitter card description - 'seopress_social_twitter_card_desc' if (has_filter('seopress_social_twitter_card_desc')) { $seopress_social_twitter_card_desc = apply_filters('seopress_social_twitter_card_desc', $seopress_social_twitter_card_desc); } if (isset($seopress_social_twitter_card_desc) && $seopress_social_twitter_card_desc !='') { echo $seopress_social_twitter_card_desc."\n"; } } } add_action( 'wp_head', 'seopress_social_twitter_desc_hook', 1 ); //Twitter Thumbnail function seopress_social_twitter_img_post_option() { if (function_exists("is_shop") && is_shop()) { $_seopress_social_twitter_img = get_post_meta(get_option( 'woocommerce_shop_page_id' ),'_seopress_social_twitter_img',true); } else { $_seopress_social_twitter_img = get_post_meta(get_the_ID(),'_seopress_social_twitter_img',true); } if ($_seopress_social_twitter_img != '') { return $_seopress_social_twitter_img; } } function seopress_social_twitter_img_term_option() { $_seopress_social_twitter_img = get_term_meta(get_queried_object()->{'term_id'},'_seopress_social_twitter_img',true); if ($_seopress_social_twitter_img !='') { return $_seopress_social_twitter_img; } } function seopress_social_twitter_img_option() { $seopress_social_twitter_img_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_twitter_img_option ) ) { foreach ($seopress_social_twitter_img_option as $key => $seopress_social_twitter_img_value) $options[$key] = $seopress_social_twitter_img_value; if (isset($seopress_social_twitter_img_option['seopress_social_twitter_card_img'])) { return $seopress_social_twitter_img_option['seopress_social_twitter_card_img']; } } } function seopress_social_twitter_img_size_option() { $seopress_social_twitter_img_size_option = get_option("seopress_social_option_name"); if ( ! empty ( $seopress_social_twitter_img_size_option ) ) { foreach ($seopress_social_twitter_img_size_option as $key => $seopress_social_twitter_img_size_value) $options[$key] = $seopress_social_twitter_img_size_value; if (isset($seopress_social_twitter_img_size_option['seopress_social_twitter_card_img_size'])) { return $seopress_social_twitter_img_size_option['seopress_social_twitter_card_img_size']; } } } function seopress_social_twitter_img_home_option() { $_seopress_social_twitter_img = get_post_meta(get_option( 'page_for_posts' ),'_seopress_social_twitter_img',true); if ($_seopress_social_twitter_img != '') { return $_seopress_social_twitter_img; } elseif (has_post_thumbnail(get_option( 'page_for_posts' ))) { return get_the_post_thumbnail_url(get_option( 'page_for_posts' )); } } function seopress_social_twitter_img_hook() { if (seopress_social_twitter_card_option() =='1') { //Init global $post; $seopress_social_twitter_card_thumb =''; if (is_home() && seopress_social_twitter_img_home_option() !='' && 'page' == get_option( 'show_on_front' )) { if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_twitter_img_home_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_twitter_img_home_option().'" />'; } } elseif (is_home() && seopress_social_fb_img_home_option() !='' && 'page' == get_option( 'show_on_front' ) && seopress_social_twitter_card_og_option() =='1') { if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_fb_img_home_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_fb_img_home_option().'" />'; } } elseif (seopress_social_twitter_img_post_option() !='' && (is_singular() || (function_exists("is_shop") && is_shop()))) {//Single if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_twitter_img_post_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_twitter_img_post_option().'" />'; } } elseif (seopress_social_fb_img_post_option() !='' && (is_singular() || (function_exists("is_shop") && is_shop())) && seopress_social_twitter_card_og_option() =='1') { if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_fb_img_post_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_fb_img_post_option().'" />'; } } elseif (has_post_thumbnail() && (is_singular() || (function_exists("is_shop") && is_shop()))) { if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.get_the_post_thumbnail_url($post, 'large').'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.get_the_post_thumbnail_url($post, 'large').'" />'; } } elseif (seopress_thumbnail_in_content() !='' && (is_singular() || (function_exists("is_shop") && is_shop()))) { if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_thumbnail_in_content().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_thumbnail_in_content().'" />'; } } elseif ((is_tax() || is_category() || is_tag()) && seopress_social_twitter_img_term_option() !='') {//Term archive if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_twitter_img_term_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_twitter_img_term_option().'" />'; } } elseif ((is_tax() || is_category() || is_tag()) && seopress_social_fb_img_term_option() !='' && seopress_social_twitter_card_og_option() =='1') { if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_fb_img_term_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_fb_img_term_option().'" />'; } } elseif (seopress_social_twitter_img_option() !='') {//Default Twitter if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_twitter_img_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_twitter_img_option().'" />'; } } elseif (seopress_social_facebook_img_option() !='' && seopress_social_twitter_card_og_option() =='1') {//Default Facebook if (seopress_social_twitter_img_size_option() =='large') { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image:src" content="'.seopress_social_facebook_img_option().'" />'; } else { $seopress_social_twitter_card_thumb .= '<meta name="twitter:image" content="'.seopress_social_facebook_img_option().'" />'; } } //Hook on post Twitter card thumbnail - 'seopress_social_twitter_card_thumb' if (has_filter('seopress_social_twitter_card_thumb')) { $seopress_social_twitter_card_thumb = apply_filters('seopress_social_twitter_card_thumb', $seopress_social_twitter_card_thumb); } if (isset($seopress_social_twitter_card_thumb) && $seopress_social_twitter_card_thumb !='') { echo $seopress_social_twitter_card_thumb."\n"; } } } add_action( 'wp_head', 'seopress_social_twitter_img_hook', 1 );