Is there any way to stop Telegram from showing pages from my site as Instant View version? - telegram

I run a blog and distribute my posts in a Telegram channel. One day, I got surprised that links started showing as "Instant View" versions, since I never managed to support this technology (and, tbh, I don't like it either). Later, I discovered that readers that I don't know submitted IV templates to Telegram, and eventually one of them was approved.
I searched for any way to stop Telegram converting my posts into IV version, without success. Is there any (a meta tag, a form, whatever) to ask Telegram to disable IV in links from my domain?
Thanks!

Instant views are implemented via a set of hardcoded XPath rules, so you can change the markup of your website (like, class/id names) or paths (/blog/a1.html → /kek/a1). It can break the rules, and IV won't be shown.
One more trick is to integrate an iframe into the body of articles (or to the end). The reason is that iframes are not supported by the IV engine (the exclusion is embedded youtube). You can set 1×1 size, to make it invisible to users.
Another trick is to integrate an image with src tag leading to some nonexistent path. Telegram server won't be able to fetch the resource, and IV generation will be failed.

No. You can't disable instant view for your blog or site. That's just how Telegram instant view works. It will cache hundreds of sites and crop the content of the articles. You can read more about it here:
https://instantview.telegram.org/
Currently, there's a contest for instant view templates. The goal is to get as many sites working with instant view as possible.

Related

Adopt another site's Open Graph properties

I'm implementing the Open Graph protocol on my site, and I'm curious if it is possible to "adopt" another site's Open Graph properties within my site's web pages.
For example, suppose a user makes a post to my site that contains a link to an article (such as the New York Times). They then share that post on platforms such as Facebook and Twitter, and I want the preview image on those platforms to contain the Open Graph image from the New York Times article web page.
Is this possible?
It's possible, when the user validates the post, you have to check the links inside to target the link of NYT. Then you have to parse yourself the page of the NYT to return the content you want. And finally you use the informations of the OG Tags of the NYT's page.
I think it's a heavy process, and keep in mind that Google penalize heavily the duplicate content from the others websites.

Web crawlers and IFrames

Hypothetical Situation: I have a small obscure website called "miniatureBoltsInCarburetors.com" which provides content about the miniature bolts which hold a carburetor together as well as some general related automotive information. My site also has a single page which allows someone to find the missing bolt in their carburetor, and while no one will access this page directly from my website, one billion other popular automotive sites have embedded this single page in their website using an iframe, yet not included a link back to my site.
I recognize that this question is related to SEO which is considered off topic, however, all of the many SEO related forums discuss the marketing steps one could take, and not the programming steps or strategies, and hope others will allow this question to be answered here.
I wish my site "miniatureBoltsInCarburetors.com" to be ranked high for general automotive searches. What could I do to allow the 3rd party sites which include an iframe back to my site to improve my ranking? Could using JavaScript in the iframe to create a link on the parent page provide any value? What about when my server renders the page, use PHP to get the referring URL from $_SERVER, and include it in the content?
I am providing a solution here. Not sure if this is what you want though.
In your page which is used by other websites in iframe you can put below Javascript. This javascript checks if the webpage is opened inside an iframe or directly in browser.
So using this check when you see it is opened in an iframe. On click on something navigate to your website.
// This works in all browsers
function inIframe () {
try {
return window.self !== window.top;
} catch () {
return true;
}
}
Also for your reference you can check the below URL.
How to prevent my site page to be loaded via 3rd party site frame of iFrame
Hope it helps.
Iframes are seen seperate pages by Google. Your approach may end up being penalized due to being sourced from untrusted site. According to Google Webmaster Support
Frames can cause problems for search engines because they don't
correspond to the conceptual model of the web. Google tries to
associate framed content with the page containing the frames, but we
don't guarantee that we will.
One of the best approaches to rank higher for a specific keyword is, make multiple related sites. In your case a 3-4 paged site about carburetors, bolts, other things your primary site contain would do it. These mini sites will be more intense about the subject due to less page count. Of course they should contain unique articles on each page. Then link from mini websites to primary websites and you can see the dramatic change.
In fact, the thing you are trying to do was a tactic to rank competitors down worked occasionally a few years ago. Now, it is still a risk.
I see. You don't want to mess up the page for your own site, but you want to do something with all the uncredited embeddings.
The solution is fairly simple:
Create a copy of the page.
Switch your site to use the copy.
Amend the version that countless other sites are embedding, so that there is a small link back to you. Or, add an iframe blocker script that will load your site.
If the page is active (ie user interacts with it to find the missing bolt) you could include a sales message with the response encouraging the user to visit your site.
I think that your goal is getting your link onto these other sites long enough to get indexed by Google before it is noticed by the people doing the embedding, so it's a bit of a balancing act.
I see conflicting advice about how Google indexes iframes. You should use a PageRank checker to see if the existing iframe page url has PageRank, and compare it to the page that you embed it on.
I dont Think you need to worry ,.
Google bot does seem to crawl through Iframes ,but the Web-Page Containing that Iframe is not Credited for that Content .. In other Words,, Page-Ranking of that particular Web-Page do not Change due to Contents from Iframe .
is IFrame crawled by Google?
Do robots crawl iframes?

Flex 3: Project Architecture & SEO

I've got a Flex 3 project. One of the problems I have is that not very much of its content is indexed by Google. Currently, I pull data from a mySQl database, so the Googlebot doesn't see most of the site.
My goal is to increase the amount of content indexed by Google, improve the SEO, and improve SERPs.
I thought that instead of pulling the data from the database that I would change the project's architecture and create separate "pages". So, in my case, I would compile each puzzle separately and upload it to the server in its own directory. This way the info in each puzzle would get indexed.
The negative is that if I add a puzzle, I'd have to add a link to it in all of the puzzles that are already on the server. I would have to add the link, re-compile each puzzle and upload it to the server. Is there a way to get around this problem? Also, if I wanted to communicate some data from one puzzle to another in the future, I wouldn't be able to do so.
Any suggestions?
Thank you.
-Laxmidi
The usual way to achieve this goal is to develop a hidden parallel site in HTML.
On the first page you will have your flash and, hidden by javascript, a list of links to the other pages. These links will be parsed by the robots. Ideally, the href pages are virtual (look for "url rewriting"). On each "fake" page, your server-side language will print on the page a content or links from your database AND the flash. The flash will be provided with a string explaining where it is and what it's supposed to show.
Ex: http://www.mysite.com/category1/content7 The URL rewriting sends this request to http://www.mysite.com/index.php?uri=category1/content7. The page should display the Flash with FlashVar "uri=category1/content7". The Flash knows which content it has to display so when an user comes from google, following this link, he will find the content he was looking for.
Every linking and content for SEO should be in HTML, don't trust robots capability of reading Flash.
have a look at Adobe's reference on deep-linking.
you can generate a website's sitemap.xml with a cron process (daily), such that the URLs encode the state of the application you need. This URL will encode whatever content you need to retrieve from the db, with just one index.html page.
good luck!

How to attach a site with its thumbnail to a Drupal node?

Do you have any Drupal module (or other solution) to implement a feature similiar to Facebook's Share a Link?
To be precise:
you paste a link
site's preview is generated
title
short excerpt
and a thumbnail of one of the site's images
You'll need to do some pretty fancy stuff when snagging that thumbnail.
That's parsing the page and picking out thumbnails that might want to get used from the tags on the page.
It will need to do this via javascript after the link has been placed.
Facebook actually caches their thumbnails for page sharing once a day, so they choose not to go grab it at run time for the client every time.
There are certainly libraries (and maybe a jQuery plugin that would let you slurp a URL into memory then traverse it and present some one the fly images.
Check out the Tumblr Share tool. You might be able to reverse engineer from that.
As for Drupal modules this seems unlikely. Would love to hear it though.
You could also think about a third party screen shot service, but that's a pain too.

Collecting RSS Feeds Online?

I'd like to be able to collect RSS feeds online as an alternative to collecting them on a desktop machine using a regularly running process.
Ideally, it would either collect all feeds and simply email them to a single address as soon as it finds a new one (or even without checking for new feeds) or aggregates all the smaller feeds and sends them out as a bulk larger feed less periodically.
It would have to run on a web server continually, but would be a nice to be able to collect all feeds, not just the ones I happen to pick up when a feed reader is running on my machine. Is something like this available?
Just use Google Reader. :)
Google Reader.
Maybe Yahoo's Pipes could help you. It is an interesting way of combining and manipulating feeds.
I'm not sure if you have ever used it but iGoogle allows you to customise the google homepage to display information from around the web. You can add tabs to the page to allow you to split the information up. It's extremely useful and as you can log into it from any computer / browser you can access your feeds anywhere.
If you have a lot of feeds of one type or feeds that update infrequently then iGoogle can also be combined with google reader.
It's also great for adding other plugins like gmail, games, Dilbert :) and more.
To create an iGoogle page go to the google home page and click the iGoogle link in the top right corner. iGoogle will then provide you with a starter page and some suggested content which you can add or ignore. If you click the "Add Stuff" link then "Add feed or gadget" you can manually add all your RSS feeds. However, you can also configure Firefox to automatically select google as your RSS reader when ever you click on an RSS feed icon in the navigation bar. You can select / change this under Tools -> Options -> Applications -> Web Feed.
In order to use your iGoogle on multiple browsers / computers you will need a gmail / google account however it's free and easy to create.
T
simplepie is great if you have PHP installed.
Universal Feed Parser if you're programming in python might be of help

Resources