Facebook is now a mixture between friendfeed and twitter. You get videos, photographs, status messages and more from all your Real life friends networks. One of the most powerful new features is that by using the group feature we can now see our friends according to a number of settings. If I want to look for Uni friends I click on that list of friends. If I want twitter friends I press on that list. If I want Geneva friends and their status I’d press that and get the required information.
Now we’ll see a decline in facebook user time due to them not understanding it and not having the time to figure it out but within the next week or two they will use it more and more. The real time view also means that conversation will now be emphasised and help people in different geographic regions stay connected.
As my distaste for the way people use twitter grows ever stronger so the new facebook layout encourages me to engage with more of my real life friends there. It’s a big “see what you missed out on” to the twitter owners and their poor website implementation and innovation cycle. I was struggling to see a reason for being on twitter. That has just become stronger.
When you’re creating web content that’s fed please think about those that are reading your feed from a device that is disconnected. here I am on a train and I’m captive to the content that you make available on your feed. Some feeds have the full article but others don’t.
The result of this has a simple consequence. There is no use for your feed on my mobile device since there is no content. I would thus urge anyone with a feed to make sure to make all content available so that people may access it on the move, especially since Wifi is not yet ubiquitous.
Recently I migrated my photos from Instagram to a WordPress blog. The process took some trial and error. The first step is to understand how to read JSON files and format them in a way that WordPress can use. The next step is to import that data into Wordpress.
To request your data follow this link, request the data and wait for an e-mail telling you that the files are ready to download. When the files are ready to download download them and unzip the files.
Convert from JSON to CSV
You will find photo directories listed by year and month. You will also get a few JSON files but the ones you want are the media.json files. With a tool like the Konbert app you can convert the files from JSON to CSV files. When the CSV file or files are ready open them in Google Sheets or other spreadsheet software and look at the columns.
The fields you will find are
Caption
Taken At
Location
Path
Stories
Videos
Photos
Although not essential you can add fields like author. If you see “stories” and “videos” remove these columns. The CSV importer plugin I used cannot import videos and stories automatically.
When this is done you should have a CSV file that has caption, taken at, location, and path. Keep the photo file structure as it is.
Installing WordPress Locally
The simplest Wordpress installation I found is Local. Within minutes you can have a wordpress blog setup and running on your local machine. The reason you want a local install is that JSON to CSV conversions can be messy so if you make a mistake it is easy to reset and start again.
It took several attempts before I managed to import all the images and get them to display properly. If I had imported those files to my production Wordpress Blog I would have spent hours deleting thousands of posts more than once.
Folder Structure
When you import your images to WordPress with the CSV importer tool you have the option of leaving them where they are or of importing them into the uploads/year/month folder structure. Be warned that if you let the importer tool import the images itself it will import all of the images and generate thumbnails. If you have 3900 images you will end up with 12,000 images in a single folder as thumbnails are generated.
I would recommend:
creating a folder for every year that you were on Instagram
renaming every Instagram folder from /yearmonth/ to month, for example from 202006 to /06/ in the 2020 folder.
placing each month in the appropriate year/month folder in uploads.
Preparing the CSV file.
For the next step, I would recommend saving a copy of the document as it is so that you can go back to it if you make a mistake.
If you have changed all of the yearmonth folders to a year/month/ folder structure then you can use find and replace to update the folder names. You can find and replace 202006 with 2020/06 and work recursively. This will take more time, but be tidier. The CSV importer tool does not keep imports tidy. If I had known this ahead of time I would have taken this additional step.
In the CSV file the path is relative. To be tidy I put the photo folders in /wp-content/uploads/photos/ and had to update the CSV document to reflect that. Although you can find and replace in Google Sheets I used Visual Studio code for the next step.
Originally the path will be something like photos/202006/filename.jpg. but as the images are in wp-content/uploads/photos WordPress will look in the wrong place. With Find and Replace I selected “/photos/” and replaced it with “http://localhost:10003/wp-content/uploads/photos/”. At this point, the CSV files were ready to be imported.
If the CSV file is prepared correctly you should see Caption, Taken at, Location and Path. When I imported I mapped it so that so that Title and Content and slug would be the caption and for slug to be the caption. I then mapped Taken On to Publish date and featured image to the image path.
If you have kept the image folders as they were when you unzipped the Instagram download then select “Use media images if already available” and “download post content external images to media.” The images will be copied from the photos folder into the correct folder for WordPress to use.
If you have already organised your images by year and month in the uploads folder then you do not need to check “download external images to your media as they are already there.
The Final Step
The Final Step is to find a theme that reflects how you. want your images to be displayed and share the new location of your photo library to your various social media profiles and networks.
As a final step if you find that an image does not load for single posts you can add this line of code after the PHP tag.
if ( has_post_thumbnail() ) { // check if the post has a Post Thumbnail assigned to it.
the_post_thumbnail( 'full' );
}
This is a lot faster than going through 3900 posts and adding an image to each individual post.
Conclusion
If everything works as expected you can now export a CSV file of your test blog and upload it and the appropriate files to your online photo blog.
It’s interesting, isn’t it? Flick is a website that I have been part of since 1996 and I have been so distracted by Facebook, Instagram and other social networks that I have forgotten about it. Several times I expected the website to wither and disappear but it hasn’t. It is still around and it still has an active community. What’s more, this is so many magnitudes better than Instagram. for a start it has tagging, groups, albums and everything else. Secondly you have galleries and more. You can control who sees what and when. You also have access to the API with a minimum of effort. I mention this last fact because I am tempted to play with it soon. I feel ready.
The flickr API is available with an API via an SDK for a number of languages. It is available via PHP, Node.js and other platforms. Ideally I’d create either an app that would show “Today’s pics” or “Weekly pics” or similar. The API has breadth and diversity so you can do a number of interesting things. I need to look at the diversity of options and choose one that I suspect I could get to work.
I have been studying for over a year now, and I have played with a number of platforms via courses but I have not taken the time to build something without having instructions. I need to get myself to a level where I am self sufficient. I managed with an instagram json file, so now the challenge would be to do the same accessing data via an API or similar.
At this moment in time the idea is just to read, rather than to publish. When I write my daily blog post I could get the website to retrieve one of the most recent images from Flickr and use it as a featured image, rather than leave it blank. If I create or read then I can make mistakes, if I update or delete then I would have to spend time fixing my mistake. For those who are attentive I described CRUD.
It is a shame that the world forgot about Flickr. Flickr was and is still a good community website. If you follow people they follow back, and we don’t see many adverts. We also come away from time spent on the website feeling refreshed.
Today has been an informative day where there have been many conferences to participate in. The morning saw the introduction of the event whilst later on a great discussion took place about social networking and I’ve got the footage to give you an idea of the direction the conference was taking.
On a side note we were introduced to vlogsnapz, an application designed to make video blogging simpler. So far I’ve seen that you can upload to a number of popular video sharing website and the interface is simple. When you record the application gives you accept, refuse and set tasks to offer a few extra options.
Here’s a quick link to a video shot last night and edited by 7am today.
When Instagram was a self-run startup I loved the product. I loved that it was a way of sharing images with friends. I loved that it was fast and that it was light. I also liked that it had it’s own community. I liked that it was a way of sharing real life with people we conversed with online.
When Facebook bought Instagram that slowly changed. Algorithms and popularity contests became more important than sharing between friends and so the sense of community was lost and we were posting for strangers rather than friends.
For months, or even a number of seasons now, I have felt that Instagram is just a way of forcing us to see images by people we are not that interested in, with the hope that we will eventually see images that are relevant to us. That time investment we make is devalued when you consider that the Facebook behemoth is making millions from our mindless scrolling.
During the pandemic my patience for social media finally fizzled out and I’ve been playing with my website. By playing I mean, experimenting, learning, and developing and trying new ideas.
One of those ideas was to export my Instagram account and find a way to flip it over to Wordpress. Why Wordpress, rather than another social network? WordPress is an open-source social network that we control. We control advertising, we control posting frequency, we control layout, and best of all, there is no group of investors holding our… …I’ll leave that to your creative imagination, over the fire.
I tried finding tools to import from JSON to WordPress but in one case I needed to install wp-cli and that was complicated, and I wasn’t confident that it would be tolerated by the web host. I could have asked but instead, I set myself the challenge of installing MySQL on the laptop and running the localhost for experimenting. I failed to connect my localhost WordPress install with MySQL and eventually after two days of trial and error I decided to take a break and try something easier. I tried XAMPP but then I found what looked like a simpler tool, with WP-CLI integrated.
I settled on LocalWP. With this, I tried the GitHub project I thought would help me import the JSON files but that failed so I looked for another solution and it got me 90 percent of the way to achieving what I wanted to achieve. When I confirm that this process works I will post a How-To guide.
My first impressions were that the new FaceBook looks a lot like FriendFeed. I'm also noticing some other things in the new Facebook layout that apparently were not fully thought out prior to the new launch.
I do like the features of FaceBook and Friendfeed where I can actually have a discussion/conversation in more than 140 characters.
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behaviour or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional
Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes.The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
My first impressions were that the new FaceBook looks a lot like FriendFeed. I'm also noticing some other things in the new Facebook layout that apparently were not fully thought out prior to the new launch.
I do like the features of FaceBook and Friendfeed where I can actually have a discussion/conversation in more than 140 characters.