2-Klick-Buttons', 'manage_options', 'twoclick-buttons-options', 'twoclick_buttons_options_page' ); } } /** * Optionsseite generieren. * * @since 0.4 */ if(!function_exists('twoclick_buttons_options_page')) { function twoclick_buttons_options_page() { /** * Status von $_REQUEST abfangen. */ if(!empty($_REQUEST['_wpnonce'])) { /** * Validate the nonce. */ check_admin_referer('twoclick-buttons-options'); if($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_maintenance_reset']) { /** * Resetting options to defaults. */ // twoclick_buttons_reset_options(); // echo '
'; // echo '

'; // _e('Settings resetted.', 'twoclick-buttons'); // echo '

'; // echo '
'; } elseif($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_maintenance_clear']) { /** * Deleting all options from database. */ // twoclick_buttons_delete_options(); // echo '
'; // echo '

'; // _e('Settings deleted.', 'twoclick-buttons'); // echo '

'; // echo '
'; } else { /** * Writing new options to database. * * @var array */ $array_Options = array( 'twoclick_buttons_plugin_version' => (string) TWOCLICK_SOCIALMEDIA_BUTTONS_VERSION, 'twoclick_buttons_where' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_where']), 'twoclick_buttons_twitter_reply' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_twitter_reply']), 'twoclick_buttons_twitter_tweettext' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_twitter_tweettext']), 'twoclick_buttons_twitter_tweettext_owntext' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_twitter_tweettext_owntext']), 'twoclick_buttons_twitter_hashtags' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_twitter_hashtags'])), 'twoclick_buttons_twitter_tweettext_default_as' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_twitter_tweettext_default_as']), 'twoclick_buttons_flattr_uid' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_flattr_uid']), 'twoclick_buttons_display_page' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_page'])), 'twoclick_buttons_display_index' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_index'])), 'twoclick_buttons_display_year' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_year'])), 'twoclick_buttons_display_month' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_month'])), 'twoclick_buttons_display_day' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_day'])), 'twoclick_buttons_display_search' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_search'])), 'twoclick_buttons_display_tag' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_tag'])), 'twoclick_buttons_display_category' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_category'])), 'twoclick_buttons_display_facebook' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_facebook'])), 'twoclick_buttons_display_twitter' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_twitter'])), 'twoclick_buttons_display_flattr' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_flattr'])), 'twoclick_buttons_display_xing' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_xing'])), 'twoclick_buttons_display_googleplus' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_googleplus'])), 'twoclick_buttons_display_facebook_perm' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_facebook_perm'])), 'twoclick_buttons_display_twitter_perm' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_twitter_perm'])), 'twoclick_buttons_display_googleplus_perm' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_googleplus_perm'])), 'twoclick_buttons_display_flattr_perm' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_flattr_perm'])), 'twoclick_buttons_display_xing_perm' => (int) (!empty($_REQUEST['twoclick_buttons_settings']['twoclick_buttons_display_xing_perm'])), 'twoclick_buttons_infotext_facebook' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infotext_facebook']), 'twoclick_buttons_infotext_twitter' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infotext_twitter']), 'twoclick_buttons_infotext_googleplus' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infotext_googleplus']), 'twoclick_buttons_infotext_flattr' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infotext_flattr']), 'twoclick_buttons_infotext_xing' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infotext_xing']), 'twoclick_buttons_infotext_infobutton' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infotext_infobutton']), 'twoclick_buttons_infotext_permaoption' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infotext_permaoption']), 'twoclick_buttons_infolink' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_infolink']), 'twoclick_buttons_facebook_action' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_facebook_action']), 'twoclick_buttons_postthumbnail' => (string) (@$_REQUEST['twoclick_buttons_settings']['twoclick_buttons_postthumbnail']), ); twoclick_buttons_update_options($array_Options); echo '
'; echo '

Einstellungen gespeichert

'; echo '
'; } } ?>


Flattr this

name="twoclick_buttons_settings[twoclick_buttons_display_facebook]" id="twoclick_buttons_settings[twoclick_buttons_display_facebook]" group="twoclick_buttons_display" /> name="twoclick_buttons_settings[twoclick_buttons_display_facebook_perm]" id="twoclick_buttons_settings[twoclick_buttons_display_facebook_perm]" group="twoclick_buttons_display" />
name="twoclick_buttons_settings[twoclick_buttons_display_twitter]" id="twoclick_buttons_settings[twoclick_buttons_display_twitter]" group="twoclick_buttons_display" /> name="twoclick_buttons_settings[twoclick_buttons_display_twitter_perm]" id="twoclick_buttons_settings[twoclick_buttons_display_twitter_perm]" group="twoclick_buttons_display" />
name="twoclick_buttons_settings[twoclick_buttons_display_googleplus]" id="twoclick_buttons_settings[twoclick_buttons_display_googleplus]" group="twoclick_buttons_display" /> name="twoclick_buttons_settings[twoclick_buttons_display_googleplus_perm]" id="twoclick_buttons_settings[twoclick_buttons_display_googleplus_perm]" group="twoclick_buttons_display" />
name="twoclick_buttons_settings[twoclick_buttons_display_flattr]" id="twoclick_buttons_settings[twoclick_buttons_display_flattr]" group="twoclick_buttons_display" /> name="twoclick_buttons_settings[twoclick_buttons_display_flattr_perm]" id="twoclick_buttons_settings[twoclick_buttons_display_flattr_perm]" group="twoclick_buttons_display" />
name="twoclick_buttons_settings[twoclick_buttons_display_xing]" id="twoclick_buttons_settings[twoclick_buttons_display_xing]" group="twoclick_buttons_display" /> name="twoclick_buttons_settings[twoclick_buttons_display_xing_perm]" id="twoclick_buttons_settings[twoclick_buttons_display_flattr_xing]" group="twoclick_buttons_display" />
name="twoclick_buttons_settings[twoclick_buttons_display_page]" id="twoclick_buttons_settings[twoclick_buttons_display_page]" group="twoclick_buttons_display" />
name="twoclick_buttons_settings[twoclick_buttons_display_index]" id="twoclick_buttons_settings[twoclick_buttons_display_index]" group="twoclick_buttons_display" />
name="twoclick_buttons_settings[twoclick_buttons_display_year]" id="twoclick_buttons_settings[twoclick_buttons_display_year]" group="twoclick_buttons_display" /> ()
name="twoclick_buttons_settings[twoclick_buttons_display_month]" id="twoclick_buttons_settings[twoclick_buttons_display_month]" group="twoclick_buttons_display" /> ()
name="twoclick_buttons_settings[twoclick_buttons_display_day]" id="twoclick_buttons_settings[twoclick_buttons_display_day]" group="twoclick_buttons_display" /> ()
name="twoclick_buttons_settings[twoclick_buttons_display_search]" id="twoclick_buttons_settings[twoclick_buttons_display_search]" group="twoclick_buttons_display" /> ()
name="twoclick_buttons_settings[twoclick_buttons_display_category]" id="twoclick_buttons_settings[twoclick_buttons_display_category]" group="twoclick_buttons_display" /> ()
name="twoclick_buttons_settings[twoclick_buttons_display_tag]" id="twoclick_buttons_settings[twoclick_buttons_display_tag]" group="twoclick_buttons_display" /> ()

[twoclick_buttons] inside your articles.', 'twoclick-socialmedia'); ?>
<?php if(function_exists(\'get_twoclick_buttons\')) {get_twoclick_buttons(get_the_ID());}?> inside your template. It\'s using all settings for "Display". Note: It will only work in single post or page templates. Not in any loop.', 'twoclick-socialmedia'); ?>

(optional)', 'twoclick-socialmedia'); ?>
(optional)', 'twoclick-socialmedia'); ?>

not \'RT @yourname\'.', 'twoclick-socialmedia'); ?>
name="twoclick_buttons_settings[twoclick_buttons_twitter_tweettext]" id="twoclick_buttons_settings[twoclick_buttons_twitter_tweettext_default]" group="twoclick_buttons_twitter_tweettext" />
name="twoclick_buttons_settings[twoclick_buttons_twitter_tweettext]" id="twoclick_buttons_settings[twoclick_buttons_twitter_tweettext_own]" group="twoclick_buttons_twitter_tweettext" />

Posttitle » Blogtitle"', 'twoclick-socialmedia'); ?>

name="twoclick_buttons_settings[twoclick_buttons_twitter_hashtags]" id="twoclick_buttons_settings[twoclick_buttons_twitter_hashtags]" group="twoclick_buttons_twitter_tweettext" />

ID, 'twoclick_buttons') == null) { if(twoclick_buttons_get_option($where) == 'beforeandafter') { /** * Vor und nach dem Beitrag einfügen */ return $button . $content . $button; } else if(twoclick_buttons_get_option($where) == 'before') { /** * Vor dem Beitrag einfügen */ return $button . $content; } else { /** * Nach dem Beitrag einfügen */ return $content . $button; } } else { /** * Keinen Button einfügen */ return $content; } } } /** * Post Excerpt generieren, wenn noch keiner da ist ... * * @since 0.10 */ if(!function_exists('twoclick_buttons_generate_post_excerpt')) { function twoclick_buttons_generate_post_excerpt($excerpt, $maxlength) { if(function_exists('strip_shortcodes')) { $excerpt = strip_shortcodes($excerpt); } $excerpt = trim($excerpt); // Now lets strip any tags which dont have balanced ends // Need to put NGgallery tags in there - there are a lot of them and they are all different. $open_tags = "[simage,[[CP,[gallery,[imagebrowser,[slideshow,[tags,[albumtags,[singlepic,[album"; $close_tags = "],]],],],],],],],]"; $open_tag = explode(",", $open_tags); $close_tag = explode(",", $close_tags); foreach(array_keys($open_tag) as $key) { if(preg_match_all('/' . preg_quote($open_tag[$key]) . '(.*?)' . preg_quote($close_tag[$key]) . '/i', $excerpt, $matches)) { $excerpt = str_replace($matches[0], "", $excerpt); } } // END foreach(array_keys($open_tag) as $key) $excerpt = preg_replace('#().*?()#', '$1$2', $excerpt); // Support for qTrans if(function_exists('qtrans_use')) { global $q_config; $excerpt = qtrans_use($q_config['default_language'], $excerpt); } // END if(function_exists('qtrans_use')) $excerpt = strip_tags($excerpt); // Now lets strip off the youtube stuff. preg_match_all('#http://(www.youtube|youtube|[A-Za-z]{2}.youtube)\.com/(watch\?v=|w/\?v=|\?v=)([\w-]+)(.*?)player_embedded#i', $excerpt, $matches); $excerpt = str_replace($matches[0], "", $excerpt); preg_match_all('#http://(www.youtube|youtube|[A-Za-z]{2}.youtube)\.com/(watch\?v=|w/\?v=|\?v=|embed/)([\w-]+)(.*?)#i', $excerpt, $matches); $excerpt = str_replace($matches[0], "", $excerpt); if(strlen($excerpt) > $maxlength) { # If we've got multibyte support then we need to make sure we get the right length - Thanks to Kensuke Akai for the fix if(function_exists('mb_strimwidth')) { $excerpt = mb_strimwidth($excerpt, 0, $maxlength, " ..."); } else { $excerpt = current(explode("SJA26666AJS", wordwrap($excerpt, $maxlength, "SJA26666AJS"))) . " ..."; } // END if(function_exists('mb_strimwidth')) } // END if(strlen($excerpt) > $maxlength) return $excerpt; } // END function twoclick_buttons_generate_post_excerpt($excerpt, $maxlength) } // END if(!function_exists('twoclick_buttons_generate_post_excerpt')) /** * Tweettext einbinden * * @since 0.14 */ if(!function_exists('twoclick_buttons_get_tweettext')) { function twoclick_buttons_get_tweettext() { $twitter_hashtags = twoclick_buttons_get_hashtags(); $tweettext = ''; if (twoclick_buttons_get_option('twoclick_buttons_twitter_tweettext') == 'own') { if(twoclick_buttons_get_option('twoclick_buttons_twitter_tweettext') == 'own' && strlen(twoclick_buttons_get_option('twoclick_buttons_twitter_tweettext_owntext')) == 0) { $tweettext = get_the_title() . ' » ' . get_bloginfo('name') . $twitter_hashtags; } else { $tweettext = twoclick_buttons_get_option('twoclick_buttons_twitter_tweettext_owntext') . $twitter_hashtags; } } else { if(twoclick_buttons_get_option('twoclick_buttons_twitter_tweettext_default_as') == 'posttitle-blogtitle') { $tweettext = get_the_title() . ' » ' . get_bloginfo('name') . $twitter_hashtags; } elseif(twoclick_buttons_get_option('twoclick_buttons_twitter_tweettext_default_as') == 'posttitle') { $tweettext = get_the_title() . $twitter_hashtags; } } // return twoclick_buttons_shorten_tweettext($tweettext); return twoclick_buttons_shorten_tweettext(html_entity_decode($tweettext, ENT_QUOTES, get_bloginfo('charset'))); } } /** * Tweettext kürzen * * @since 0.14 */ if(!function_exists('twoclick_buttons_shorten_tweettext')) { function twoclick_buttons_shorten_tweettext($tweettext) { $array_tweettextData = array( 'length_tweettext_maximal' => 140, 'length_tweettext' => strlen($tweettext), 'length_twitter_name' => strlen(' via @' . twoclick_buttons_get_option('twoclick_buttons_twitter_reply')), 'length_tweetlink' => 20, 'length_more' => strlen(' [...]') ); $length_new_tweettext = $array_tweettextData['length_tweettext_maximal'] - $array_tweettextData['length_twitter_name'] - $array_tweettextData['length_tweetlink'] - $array_tweettextData['length_more']; if($array_tweettextData['length_tweettext'] > $length_new_tweettext) { $tweettext = substr($tweettext, 0, $length_new_tweettext) . ' [...]'; } return $tweettext; } } /** * Tags des Artikels in #Hashtags umwandeln * * @since 0.14 */ if(!function_exists('twoclick_buttons_get_hashtags')) { function twoclick_buttons_get_hashtags() { /** * Sollen #Hashtags angezeigt werden? */ if (twoclick_buttons_get_option('twoclick_buttons_twitter_hashtags') == '1') { $hashtags = strip_tags(get_the_tag_list(' #', ' #', '')); } else { $hashtags = ''; } return $hashtags; } } /** * HTML generieren. * * @since 0.1 */ if(!function_exists('twoclick_buttons_generate_html')) { function twoclick_buttons_generate_html($var_sPostID = '') { if($var_sPostID == '') { $var_sPostID = get_the_ID(); } return twoclick_buttons_get_js($var_sPostID); } } /** * Template-Tag zur Verfügung stellen. * Einbindung: * * * @since 0.18 */ if(!function_exists('get_twoclick_buttons')) { function get_twoclick_buttons($var_sPostId) { if(twoclick_buttons_get_option('twoclick_buttons_where') == 'template') { /** * Wenn der Button nicht auf CMS-Seiten angezeigt werden soll. */ echo twoclick_buttons_generate_html($var_sPostId); } } } /** * Dummybilder bereit stellen. * * Je nach Sprache des Blogs werden verschiedene Dummybilder bereit gestellt. * Momentan nur für Deutsch (de_DE) und als Fallback Englisch. * * @since 0.14 * @todo Logik zur Erkennung der Bilder einbauen, damit nur die wirklichen Unterschiede bei den Sprachen zu default erwähnt werden müssen. */ if(!function_exists('twoclick_buttons_get_dummy_images')) { function twoclick_buttons_get_dummy_images($var_sLang = '', $var_sNetwork = '') { $var_sPluginsUrl = plugin_dir_url(__FILE__); $var_sPluginsPath = plugin_dir_path(__FILE__); if($var_sLang == '') { $var_sLang = 'default'; } // Dummybilder // $array_DummyImages = array( // 'default' => array( // 'facebook-dummy-image-recommend' => $var_sPluginsUrl . 'images/facebook-dummy-image-recommend.png', // 'facebook-dummy-image-like' => $var_sPluginsUrl . 'images/facebook-dummy-image-like.png', // 'twitter-dummy-image' => $var_sPluginsUrl . 'images/twitter-dummy-image-tweet.png', // 'googleplus-dummy-image' => $var_sPluginsUrl . 'images/googleplus-dummy-image-gplusone.png', // 'flattr-dummy-image' => $var_sPluginsUrl . 'images/flattr-dummy-image-flattr.png', // 'xing-dummy-image' => $var_sPluginsUrl . 'images/xing-dummy-image-xing.png' // ), // 'de_DE' => array( // 'facebook-dummy-image-recommend' => $var_sPluginsUrl . 'images/facebook-dummy-image-empfehlen.png', // 'facebook-dummy-image-like' => $var_sPluginsUrl . 'images/facebook-dummy-image-gefaellt-mir.png', // 'twitter-dummy-image' => $var_sPluginsUrl . 'images/twitter-dummy-image-twittern.png', // 'googleplus-dummy-image' => $var_sPluginsUrl . 'images/googleplus-dummy-image-gplusone.png', // 'flattr-dummy-image' => $var_sPluginsUrl . 'images/flattr-dummy-image-flattr.png', // 'xing-dummy-image' => $var_sPluginsUrl . 'images/xing-dummy-image-xing.png' // ) // ); $array_DummyImages = array( 'default' => array( 'facebook-dummy-image-recommend' => array( 'image' => $var_sPluginsUrl . 'images/facebook-dummy-image-recommend.png', 'width' => '91', 'height' => '20' ), 'facebook-dummy-image-like' => array( 'image' => $var_sPluginsUrl . 'images/facebook-dummy-image-like.png', 'width' => '52', 'height' => '20' ), 'twitter-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/twitter-dummy-image-tweet.png', 'width' => '55', 'height' => '20' ), 'googleplus-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/googleplus-dummy-image-gplusone.png', 'width' => '32', 'height' => '20' ), 'flattr-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/flattr-dummy-image-flattr.png', 'width' => '54', 'height' => '20' ), 'xing-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/xing-dummy-image-xing.png', 'width' => '55', 'height' => '20' ) ), 'de_DE' => array( 'facebook-dummy-image-recommend' => array( 'image' => $var_sPluginsUrl . 'images/facebook-dummy-image-empfehlen.png', 'width' => '83', 'height' => '20' ), 'facebook-dummy-image-like' => array( 'image' => $var_sPluginsUrl . 'images/facebook-dummy-image-gefaellt-mir.png', 'width' => '83', 'height' => '20' ), 'twitter-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/twitter-dummy-image-twittern.png', 'width' => '64', 'height' => '20' ), 'googleplus-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/googleplus-dummy-image-gplusone.png', 'width' => '32', 'height' => '20' ), 'flattr-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/flattr-dummy-image-flattr.png', 'width' => '54', 'height' => '20' ), 'xing-dummy-image' => array( 'image' => $var_sPluginsUrl . 'images/xing-dummy-image-xing.png', 'width' => '55', 'height' => '20' ) ) ); if(array_key_exists($var_sLang, $array_DummyImages)) { $array_DummyImagesReturn = $array_DummyImages[$var_sLang]; } else { $array_DummyImagesReturn = $array_DummyImages['default']; } return $array_DummyImagesReturn; } } /** * CSS in den Head auslagern. * * @since 0.1 */ if(!function_exists('twoclick_buttons_head')) { function twoclick_buttons_head() { if(!is_admin()) { $var_sCss = plugins_url(basename(dirname(__FILE__)) . '/css/socialshareprivacy.css'); echo '' . "\n" . '' . "\n"; echo twoclick_buttons_opengraph_tags(); } } } /** * Schreibe OpenGraph-Tags und Artikelbild in den -Bereich. * * @since 0.7 */ if(!function_exists('twoclick_buttons_opengraph_tags')) { function twoclick_buttons_opengraph_tags() { global $post; /* Nur Einzelartikel */ if(is_feed() || is_trackback() || !is_singular()) { return; } $array_Image = ''; /** * Abfrage ob das Theme Post Thumbnails unterstützt. * Einige Themes tun das einfach nicht. * * @since 0.7.1 */ if(function_exists('get_post_thumbnail_id')) { $array_Image = wp_get_attachment_image_src(get_post_thumbnail_id($GLOBALS['post']->ID)); } if(is_array($array_Image)) { $var_sFaceBookThumbnail = $array_Image['0']; } else { $var_sDefaultThumbnail = ''; $var_sOutput = preg_match_all('//i', $GLOBALS['post']->post_content, $array_Matches); if($var_sOutput > 0) { $var_sFaceBookThumbnail = $array_Matches[1][0]; } else { if(twoclick_buttons_get_option('twoclick_buttons_postthumbnail') != '') { $var_sFaceBookThumbnail = twoclick_buttons_get_option('twoclick_buttons_postthumbnail'); } else { $var_sFaceBookThumbnail = false; } } } /* Ausgabe */ echo "\n" . '' . "\n"; if($var_sFaceBookThumbnail) { echo sprintf('%s', esc_attr($var_sFaceBookThumbnail), "\n"); } /** * Post Excerpt suchen und eventuell setzen, da sonst bei Facebook und G+ nichts steht. * Sollte der Post keinen eigenen Excerpt haben, wird einer aus dem Artikel extrahiert. * Dieser wird dann, ganz Twitterstyle, auf 140 Zeichen begrenzt. * * @since 0.10 */ if(has_excerpt()) { define('TWOCLICK_POST_EXCERPT', $post->post_excerpt); } else { define('TWOCLICK_POST_EXCERPT', twoclick_buttons_generate_post_excerpt($post->post_content, 400)); } /** * Open:Graph-Tags fuer FB-Like * * @since 0.7 */ echo '' . "\n"; echo '' . "\n"; echo '' . "\n"; echo '' . "\n"; if($var_sFaceBookThumbnail) { echo '' . "\n"; } echo '' . "\n"; echo '' . "\n"; } } /** * JavaScript in den Footer auslagern. * * @since 0.1 */ if(!function_exists('twoclick_buttons_footer')) { function twoclick_buttons_footer() { if(!is_admin()) { // $var_sJavaScript = plugins_url(basename(dirname(__FILE__)) . '/js/social_bookmarks.js'); $var_sJavaScript = plugins_url(basename(dirname(__FILE__)) . '/js/social_bookmarks-min.js'); echo '' . "\n" . ''; } } } /** * JavaScript für Ausgabe generieren. * * @since 0.4 */ if(!function_exists('twoclick_buttons_get_js')) { function twoclick_buttons_get_js($var_sPostID = '') { if(!is_admin()) { if($var_sPostID == '') { $var_sPostID = get_the_ID(); } $var_sTitle = rawurlencode(get_the_title($var_sPostID)); $var_sTweettext = rawurlencode(twoclick_buttons_get_tweettext()); $var_sShowFacebook = (twoclick_buttons_get_option('twoclick_buttons_display_facebook')) ? 'on' : 'off'; $var_sShowFacebookPerm = (twoclick_buttons_get_option('twoclick_buttons_display_facebook_perm')) ? 'on' : 'off'; $var_sShowTwitter = (twoclick_buttons_get_option('twoclick_buttons_display_twitter')) ? 'on' : 'off'; $var_sShowFlattr = (twoclick_buttons_get_option('twoclick_buttons_display_flattr')) ? 'on' : 'off'; $var_sShowXing = (twoclick_buttons_get_option('twoclick_buttons_display_xing')) ? 'on' : 'off'; $var_sShowTwitterPerm = (twoclick_buttons_get_option('twoclick_buttons_display_twitter_perm')) ? 'on' : 'off'; $var_sShowGoogleplus = (twoclick_buttons_get_option('twoclick_buttons_display_googleplus')) ? 'on' : 'off'; $var_sShowGoogleplusPerm = (twoclick_buttons_get_option('twoclick_buttons_display_googleplus_perm')) ? 'on' : 'off'; $var_sShowFlattrPerm = (twoclick_buttons_get_option('twoclick_buttons_display_flattr_perm')) ? 'on' : 'off'; $var_sShowXingPerm = (twoclick_buttons_get_option('twoclick_buttons_display_xing_perm')) ? 'on' : 'off'; $var_sCss = plugins_url(basename(dirname(__FILE__)) . '/css/socialshareprivacy.css'); $var_sXingLib = plugins_url(basename(dirname(__FILE__)) . '/libs/xing.php'); $var_sPostExcerpt = ''; if(is_singular()) { $var_sPostExcerpt = rawurlencode(TWOCLICK_POST_EXCERPT); } else { $var_sPostExcerpt = rawurlencode(twoclick_buttons_generate_post_excerpt(get_the_content(), 400)); $var_sShowFacebookPerm = 'off'; $var_sShowTwitterPerm = 'off'; $var_sShowGoogleplusPerm = 'off'; $var_sShowFlattrPerm = 'off'; $var_sShowXingPerm = 'off'; } /** * Link zusammenbauen, auch wenn Optionen übergeben werden. * * @since 0.16 */ if(isset($_GET) && count($_GET) != '0') { $var_sPermalink = (isset($_SERVER['HTTPS'])?'https':'http').'://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; } else { $var_sPermalink = get_permalink($var_sPostID); } // Infotexte $var_sInfotextFacebook = ''; if(twoclick_buttons_get_option('twoclick_buttons_infotext_facebook') != '') { // $var_sInfotextFacebook = '\'txt_info\' : \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_facebook') . '\','; $var_sInfotextFacebook = '\'txt_info\' => \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_facebook') . '\''; } $var_sInfotextTwitter = ''; if(twoclick_buttons_get_option('twoclick_buttons_infotext_twitter') != '') { // $var_sInfotextTwitter = '\'txt_info\' : \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_twitter') . '\','; $var_sInfotextTwitter = '\'txt_info\' => \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_twitter') . '\''; } $var_sInfotextGoogleplus = ''; if(twoclick_buttons_get_option('twoclick_buttons_infotext_googleplus') != '') { // $var_sInfotextGoogleplus = '\'txt_info\' : \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_googleplus') . '\','; $var_sInfotextGoogleplus = '\'txt_info\' => \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_googleplus') . '\''; } $var_sInfotextFlattr = ''; if(twoclick_buttons_get_option('twoclick_buttons_infotext_flattr') != '') { // $var_sInfotextFlattr = '\'txt_info\' : \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_flattr') . '\','; $var_sInfotextFlattr = '\'txt_info\' => \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_flattr') . '\''; } $var_sInfotextXing = ''; if(twoclick_buttons_get_option('twoclick_buttons_infotext_xing') != '') { // $var_sInfotextXing = '\'txt_info\' : \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_xing') . '\','; $var_sInfotextXing = '\'txt_info\' => \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_xing') . '\''; } // $var_sInfotextInfobutton = ''; // if(twoclick_buttons_get_option('twoclick_buttons_infotext_infobutton') != '') { // $var_sInfotextInfobutton = '\'txt_help\' : \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_infobutton') . '\','; // } // $var_sInfotextPermaoption = ''; // if(twoclick_buttons_get_option('twoclick_buttons_infotext_permaoption') != '') { // $var_sInfotextPermaoption = '\'settings_perma\' : \'' . twoclick_buttons_get_option('twoclick_buttons_infotext_permaoption') . '\','; // } // $var_sInfolink = ''; // if(twoclick_buttons_get_option('twoclick_buttons_infolink') != '') { // $var_sInfolink = '\'info_link\' : \'' . trim(twoclick_buttons_get_option('twoclick_buttons_infolink')) . '\','; // } // Dummybilder holen. $array_DummyImages = twoclick_buttons_get_dummy_images(get_locale()); // Sprache für Xing und Twitter $var_sButtonLanguage = 'de'; if(get_locale() != 'de_DE') { $var_sButtonLanguage = 'en'; } $var_sFacebookAction = (twoclick_buttons_get_option('twoclick_buttons_facebook_action')) ? twoclick_buttons_get_option('twoclick_buttons_facebook_action') : 'recommend'; // $var_sJavaScript = 'jQuery(document).ready(function($){ // if($(\'.twoclick_social_bookmarks_post_' . $var_sPostID . '\')){ // $(\'.twoclick_social_bookmarks_post_' . $var_sPostID . '\').socialSharePrivacy({ // services : { // facebook : { // \'dummy_img\' : \'' . $array_DummyImages['facebook-dummy-image-' . $var_sFacebookAction]['image'] . '\', // \'dummy_img_width\' : \'' . $array_DummyImages['facebook-dummy-image-' . $var_sFacebookAction]['width'] . '\', // \'dummy_img_height\': \'' . $array_DummyImages['facebook-dummy-image-' . $var_sFacebookAction]['height'] . '\', // \'status\' : \'' . $var_sShowFacebook . '\', // ' . $var_sInfotextFacebook . ' // \'perma_option\' : \'' . $var_sShowFacebookPerm . '\', // \'action\' : \'' . twoclick_buttons_get_option('twoclick_buttons_facebook_action') . '\', // \'language\' : \'' . get_locale() . '\' // }, // twitter : { // \'reply_to\' : \'' . twoclick_buttons_get_option('twoclick_buttons_twitter_reply') . '\', // \'dummy_img\' : \'' . $array_DummyImages['twitter-dummy-image']['image'] . '\', // \'dummy_img_width\' : \'' . $array_DummyImages['twitter-dummy-image']['width'] . '\', // \'dummy_img_height\': \'' . $array_DummyImages['twitter-dummy-image']['height'] . '\', // \'tweet_text\' : \'' . $var_sTweettext . '\', // \'status\' : \'' . $var_sShowTwitter . '\', // ' . $var_sInfotextTwitter . ' // \'perma_option\' : \'' . $var_sShowTwitterPerm . '\', // \'language\' : \'' . $var_sButtonLanguage . '\' // }, // gplus : { // \'dummy_img\' : \'' . $array_DummyImages['googleplus-dummy-image']['image'] . '\', // \'dummy_img_width\' : \'' . $array_DummyImages['googleplus-dummy-image']['width'] . '\', // \'dummy_img_height\': \'' . $array_DummyImages['googleplus-dummy-image']['height'] . '\', // \'status\' : \'' . $var_sShowGoogleplus . '\', // ' . $var_sInfotextGoogleplus . ' // \'perma_option\' : \'' . $var_sShowGoogleplusPerm . '\' // }, // flattr : { // \'uid\' : \'' . twoclick_buttons_get_option('twoclick_buttons_flattr_uid') . '\', // \'dummy_img\' : \'' . $array_DummyImages['flattr-dummy-image']['image'] . '\', // \'dummy_img_width\' : \'' . $array_DummyImages['flattr-dummy-image']['width'] . '\', // \'dummy_img_height\': \'' . $array_DummyImages['flattr-dummy-image']['height'] . '\', // \'status\' : \'' . $var_sShowFlattr . '\', // \'the_title\' : \'' . $var_sTitle . '\', // \'the_excerpt\' : \'' . $var_sPostExcerpt . '\', // ' . $var_sInfotextFlattr . ' // \'perma_option\' : \'' . $var_sShowFlattrPerm . '\' // }, // xing : { // \'dummy_img\' : \'' . $array_DummyImages['xing-dummy-image']['image'] . '\', // \'dummy_img_width\' : \'' . $array_DummyImages['xing-dummy-image']['width'] . '\', // \'dummy_img_height\': \'' . $array_DummyImages['xing-dummy-image']['height'] . '\', // \'status\' : \'' . $var_sShowXing . '\', // ' . $var_sInfotextXing . ' // \'perma_option\' : \'' . $var_sShowXingPerm . '\', // \'language\' : \'' . $var_sButtonLanguage . '\', // \'xing_lib\' : \'' . $var_sXingLib . '\' // } // }, // ' . $var_sInfotextInfobutton . ' // ' . $var_sInfotextPermaoption . ' // ' . $var_sInfolink . ' // \'css_path\' : \'' . $var_sCss . '\', // \'uri\' : \'' . $var_sPermalink . '\' // }); // } // });'; $array_ButtonData = array( 'services' => array( 'facebook' => array( 'dummy_img' => $array_DummyImages['facebook-dummy-image-' . $var_sFacebookAction]['image'], 'dummy_img_width' => $array_DummyImages['facebook-dummy-image-' . $var_sFacebookAction]['width'], 'dummy_img_height' => $array_DummyImages['facebook-dummy-image-' . $var_sFacebookAction]['height'], 'status' => $var_sShowFacebook, $var_sInfotextFacebook, 'perma_option' => $var_sShowFacebookPerm, 'action' => twoclick_buttons_get_option('twoclick_buttons_facebook_action'), 'language' => get_locale() ), 'twitter' => array( 'reply_to' => twoclick_buttons_get_option('twoclick_buttons_twitter_reply'), 'dummy_img' => $array_DummyImages['twitter-dummy-image']['image'], 'dummy_img_width' => $array_DummyImages['twitter-dummy-image']['width'], 'dummy_img_height' => $array_DummyImages['twitter-dummy-image']['height'], 'tweet_text' => rawurlencode(twoclick_buttons_get_tweettext()), 'status' => $var_sShowTwitter, $var_sInfotextTwitter, 'perma_option' => $var_sShowTwitterPerm, 'language' => $var_sButtonLanguage ), 'gplus' => array( 'dummy_img' => $array_DummyImages['googleplus-dummy-image']['image'], 'dummy_img_width' => $array_DummyImages['googleplus-dummy-image']['width'], 'dummy_img_height' => $array_DummyImages['googleplus-dummy-image']['height'], 'status' => $var_sShowGoogleplus, $var_sInfotextGoogleplus, 'perma_option' => $var_sShowGoogleplusPerm ), 'flattr' => array( 'uid' => twoclick_buttons_get_option('twoclick_buttons_flattr_uid'), 'dummy_img' => $array_DummyImages['flattr-dummy-image']['image'], 'dummy_img_width' => $array_DummyImages['flattr-dummy-image']['width'], 'dummy_img_height' => $array_DummyImages['flattr-dummy-image']['height'], 'status' => $var_sShowFlattr, 'the_title' => $var_sTitle, 'the_excerpt' => $var_sPostExcerpt, $var_sInfotextFlattr, 'perma_option' => $var_sShowFlattrPerm ), 'xing' => array( 'dummy_img' => $array_DummyImages['xing-dummy-image']['image'], 'dummy_img_width' => $array_DummyImages['xing-dummy-image']['width'], 'dummy_img_height' => $array_DummyImages['xing-dummy-image']['height'], 'status' => $var_sShowXing, $var_sInfotextXing, 'perma_option' => $var_sShowXingPerm, 'language' => $var_sButtonLanguage, 'xing_lib' => $var_sXingLib ) ), 'links' => array( 'permalink' => $var_sPermalink ), 'txt_help' => (twoclick_buttons_get_option('twoclick_buttons_infotext_infobutton') != '') ? twoclick_buttons_get_option('twoclick_buttons_infotext_infobutton') : '', 'settings_perma' => (twoclick_buttons_get_option('twoclick_buttons_infotext_permaoption') != '') ? twoclick_buttons_get_option('twoclick_buttons_infotext_permaoption') : '', 'info_link' => (twoclick_buttons_get_option('twoclick_buttons_infolink') != '') ? twoclick_buttons_get_option('twoclick_buttons_infolink') : '', 'css_path' => $var_sCss, 'uri' => $var_sPermalink ); $var_sJavaScript = 'jQuery(document).ready(function($){ if($(\'.twoclick_social_bookmarks_post_' . $var_sPostID . '\')){ $(\'.twoclick_social_bookmarks_post_' . $var_sPostID . '\').socialSharePrivacy(' . json_encode($array_ButtonData) . '); } });'; // return preg_replace('/\r|\n/s', '', '' . $var_sJavaScript); return ''; } } } /** * Changelog bei Pluginupdate ausgeben. * * @since 0.1 */ if(!function_exists('twoclick_buttons_update_notice')) { function twoclick_buttons_update_notice() { $array_2CSMB_Data = get_plugin_data(__FILE__); $var_sUserAgent = 'Mozilla/5.0 (X11; Linux x86_64; rv:5.0) Gecko/20100101 Firefox/5.0 WorPress Plugin 2-Click Social Media Buttons (Version: ' . $array_2CSMB_Data['Version'] . ') running on: ' . get_bloginfo('url'); $url_readme = 'http://plugins.trac.wordpress.org/browser/2-click-socialmedia-buttons/trunk/readme.txt?format=txt'; $data = ''; if(ini_get('allow_url_fopen')) { $data = file_get_contents($url_readme); } else { if(function_exists('curl_init')) { $cUrl_Channel = curl_init(); curl_setopt($cUrl_Channel, CURLOPT_URL, $url_readme); curl_setopt($cUrl_Channel, CURLOPT_RETURNTRANSFER, 1); curl_setopt($cUrl_Channel, CURLOPT_USERAGENT, $var_sUserAgent); $data = curl_exec($cUrl_Channel); curl_close($cUrl_Channel); } // END if(function_exists('curl_init')) } // END if(ini_get('allow_url_fopen')) if($data) { $matches = null; $regexp = '~==\s*Changelog\s*==\s*=\s*[0-9.]+\s*=(.*)(=\s*' . preg_quote($array_2CSMB_Data['Version']) . '\s*=|$)~Uis'; if(preg_match($regexp, $data, $matches)) { $changelog = (array) preg_split('~[\r\n]+~', trim($matches[1])); echo '
What\'s new:'; $ul = false; $version = 99; foreach($changelog as $index => $line) { if(version_compare($version, $array_2CSMB_Data['Version'], ">")) { if(preg_match('~^\s*\*\s*~', $line)) { if(!$ul) { echo '
    '; $ul = true; } // END if(!$ul) $line = preg_replace('~^\s*\*\s*~', '', $line); echo '
  • ' . $line . '
  • '; } else { if($ul) { echo '
'; $ul = false; } // END if($ul) $version = trim($line, " ="); echo '

' . htmlspecialchars($line) . '

'; } // END if(preg_match('~^\s*\*\s*~', $line)) } // END if(version_compare($version, TWOCLICK_SOCIALMEDIA_BUTTONS_VERSION,">")) } // END foreach($changelog as $index => $line) if($ul) { echo '
'; } // END if($ul) echo '
'; } // END if(preg_match($regexp, $data, $matches)) } else { /** * Returning if we can't use file_get_contents or cURL */ return; } // END if($data) } // END function twoclick_buttons_update_notice() } // END if(!function_exists('twoclick_buttons_update_notice')) /** * Variablen registrieren. * * @since 0.4 */ if(!function_exists('twoclick_buttons_init')) { function twoclick_buttons_init() { if(function_exists('register_setting')) { register_setting('twoclick_buttons-options', 'twoclick_buttons_settings'); } /** * Sprachdatei wählen */ if(function_exists('load_plugin_textdomain')) { load_plugin_textdomain('twoclick-socialmedia', false, dirname(plugin_basename( __FILE__ )) . '/l10n/'); } } } /** * Optionen updaten ... * * @param array $array_Data * @since 0.4 */ if(!function_exists('twoclick_buttons_update_options')) { function twoclick_buttons_update_options($array_Data) { $array_Options = array_merge((array) get_option('twoclick_buttons_settings'), $array_Data); update_option('twoclick_buttons_settings', $array_Options); wp_cache_set('twoclick_buttons_settings', $array_Options); return; } } /** * Link zur Adminseite in der Pluginübersicht hinzufügen. * @since 1.2.0 */ function twoclick_buttons_settings_link($links, $file) { if($file == '2-click-socialmedia-buttons/2-click-socialmedia-buttons.php' && function_exists('admin_url')) { $settings_link = '' . __('Settings', 'twoclick-socialmedia') . ''; array_unshift( $links, $settings_link); // before the other links } return $links; } /** * Actions abfeuern. * * @since 0.1 */ if(!is_admin()) { /** * jQuery anfordern und bei Bedarf einbinden. * * @since 0.4 */ wp_enqueue_script('jquery'); // Aktionen add_action('wp_head', 'twoclick_buttons_head'); add_action('wp_footer', 'twoclick_buttons_footer'); } /* Nur wenn User auch der Admin ist, sind die Adminoptionen zu sehen */ if(is_admin()) { add_action('admin_menu', 'twoclick_buttons_options'); add_action('admin_init', 'twoclick_buttons_init'); // Updatemeldung if(ini_get('allow_url_fopen') || function_exists('curl_init')) { add_action('in_plugin_update_message-' . plugin_basename(__FILE__), 'twoclick_buttons_update_notice'); } } /** * Filter zum Blog hinzufügen. * * @since 0.1 */ add_filter('the_content', 'twoclick_buttons', 8); add_filter('plugin_action_links', 'twoclick_buttons_settings_link', 9, 2 ); ?>