Open Mobile Version.'; $opt['view_amp_css'] = '.amp_toolbox_post_box_link { background-color: #ffe18d; font-weight: bold; padding: 5px 5px 5px 15px; margin-bottom: 20px; }'; $opt['view_amp_priority'] = '0'; $opt['view_amp_position'] = '0'; $opt['view_original'] = '1'; $opt['amp_analytics'] = '0'; $opt['amp_analytics_id'] = ''; $opt['view_original_text'] = 'You are currently viewing the Mobile Optimized version (AMP), some features may be missing or may not work as expected. Open Full Version.'; $opt['view_original_css'] = '.amp_toolbox_post_box_link { background-color: #ffe18d; font-weight: bold; padding: 5px 5px 5px 15px; margin-bottom: 20px; }'; $opt['view_original_priority'] = '0'; $opt['view_original_position'] = '0'; $opt['override_publisher_logo'] = "0"; $opt['publisher_logo_url'] = ""; $opt['publisher_logo_width'] = ""; $opt['publisher_logo_height'] = ""; $opt['override_header_logo'] = "0"; $opt['override_header_css'] = ".amp-wp-header { background:#e8e8e8; padding:12px 0; } .amp-wp-header a { background-image:url(/path/to/image); background-repeat:no-repeat; background-size:contain; display:block; height:85px; width:320px; text-indent:-9999px; margin:0 auto; }"; add_option("amp_toolbox_settings",$opt); if ( ! class_exists( 'WDPanelAdmin2' ) ) { require_once('WDPanelAdmin.php'); } if ( ! class_exists( 'AmpToolbox_WDPanelAdmin' ) ) { class AmpToolbox_WDPanelAdmin extends WDPanelAdmin2 { var $hook = 'amp-toolbox'; var $longname = 'AMP Toolbox Configuration'; var $shortname = 'AMP Toolbox'; var $filename = 'amp-toolbox/amp-toolbox.php'; var $ozhicon = 'script_link.png'; function clean_css($csstovalidateindiv) { $csstidy = new csstidy(); $csstidy->set_cfg( 'css_level', 'CSS3.0' ); $csstidy->parse( $csstovalidateindiv ); return $csstidy->print->plain(); } function config_page() { if ( isset($_POST['submit']) ) { if (!current_user_can('manage_options')) die(__('You cannot edit these options.')); check_admin_referer('schema-breadcrumbs-updatesettings'); //clean up css?? require_once( 'css-tidy/class.csstidy.php' ); $opt = array(); $opt['view_amp'] = (int)$_POST['view_amp']; $opt['view_amp_text'] = wp_kses_post($_POST['view_amp_text']); $opt['view_amp_css'] = $this->clean_css($_POST['view_amp_css']); $opt['view_amp_priority'] = (int)$_POST['view_amp_priority']; $opt['view_amp_position'] = (int)$_POST['view_amp_position']; $opt['view_original'] = (int)$_POST['view_original']; $opt['view_original_text'] = wp_kses_post($_POST['view_original_text']); $opt['view_original_css'] = $this->clean_css($_POST['view_original_css']); $opt['view_original_priority'] = (int)$_POST['view_original_priority']; $opt['view_original_position'] = (int)$_POST['view_original_position']; $opt['amp_analytics'] = (int)$_POST['amp_analytics']; $opt['amp_analytics_id'] = wp_kses_post($_POST['amp_analytics_id']); $opt['override_publisher_logo'] = (int)$_POST['override_publisher_logo']; $opt['publisher_logo_url'] = esc_url($_POST['publisher_logo_url']); $opt['publisher_logo_width'] = (int)$_POST['publisher_logo_width']; $opt['publisher_logo_height'] = (int)$_POST['publisher_logo_height']; $opt['override_header_logo'] = (int)$_POST['override_header_logo']; $opt['override_header_css'] = $this->clean_css($_POST['override_header_css']); update_option('amp_toolbox_settings', $opt); } $opt = get_option('amp_toolbox_settings'); ?>

longname?>

"view_amp", "label" => __('Link To AMP Version'), "content" => '
If enabled you can position a link on normal post pages to your AMP version.', ); $rows[] = array( "id" => "view_amp_text", "label" => __('AMP Link Data'), "content" => '
[amp_url] - AMP URL of this post. [original_url] - Normal URL of this post. [title] - Post title.', ); $rows[] = array( "id" => "view_amp_css", "label" => __('AMP Link CSS'), "content" => '', ); $rows[] = array( "id" => "view_amp_position", "label" => __('AMP Link Position'), "content" => '
Before or after the post?', ); $rows[] = array( "id" => "view_amp_priority", "label" => __('AMP Link Priority'), "content" => '
The priority, 0 is generally at the top ', ); $table = $this->form_table($rows); $this->postbox('breadcrumbssettings',__('Link To AMP Version'), $table.'
') ?>
"view_original", "label" => __('Link To Original Version'), "content" => '
If enabled you can position a link on AMP post pages to your original version.', ); $rows[] = array( "id" => "view_original_text", "label" => __('Original Link Data'), "content" => '
[amp_url] - AMP URL of this post. [original_url] - Normal URL of this post. [title] - Post title.', ); $rows[] = array( "id" => "view_original_css", "label" => __('Original Link CSS'), "content" => '', ); $rows[] = array( "id" => "view_original_position", "label" => __('AMP Link Position'), "content" => '
Before or after the post?', ); $rows[] = array( "id" => "view_original_priority", "label" => __('AMP Link Priority'), "content" => '
The priority, 0 is generally at the top ', ); $table = $this->form_table($rows); $this->postbox('breadcrumbssettings',__('Link To Original Version'), $table.'
') ?>
"amp_analytics", "label" => __('Use AMP Analytics?'), "content" => '
If enabled you can apply AMP Analytics tracking to your AMP pages.', ); $rows[] = array( "id" => "amp_analytics_id", "label" => __('Google Analytics ID'), "content" => '
Paste your Google Analytics ID.', ); $table = $this->form_table($rows); $this->postbox('breadcrumbssettings',__('AMP Analytics'), $table.'
') ?>
"override_publisher_logo", "label" => __('Override Publisher Logo Schema?'), "content" => '
If enabled you can position a link on AMP post pages to your original version.', ); $rows[] = array( "id" => "publisher_logo_url", "label" => __('Publisher Logo URL'), "content" => '
Full URL or absolute path from domain. ', ); $rows[] = array( "id" => "publisher_logo_width", "label" => __('Publisher Logo Width'), "content" => 'px ', ); $rows[] = array( "id" => "publisher_logo_height", "label" => __('Publisher Logo Height'), "content" => 'px ', ); $rows[] = array( "id" => "override_header_logo", "label" => __('Override AMP Header?'), "content" => '
If enabled you override the header with a logo, sizes and colours of your choice.', ); $rows[] = array( "id" => "override_header_css", "label" => __('Header CSS'), "content" => '', ); $table = $this->form_table($rows); $this->postbox('breadcrumbssettings',__('Other Settings'), $table.'
') ?>
WebDesires - Web Development
Looking for a developer?
Professional UK WordPress Web Development Company
plugin_like(); $this->plugin_support(); $this->wd_knowledge(); $this->wd_news(); ?>



post_title), $text); if ($opt['view_original_position'] == 0) { $content ="
".($text)."
" . $content; } else { $content = $content."
".($text)."
"; } //strip bad tags + data $tags = array('embed', 'font'); $content = preg_replace( '#<(' . implode( '|', $tags) . ').*>.*?#s', '', $content); //replace attributes $content = preg_replace('/(<[^>]+) pikto-uid=".*?"/i', '$1', $content); //strip bad tags + leave data $content = str_replace('' . $content; }*/ } } return $content; } //Modify content for normal pages function amptoolbox_normal_page_mods($content) { $post_id = get_the_ID(); $post = get_post($post_id); if( is_singular() && is_main_query() ) { if (post_supports_amp($post)) { if (function_exists('is_amp_endpoint') && !is_amp_endpoint()) { $opt = get_option('amp_toolbox_settings'); $text = stripslashes($opt['view_amp_text']); $text = str_replace('[amp_url]', esc_url(rtrim(get_permalink($post_id), '/') . '/' . 'amp/'), $text); $text = str_replace('[original_url]', esc_url(rtrim(get_permalink($post_id), '/') . '/'), $text); $text = str_replace('[title]', preg_replace('/[^a-Z0-9-. ]/', '', $post->post_title), $text); $text = $text.''; if ($opt['view_amp_position'] == 0) { $content ="
".($text)."
" . $content; } else { $content = $content."
".($text)."
"; } } } } return $content; } //modify header on AMP pages (DEACTIVATED SEE BELOW) function amptoolbox_amp_head_mods() { $post_id = get_the_ID(); $post = get_post($post_id); if (post_supports_amp($post)) { if (function_exists('is_amp_endpoint') && is_amp_endpoint()) { $opt = get_option('amp_toolbox_settings'); if ($opt['amp_analytics'] == 1) { echo ''; } } } } //modify header on normal pages function amptoolbox_normal_head_mods() { $post_id = get_the_ID(); $post = get_post($post_id); if (post_supports_amp($post)) { if (function_exists('is_amp_endpoint') && !is_amp_endpoint()) { $opt = get_option('amp_toolbox_settings'); //alternate handheld header echo ""; } } } function xyz_amptoolbox_amp_my_additional_css_styles() { // only CSS here please... $opt = get_option('amp_toolbox_settings'); echo $opt['view_original_css']; } add_filter( 'the_content', 'amptoolbox_amp_page_mods', $opt['view_original_priority'] ); add_filter( 'the_content', 'amptoolbox_normal_page_mods', $opt['view_amp_priority'] ); //add_filter('amp_post_template_head', 'amptoolbox_amp_head_mods'); add_action('wp_head', 'amptoolbox_normal_head_mods'); add_action( 'amp_post_template_css', 'xyz_amptoolbox_amp_my_additional_css_styles' ); function amptoolbox_add_custom_analytics( $analytics ) { $opt = get_option('amp_toolbox_settings'); if ( ! is_array( $analytics ) ) { $analytics = array(); } if ($opt['amp_analytics'] == 1) { // https://developers.google.com/analytics/devguides/collection/amp-analytics/ $analytics['xyz-googleanalytics'] = array( 'type' => 'googleanalytics', 'attributes' => array( // 'data-credentials' => 'include', ), 'config_data' => array( 'vars' => array( 'account' => $opt['amp_analytics_id'] ), 'triggers' => array( 'trackPageview' => array( 'on' => 'visible', 'request' => 'pageview', ), ), ), ); } return $analytics; } add_filter( 'amp_post_template_analytics', 'amptoolbox_add_custom_analytics' ); } if ($opt['override_publisher_logo'] == 1) { add_filter( 'amp_post_template_metadata', 'xyz_amptoolbox_amp_modify_json_metadata', 10, 2 ); } function xyz_amptoolbox_amp_modify_json_metadata( $metadata, $post ) { //$metadata['@type'] = 'NewsArticle'; $opt = get_option('amp_toolbox_settings'); $metadata['publisher']['logo'] = array( '@type' => 'ImageObject', //'url' => get_template_directory_uri().'/images/logo.png', 'url' => $opt['publisher_logo_url'], 'height' => (string)$opt['publisher_logo_height'], 'width' => (string)$opt['publisher_logo_width'], ); if (!isset($metadata['image']) || $metadata['image'] == "") { $metadata['image'] = array( '@type' => 'ImageObject', 'url' => $opt['publisher_logo_url'], 'height' => (string)$opt['publisher_logo_height'], 'width' => (string)$opt['publisher_logo_width'], ); } else { if (isset($metadata['image']['height'])) { $metadata['image']['height'] = (string)$metadata['image']['height']; $metadata['image']['width'] = (string)$metadata['image']['width']; } } return $metadata; } if ($opt['override_header_logo'] == 1) { add_action( 'amp_post_template_css', 'xyz_amptoolbox_amp_additional_css_styles' ); } function xyz_amptoolbox_amp_additional_css_styles( $amp_template ) { // only CSS here please... $opt = get_option('amp_toolbox_settings'); echo stripslashes($opt['override_header_css']); } ?>