{"id":48188,"date":"2012-01-17T13:03:34","date_gmt":"2012-01-17T13:03:34","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/wpgplus\/"},"modified":"2014-06-29T22:12:53","modified_gmt":"2014-06-29T22:12:53","slug":"wpgplus","status":"closed","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/wpgplus\/","author":258633,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.8.8.1","stable_tag":"0.8.8.1","tested":"3.9.40","requires":"3.2","requires_php":"","requires_plugins":"","header_name":"WPGplus","header_author":"John Eckman","header_description":"","assets_banners_color":"","last_updated":"2014-06-29 22:12:53","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"http:\/\/johneckman.com","rating":1.8,"author_block_rating":0,"active_installs":20,"downloads":32912,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog","other_notes"],"tags":[],"upgrade_notice":[],"ratings":{"1":"6","2":"1","3":0,"4":"2","5":0},"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.5","0.6","0.7","0.7.1","0.7.2","0.7.3","0.8","0.8.1","0.8.2","0.8.3","0.8.4","0.8.5","0.8.6","0.8.7","0.8.8","0.8.8.1"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[7271,323,185,5131],"plugin_category":[],"plugin_contributors":[83010],"plugin_business_model":[],"class_list":["post-48188","plugin","type-plugin","status-closed","hentry","plugin_tags-application","plugin_tags-blog","plugin_tags-google-plus","plugin_tags-platform","plugin_contributors-johneckman","plugin_committers-johneckman"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/wpgplus.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>WPGPlus posts your blog posts to Google+ when published on WordPress blog.<\/p>\n\n<p>Posts are made to \"Public\" circle. If you include an excerpt (using the\npost excerpt box, not just the \"teaser\" before the  tag) it will\nbe used, otherwise post-content is used.<\/p>\n\n<p>This plugin requires PHP 5 and a compatible transport layer for WordPress\nHTTP API - most likely this means cURL.<\/p>\n\n<p>Still working on cleaning up the output, working on getting\nGoogle+ to recognize the links posted, show images, etc.<\/p>\n\n<p>This plugin is based on Dmitry Sandalov's standalone PHP script for \npublishing to Google+ from php.<\/p>\n\n<!--section=installation-->\n<ol>\n<li><p>Copy the entire wpgplus directory into your wordpress plugins folder,\n\/wp-content\/plugins\/<\/p><\/li>\n<li><p>Login to Wordpress Admin and activate the plugin<\/p><\/li>\n<li><p>Using the WPGPlus menu, (Dashboard-&gt;Settings-&gt;WPGPlus) fill \nin the appropriate information including the email address you\nuse to sign in to Google+ and your Password<\/p><\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt>Why aren't my custom post types or pages posted?<\/dt>\n<dd><p>WPGPlus is currently only set to post to Google+ when the post type is \"post.\"<\/p>\n\n<p>To enable other post types, open wpgplus.php and find the \"if\" statement in the\nbeginning of the wpgplus_update_profile_status() function, where the code checks\nfor if post_type is not equal to 'post' - comment that whole if() { } section out\nto get all types, or add into the if condition all the post types you want to \nspecifically include.<\/p><\/dd>\n<dt>Why doesn't it work for me?<\/dt>\n<dd><p>Hard to say. Most likely this is due to either:\n * server config (no available HTTP transport that can POST to and GET from google+)\n * google+ account config (if your google+ account has two factor authentication\n   set, or expects confirmation of your mobile phone number, or other security\n   issues\n * google+ waiting for you to accept the mobile terms of service\nYou can enable debugging in the wpgplus settings page and see if that produces\nuseful output.<\/p><\/dd>\n<dt>Can I post to pages instead of my profile?<\/dt>\n<dd><p>Not yet. Working on it.<\/p><\/dd>\n<dt>Why does the plugin ask for my Google+ username and password? Why not use OAuth?<\/dt>\n<dd><p>Because for now the Google+ API offered by Google is read-only - no posting allowed.<\/p>\n\n<p>As soon as they release a read-write API I will work on switching to it and \neliminate the need for username and password to be in the database.<\/p>\n\n<p>If you really don't want your username and password in the WordPress database, \nyou could hack the wpgplus_login_data() function and hard-code your username and\npassword into it - they'd still be accessible to someone with filesystem access.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.8.8.1<\/h4>\n\n<ul>\n<li>Too quick to deploy that one<\/li>\n<\/ul>\n\n<h4>0.8.8<\/h4>\n\n<ul>\n<li>Hopefully resolve the https:\/\/plus.google.comhttps issue<\/li>\n<\/ul>\n\n<h4>0.8.7<\/h4>\n\n<ul>\n<li>Added better checking for redirects where the 'baseurl' is not returned as part of the\nredirect and has to be manually added. For now I'm just adding plus.google.com but \nultimately this will need to be parameterized<\/li>\n<li>Request form directly at \/app\/basic\/share\/ rather than old url  <\/li>\n<\/ul>\n\n<h4>0.8.6<\/h4>\n\n<ul>\n<li>Restarting development. Got a test version working with Google+ in the us - changes\nto all the redirects it goes through, now using \/app\/basic\/share\/ instead of the \nolder mobile version<\/li>\n<li>Updating notes in the readme to clarify what does not work - 2 factor auth, non-US<\/li>\n<\/ul>\n\n<h4>0.8.5<\/h4>\n\n<ul>\n<li>Setting redirection back to 5 on the login check. I'd prefer not to rely on redirection\nthis way, given that on some hosts curl redirection isn't allowed, but that will require\na more fundamental rewrite I haven't had time to do. (I'd have to handle the redirection\nmyself as current is done during the posting process, and all the variants for different\nglobal versions of google+<\/li>\n<\/ul>\n\n<h4>0.8.4<\/h4>\n\n<ul>\n<li>Was not checking for wp_error object on first request, now we are<\/li>\n<\/ul>\n\n<h4>0.8.3<\/h4>\n\n<ul>\n<li>One user reported multiple posts to Google+ for one WordPress post, so I tightened\nthe final POST to google+ to not follow redirects, which should not be required. <\/li>\n<\/ul>\n\n<h4>0.8.2<\/h4>\n\n<ul>\n<li>That's what I get for weekend coding. Left a number of old debug statements\nin the main plugin file that weren't using the new function. <\/li>\n<li>Updated plugin requirements - needs WordPress 3.2 as a major issue with redirection =&gt; 0\nwas fixed in that release. Given 3.4 is out now I'm ok with that. <\/li>\n<\/ul>\n\n<h4>0.8.1<\/h4>\n\n<ul>\n<li>Left an outdated \"echo\" statement in the logout function for 0.8 - fixed<\/li>\n<\/ul>\n\n<h4>0.8<\/h4>\n\n<ul>\n<li>Extensive re-write to be more \"WordPress Like\"<\/li>\n<li>Replaced cURL calls with wp_remote_request, wp_remote_post, and wp_remote_head<\/li>\n<li>Storing cookies returned by Google+ in WordPress transients<\/li>\n<li>Debug is now an option <\/li>\n<\/ul>\n\n<h4>0.7.3<\/h4>\n\n<ul>\n<li>Checked for login form being presented by google else it will fail<\/li>\n<li>Wrapped calls to curl_setopt() for FOLLOWLOCATION - now checks to see if that\nsetting was successful and dies if it was not. <\/li>\n<li>Wrapped fwrite calls for debug.txt in checks for valid file pointer first.<\/li>\n<\/ul>\n\n<h4>0.7.2<\/h4>\n\n<ul>\n<li>Adding further detection for cases where Google+ returns a client-side\nredirect in response to a login request, rather than returning the right form<\/li>\n<\/ul>\n\n<h4>0.7.1<\/h4>\n\n<ul>\n<li>Fixed bug in which message and publish meta were being duplicated<\/li>\n<li>Turned off debug logging including password - not good for production environment<\/li>\n<\/ul>\n\n<h4>0.7<\/h4>\n\n<ul>\n<li>Added more debugging output<\/li>\n<li>Shifted to loadHTML, suppressed warnings from loading DOM<\/li>\n<\/ul>\n\n<h4>0.6<\/h4>\n\n<ul>\n<li>Added post-meta box for Google+ message<\/li>\n<\/ul>\n\n<h4>0.5<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>\n\n<!--section=other_notes-->\n<h3>To-do<\/h3>\n\n<ul>\n<li>Get google+ to recognize URL of permalink and treat it as it does from\nweb client - image, excerpt<\/li>\n<li>Explore full web interface not mobile one, which is limited in functionality<\/li>\n<li>Posting to pages?<\/li>\n<\/ul>","raw_excerpt":"WPGPlus posts your blog posts to Google+ when published on WordPress blog.\n\nCurrently works with plus.google.com accounts, provided:\n - You are NOT us &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/48188","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=48188"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/johneckman"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=48188"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=48188"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=48188"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=48188"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=48188"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=48188"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}