Getting full language support with Twitter buttons isn't possible - api

I'm trying to work out how to do full language control with Twitter because I have most of it, but I don't think it's possible in full. This isn't a newbe question, I think there's a big problem with Twitter.
So imagine I'm trying to set the French language and using this:
View Profile
I have done this:
(1) Set the language in the document
<html lang="fr" />
(2) Added the ?lang=fr parameter so that if JavaScript is off then the fallback (just a text link) opens the profile with the correct language:
View Profile
(3) Added the data-lang="fr" attribute as well:
View Profile
--
So the questions:
(1) Everything works except if JavaScript runs and you click to open a page on twitter.com it never uses the language. So, basically you could have a French website with French language, French Twitter buttons, but when you click a button it always uses English language on twitter.com (unless you turn off JavaScript).
Is it not possible for links to open twitter.com?lang=fr
(2) Is there not an easy way to do this all in one place? In Facebook you just call the API script by selecting the language you want, but that doesn't seem possible with Twitter and it seems very time consuming appending all the extras just to get a different language.

Twitter will determine the language for it's own website when no language is specified (as you'd expect!). If you want to force a language on twitter you need to set the lang attribute in the url such as: http://www.twitter.com/Username?lang=fr
You can only use URL or data attributes to specify a language. Facebook will detect the language settings of the website its widget is embedded in, twitter won't. I don't know how the facebook button works, but on face value, i think twitter is right with this one. If a Spanish person was viewing my English website, I'd prefer twitter to be Spanish still even though my site is English. If i really want to force a specific language i can do, but i wouldn't normally want to force my viewers to a specific language unless it's out of my reasonable control.
If it really annoys you, and your tags aren't rendered dynamically (i.e. the element isnt loaded after DOM ready), you could just run a piece of javascript to detect twitter buttons and append your chosen language to the URLs/data attributes.

Related

How do I connect my appixia app to my prestashop contact page?

I've added a contact button on the title bar but I can't get my contact form to display. Has anyone done this?
First of all, the contact button Module field should point to a new Activity module like VerticalContainerActivity which should contain an HtmlView module in its body. This HtmlView displays your contact page - put the address in its ContentUrl. Most of these steps are identical to what you'll find in this tutorial.
You can see an example of this in the diamonds sample app. Create a new app from the diamond store starting point and see how the contact button is implemented there.
The second important point to remember is that you shouldn't use regular store URLs in your Appixia app. When the user sees them, they would see your Prestashop theme with all the navigation and this will be very confusing inside a mobile app. Instead, make a mobile friendly version of your contact page which doesn't use your Prestashop theme and only shows the contact info content.
Using the Prestashop Contact Form in your Appixia app:
I'm not sure this is a 100% good idea in terms of usability. I don't recommend using a web form for contact in a mobile app.
A mobile phone is a communication device. It is has special integration for making phone calls and sending emails - I really recommend you use these methods instead. Look at the HTML source of this example to see how simple it is to integrate (it's just a link in your HTML).
In order to encourage your users to contact, you need to ask them for as little info as possible. Your website contact form makes your users type in their email address. If they email you directly through their device (with a mailto: link), their correct email will be filled automatically. Same with making a call, when they tap on the link, the number will be dialed automatically for them.
If you really insist on implementing the Prestashop contact form, this will require some Prestashop php games. You should find the contact form controller in the Prestashop source and create the same form (in php or hardcoded HTML) without your website theme. It will be a little annoying because after we submit the form, we also need to make sure the confirmation message is also displayed without your website theme.

Linking to Google PlusOne, without embedding the button (for privacy reasons)

It seems that Google only offers code to embed the +1 button.
However, there are heavy privacy concerns (plus quite some load time) associated with it.
For some pointers about the privacy and legal issues associated with Facebook like and Google +1, see: Like button and privacy concern
A common workaround seems to be a two-click solutionGerman (also discussed on slashdotEnglish), where the first click enables the button (loading the javascript from Google), the second then is on the regular +1 button.
However, I do not want to implement this two-click solution either. Largely because the Google +1 button is ugly as hell, and doesn't fit to the page layout.
What I'm really looking for is a separate web page, where the user can essentially confirm that he likes the page. This page can live on google.com, and essentially this would be the second click. I'm not trying to trick people into +1'ing the page. The second click is all fine with me. I just don't want to force them to load the plusone button (and I don't like its looks).
There seems to be the option of
https://plus.google.com/share?url=<URL>
which however is a share on Google+, not a +1.
I've seen this URL, too:
https://plusone.google.com/_/+1/confirm?hl=en&url=<URL>
(see e.g. here: Adding a Google Plus (one or share) link to an email newsletter) but I cannot submit this form (i.e. doesn't seem to work).
The best working solutions seems to be the two-click approach. :-(
Update: the url, https://plusone.google.com/_/+1/confirm?hl=en&url=<URL> actually does seem to work. It was just my privacy proxy breaking it. Then it seems to be more of a "Google+ share" dialog. I'm not yet happy with this result (in particular, since this doesn't seem to be an advocated approach for Google, and they can at any point consider to ban the site, I guess)
The only officially supported method of +1'ing a URL is with the +1 button. Either always loading or loading it on a second click.
The approach that I'm now looking into is fairly trivial:
I've set up a Google Plus page for the web site, and the "plus" button sends user there. In fact just like the Facebook icon I'm using. Then the users get the full choice of interaction options, including +1, but also circling and sharing.
First of all, this obviously should not violate any g+ policies. Secondly, it is a fairly transparent behaviour for the users. The "plus" button takes them to Google plus, where they see the usual plus UI.
Secondly, it's still just two clicks to "+1". So it is not worse than any other data privacy compliant solution.
I found the solution here.
The problem is, social sites accepts your own "share" forms, but only if the link is URL encoded.
In Wordpress, a custom Google+ button that I'm using without the official API, and it's currently working, is this following code:
google+
Hope it helps, go to the link above for a list of the rest of the social sites links. :)

Google+ +1 Button Snippet+ Problem

I have integrated the Google +1 button into a website ( http://www2.highpoint.edu ).
I tried to use schema.org <meta> tags to provide Name, Description, and Image for the +Snippets information, but it doesn't work.
When I use the +1 button and try to post to Google+ about the website, it picks an image that I don't want. And it won't pick the image I have set with the <meta> tag.
My questions:
How do I get the +Snippet data populated from schema.org metadata?
For a page with 2 or more +1 buttons, can I have different name/description/image for each +1 button? Or must every +1 button on the page use the same metadata?
EDIT
I think it is best to use Open Graph Protocol instead of schema.org. That is, schema.org shouldn't be used at all. Facebook supports Open Graph Protocol, so you can kill 2 birds with 1 stone this way.
More importantly, Facebook provides a great debugging tool that tells you what exactly is getting parsed for a given URL: http://developers.facebook.com/tools/debug
I am still not sure about having multiple +1 buttons on the same page with each +1 button having distinctly different meta data.
In response to question 1:
I checked your page. It looks like you have a normal meta title and description. This should work for the +1 button, but it may take some time for the +1 button to pick up the changes you've made.
If you'd like control of the image, though, you will need to use schema.org markup or open graph as described in the official FAQ: http://code.google.com/apis/+1button/#plus-snippet
And for question 2:
If you are using schema.org markup, the +1 button will read the content for the itemscope nearest the top of the page's source code.
It does not work for me either. I have both Schema.org and Open Graph in the web page (eg. http://r.mycrep.net/3Nkh/), Multiple validators (Facebook's and one other) read info correctly.
I guess that Google still does not support metadata for everybody :-(

Bring Safari to front

I'd like to bring Safari to the front (switch to) but without using a URL, instead I'd like to see the "pages" view so the user can pick an already loaded page. Is this possible?
We open links in Safari and if the user returns to the app and selects the link again, I'd rather let them pick which Safari page to browse instead of opening a new one. I know that if the same URL is called it will open the correct page but the user may have navigated within the original site so the url no longer matches.
Thanks,
Rick
I don't think that its possible, i would use a UIWebView inside your app in order to get that experience you want, you can find the UIWebView apple docs here (http://developer.apple.com/library/ios/documentation/uikit/reference/UIWebView_Class/Reference/Reference.html) and also the equivalence of c# methods here (http://tirania.org/tmp/rosetta.html) hope this helps
Alex
Your app doesn’t get control of Safari’s UI. You might, however, be able to design your site so that it handles navigation via Javascript—AJAX and whatnot—so that the actual page URL doesn't change, and thus so that the page, re-opened from your app, brings up the existing Safari page. Of course that introduces further problems with your pages no longer being bookmarkable, but you might find that an acceptable tradeoff.

Scribd Search Engine Optimization Features for PDF

All recently noticed that PDF documents in Scribd are also SEO friendly for search engines. For example the link http://www.scribd.com/doc/17135767/FREE-by-Chris-Anderson
If you open the page and see the HTML source code, the plain text from the PDF is not presented. However if you open the cached version of the page from Google search it appears a tag html_wrapper which contains the text from the entire PDF document.
Do they display different content depending of User-agent that make the request - ex. browser or bots?
I've heard some SEO practices that don't recommend displaying different content for bots? How bad practice is this from SEO prospective?
this is what google sees
http://webcache.googleusercontent.com/search?q=cache:-LY7o-liYlsJ:www.scribd.com/doc/17135767/FREE-by-Chris-Anderson+site:www.scribd.com/doc/17135767/FREE-by-Chris-Anderson&hl=en&strip=1
yeah, you should not display googlebot different content then a human user, said that there are ways to do ok conditional rendering (i.e.: render for no cookie clients, render for no javascript clients, render for clients without a language header, ...) this kind of rendering can be missleading, but if is not missleading then it might be ok for google. if you do this kind of conditional rendering it's then always a question of intend.