This is an update to my 2018 article on how I set up my WordPress site. Standard Plugins EWWW Image Optimizer(Link) – It reduces file sizes for images to ensure faster loading Pushover Notifications(Link)or the forked alternative Pushbullet Notifications(Link) for WordPress – This plugin sends n...
Tag: David Shanske
👓 Privacy | David Shanske
I admit to a certain amount of frustration on the subject of privacy lately. It seems, in all aspects of my life, both personal and professional, the new data privacy regulations that the EU rolls out May 25th are a theme in every discussion.
An Indieweb Podcast: Episode 3 “Syndication”
Running time: 52m 56s | Download (24.9 MB) | Subscribe by RSS
Summary: Facebook has recently announced it will be shutting off its API access on August 1st for automating posts into its ecosystem. For a large number of users this means it will be much more difficult to crosspost or syndicate their content into the platform. As a result, this week David Shanske and I discuss the good and the bad of this move as well as some general thoughts around the ideas of syndicating content from one site to another.
David also discusses plans he’s got for changes to both the Bridgy Publish Plugin and the Syndication Links Plugin.
Show Notes
Related Articles and Posts
- New Facebook Platform Product Changes and Policy Updates
- Bridgy Publish for Facebook shuts down in August by Ryan Barrett (#)
- Buffer responds to syndication question, but then checks itself (#)
- I’m done with Syndication. Let’s help people be themselves on the web. by Ben Werdmuller (#)
- Deprecating and Replacing Bridgy Publish for WordPress by David Shanske (#)
Resources and mentions within the episode
- ThinkUp (#) — (my instance is still up,though no longer working!)
- BBC Audio Archive (#)
- IndieNews a community-curated list of articles relevant to the IndieWeb (#)
- WordPress Indienews a plugin to automatically send mentions to IndieNews (#)
- Convoy a syndication tool for WithKnown (#)
- Faux-casts (#)
- Related IndieWeb wiki pages
- Related WordPress Plugins
# Indicates a direct link to the appropriate part of the audio within the episode for the mentioned portion.
👓 Deprecating and Replacing Bridgy Publish for WordPress | David Shanske
I’ve decided to take a different direction for the Bridgy plugin for WordPress. I’ve never quite been able to explain to people it doesn’t actually do anything. It’s a user interface for the Bridgy service. I’ve decided that the best thing to do is to is to change the approach radically.
👓 How I Set Up My Indieweb WordPress Site – 2018 Edition | David Shanske
This is an update to my 2014 article on how I set up my WordPress site. It was requested I update it.
(P.S. David is definitely worth knowing.)
An IndieWeb Podcast: Episode 2 “IndieAuth”
Summary: At long last, after about three weeks worth of work, David Shanske (along with help from Aaron Parecki) has added the ability for the IndieAuth plugin for WordPress to provide an IndieAuth endpoint for self-hosted versions of WordPress, but it also has the ability to provision and revoke tokens.
This week, David Shanske and I discuss IndieAuth and the WordPress plugin’s new functionality as well as some related micropub work David has been doing. To some extent, I alternate between acting innocent and serving as devil’s advocate as we try to tease out some of the subtleties of what IndieAuth is and what it means to the average user. As usual, David does an excellent job of navigating what can be some complicated territory.
Show Notes
Related IndieWeb Wiki Pages
- OAuth
- IndieAuth
- RelMeAuth
- Micropub
- PESOS – Post Elsewhere, Syndicate to your Own Site
- POSSE – Post on your Own Site, Syndicate Elsewhere
Micropub Apps Mentioned in the episode
Closing discussion on IndieWeb Readers and Microsub Pieces
- Indie reader
- Microsub
- Aperture (Aaron Parecki)
- Indigenous (Eddie Hinckle)
- Together (Jonathan LaCour and Grant Richmond)
More Resources
If you need more IndieWeb content, guidance, or even help, an embarrassment of riches can be found on the IndieWeb wiki, including the following resources:
- Subscribe to: This Week in the IndieWeb newsletter
- Listen to: podcasts about the IndieWeb
- Watch: videos about the IndieWeb, presentations about the IndieWeb
- Read: Posts about the IndieWeb, IndieNews
- Discuss: IndieWeb Chat
An IndieWeb Podcast: Episode 1 “Leaving Facebook”
It’s been reported that Cambridge Analytica has improperly taken and used data from Facebook users in an improper manner, an event which has called into question the way that Facebook handles data. David Shanske and I discuss some of the implications from an IndieWeb perspective and where you might go if you decide to leave Facebook.
Show Notes
Articles
The originating articles that kicked off the Facebook/Cambridge Analytica issue:
- 3/16/18: Facebook’s Newsroom: Suspending Cambridge Analytica and SCL Group from Facebook by Paul Grewal
- “Protecting people’s information is at the heart of everything we do.”
- 3/17/18: The Guardian: Revealed: 50 million Facebook profiles harvested for Cambridge Analytica in major data breach
- 3/17/18: New York Times: How Trump Consultants Exploited the Facebook data of Millions
Related articles and pages
- 3/21/18 Anil Dash: The Missing Building Blocks of the Web, an article bringing the Facebook issue back around to regaining the good parts of the “old web”
- How To Change Your Facebook Settings To Opt Out of Platform API Sharing from the Electronic Frontier Foundation
- 3/24/18: Ars Technica: Facebook scraped call, text message data for years from Android phones
- 3/18/18: The Guardian: Facebook employs psychologist whose firm sold data to Cambridge Analytica
- Sebastian Greger’s Privacy policy
- Mastodon not supporting Webmention specification
- Weapons of Math Destruction: How Big Data Increases Inequality and Threatens Democracy by Cathy O’Neil
Recent Documented Facebook Quitters
Jonathan LaCour, Eddie Hinkle, Natalie Wolchover, Cher, Tea Leoni, Adam McKay, Leo Laporte,and Jim Carrey
New York Times Profile of multiple quitters: https://www.nytimes.com/2018/03/21/technology/users-abandon-facebook.html
IndieWeb Wiki related pages of interest
- https://indieweb.org/why
- https://indieweb.org/principles
- https://indieweb.org/Facebook
- https://indieweb.org/silo-quits
- https://indieweb.org/Getting_Started
Potential places to move to when leaving Facebook
You’ve made the decision to leave Facebook? Your next question is likely to be: to move where? Along with the links above, we’ve compiled a short list of IndieWeb-related places that might make solid options.
- Micro.blog for $5/month (or bring your own web site for free)
- WordPress.com
- Tumblr.com
- WithKnown (Paid service or host your own)
- WordPress.org (self-hosted or managed)
- Mastodon (doesn’t necessarily provide ownership of domain name unless you’re self-hosting an instance)
- Other possible projects/options: https://indieweb.org/projects
An IndieWeb Podcast: Episode 0 “Considering the User”
In it, David Shanske and and I talk about a variety of Indieweb topics, with the theme of “Considering the User”, inspired by an article we were reading this week. Other topics include: home automation, generations, itches, Webmention, and some examples of the Post Kinds Plugin in practice (exercise, issues, chickens).
In the future we hope to have additional broad ranging conversations and perhaps interviews with others about various IndieWeb related topics.
Part of this is also an opportunity to improve audio post presentations on our websites over time. While David posted the “original” of this post on his site, I had to debate whether or not I would technically repost it or make an original of my own. Ultimately I opted for the latter.
David, by far the more veteran podcaster, deserves the lion’s share of the credit for his audio set up and recording facilities.
You can subscribe to future episodes here: http://boffosocko.com/tag/an-indieweb-podcast/feed/
If you need more IndieWeb content, guidance, or even help, an embarrassment of riches can be found on the wiki, including the following resources:
- Subscribe to: This Week in the IndieWeb newsletter
- Listen to: podcasts about the IndieWeb
- Watch: videos about the IndieWeb, presentations about the IndieWeb
- Read: Posts about the IndieWeb, IndieNews
- Discuss: IndieWeb Chat
Adding back some simple tweaks I’ve made over the last year to potentially add as a pull request on Github.
👉 Poking David Shanske
Sadly, Facebook doesn’t seem to make it possible to syndicate a poke… hmmm.
My reply to Micro.blog Project Surges Past $65K on Kickstarter, Gains Backing from DreamHost | WordPress Tavern
I coincidentally happened to have a great conversation yesterday with Jonathan LaCour before I saw the article and we spoke about what DreamHost is doing in the realm of IndieWeb and WordPress. I love their approach and can’t wait to see what comes out of their work and infectious enthusiasm.
I’m really surprised that WordPress hasn’t more aggressively taken up technologies like Webmention, which is now a W3C recommendation, or micropub and put them directly into core. For the un-initiated, Webmention works much like @mention on Twitter, Medium, Facebook, and others, but is platform independent, which means you can use it to ping any website on the internet that supports it. Imagine if you could reply to someone on Twitter from your WordPress site? Or if you could use Facebook to reply to a post on Medium? (And I mean directly and immediately in the type @mention/hit publish sense, not doing any laborious cut and paste from one platform to another nonsense that one is forced to do now because all the social silos/walled gardens don’t inter-operate nicely, if at all.) Webmention can make all that a reality. Micropub is a platform independent spec that allows one to write standalone web or mobile apps to create publishing interfaces to publish almost any type of content to any platform–think about the hundreds of apps that could publish to Twitter in its early days, now imagine expanding that to being able to use those to publish to any platform anywhere?
While Twitter has been floundering for a while, WordPress has the structure, ecosystem, and a huge community to completely eat Twitter’s (and even Facebook/ Instagram’s, Medium’s, & etc.) lunch not only in the microblog space, but the larger space which includes blogging, photos, music, video, audio, and social media in general. The one piece they’re missing is a best-in-class integrated feed reader, which, to be honest, is the centerpiece of both Twitter and Facebook’s services. They seem to be 98% readers and 2% dead-simple posting interface while WordPress is 98% posting interface (both more sophisticated/flexible and more complicated), and nearly non-existent (and unbundled) reader.
WordPress has already got one of the best and most ubiquitous publishing platforms out there (25+% of the web at last count). Slimming down their interface a tad to make it dead simple for my mom to post, or delegating this to UX/UI developers with micropub the way that Twitter allowed in the early days with their open API and the proliferation of apps and interfaces to post to twitter, in addition to Webmentions could create a sea-change in the social space. Quill is a good, yet simple example of an alternate posting interface which I use for posting to WordPress. Another is actually Instagram itself, which I use in conjunction with OwnYourGram which has micropub baked in for posting photos to my site with Instagram’s best-in-class mobile interface. Imagine just a handful of simple mobile apps that could be customized for dead-simple, straightforward publishing to one’s WordPress site for specific post types or content types…
With extant WordPress plugins, a lot of this is already here, it’s just not evenly distributed yet, to borrow the sentiment from William Gibson.
For just a few dollars a year, everyday people could more easily truly own all their content and have greater control over their data and their privacy.
I will note that it has been interesting and exciting seeing the Drupal community stepping on the gas on the Webmention spec (in two different plugins) since the W3C gave it recommendation status earlier this month. This portends great things for the independent web.
I haven’t been this excited about what the web can bring to the world in a long, long time.
Browser Bookmarklets and Mobile Sharing with Post Kinds Plugin for WordPress
The Post Kinds Plugin
I’ve been using David Shanske’s excellent WordPress plugin Post Kinds, which is conveniently bundled into the IndieWeb Plugin, for more than a year now. (Update: I’ve also written a fairly in-depth primer for it.)
Much like WordPress’s native post formats (standard, aside, image, quote, link, status, audio, etc.) which were introduced in v3.1, Post Kinds instead provides a better mapping of post types across a larger variety of social media types (article, bookmark, favorite, itinerary, jam, like, listen, note, photo, play, read, reply, repost, watch, and more). In addition to changing the visual layout and formatting of most posts, the plugin also importantly includes the correct microformat classes for each of these post types and this enables a lot of other fantastically important functionality for the open web.
Custom URLs for Post Kinds
One of the problems I had with using it initially was taking the extra time to cut and paste in the several pieces of additional data or fill in meta data to make a post. It was particularly painful in a mobile setting. I was thrilled when David mentioned that he’d built in some customized query parameters which could take URLs to import in much of the data as well as to set the correct post kind automatically. They came with the general format of
http://example.com/wp-admin/post-new.php?kind=bookmark&kindurl=@url
where one could replace @url
with the target URL of the site to be bookmarked, for example. Replacing bookmark
with the appropriate post kind name would allow one to set the flag for each post to the proper post kind automatically, and naturally one should replace example.com
with the base URL for their site.
Putting this customized URL into a browser will create a new post in one’s website admin UI and Post Kinds will automatically set the URL and scrape its meta data. One can then modify any additional data or add a comment and then publish quickly and easily.
As a concrete example, I would put the following URL in my browser of choice to “like” the Post Kinds Plugin page:
http://www.boffosocko.com/wp-admin/post-new.php?kind=like&kindurl=https://wordpress.org/plugins/indieweb-post-kinds/
Browser Bookmarklets
I am a huge fan of browser bookmarklets, so for a while I’ve been meaning to create some for the post kinds I use to better automate my post process. After dragging my feet for ages, particularly because my JavaScript skills are nearly non-existent, I’ve finally gotten around to adapting the common WordPress “Press This” bookmarklet to work with Post Kinds.
Below is the modified code that can be put into a bookmarklet to allow for easily bookmarking a particular post:
javascript:(function(a,b,c,d){function e(a,c){if("undefined"!=typeof c){var d=b.createElement("input");d.name=a,d.value=c,d.type="hidden",p.appendChild(d)}}var f,g,h,i,j,k,l,m,n,o=a.encodeURIComponent,p=b.createElement("form"),q=b.getElementsByTagName("head")[0],r="_press_this_app",s=!0;if(d){if(!c.match(/^https?:/))return void(top.location.href=d);if(d+="&kindurl="+o(c),c.match(/^https:/)&&d.match(/^http:/)&&(s=!1),a.getSelection?h=a.getSelection()+"":b.getSelection?h=b.getSelection()+"":b.selection&&(h=b.selection.createRange().text||""),d+="&buster="+(new Date).getTime(),s||(b.title&&(d+="&t="+o(b.title.substr(0,256))),h&&(d+="&s="+o(h.substr(0,512)))),f=a.outerWidth||b.documentElement.clientWidth||600,g=a.outerHeight||b.documentElement.clientHeight||700,f=800>f||f>5e3?600:.7*f,g=800>g||g>3e3?700:.9*g,!s)return void a.open(d,r,"location,resizable,scrollbars,width="+f+",height="+g);(c.match(/\/\/(www|m)\.youtube\.com\/watch/)||c.match(/\/\/vimeo\.com\/(.+\/)?([\d]+)$/)||c.match(/\/\/(www\.)?dailymotion\.com\/video\/.+$/)||c.match(/\/\/soundcloud\.com\/.+$/)||c.match(/\/\/twitter\.com\/[^\/]+\/status\/[\d]+$/)||c.match(/\/\/vine\.co\/v\/[^\/]+/))&&e("_embeds[]",c),i=q.getElementsByTagName("meta")||[];for(var t=0;t<i.length&&!(t>200);t++){var u=i[t],v=u.getAttribute("name"),w=u.getAttribute("property"),x=u.getAttribute("content");x&&(v?e("_meta["+v+"]",x):w&&e("_meta["+w+"]",x))}j=q.getElementsByTagName("link")||[];for(var y=0;y<j.length&&!(y>=50);y++){var z=j[y],A=z.getAttribute("rel");("canonical"===A||"icon"===A||"shortlink"===A)&&e("_links["+A+"]",z.getAttribute("href"))}b.body.getElementsByClassName&&(k=b.body.getElementsByClassName("hfeed")[0]),k=b.getElementById("content")||k||b.body,l=k.getElementsByTagName("img")||[];for(var B=0;B<l.length&&!(B>=100);B++)n=l[B],n.src.indexOf("avatar")>-1||n.className.indexOf("avatar")>-1||n.width&&n.width<256||n.height&&n.height<128||e("_images[]",n.src);m=b.body.getElementsByTagName("iframe")||[];for(var C=0;C<m.length&&!(C>=50);C++)e("_embeds[]",m[C].src);b.title&&e("t",b.title),h&&e("s",h),p.setAttribute("method","POST"),p.setAttribute("action",d),p.setAttribute("target",r),p.setAttribute("style","display: none;"),a.open("about:blank",r,"location,resizable,scrollbars,width="+f+",height="+g),b.body.appendChild(p),p.submit()}})(window,document,top.location.href,"http:\/\/example.com\/wp-admin\/post-new.php?kind=bookmark");
Other versions of the bookmarks can easily be made for all the other other Post Kinds by replacing the two red highlighted portions of the code sample appropriately for each one. Specifically one should exchange bookmark
with the name of the kind desired (all of them should be in lowercase) and replace example.com
with one’s own domain name.
For simplicity, I’m including a sample/template bookmarklet button below which can be dragged and dropped into most browser bars. Before using it, edit the JavaScript as described above and paste it into the URL box. I’m happy to help those who may have problems. I’ve included a screen capture of what all of them look like once they’re set up and configured with matching emoji added into the titles to assist in visual selection.
Perhaps I (or someone else enterprising) would contribute all this back into the plugin repository for Post Kinds so that these bookmarklets would be self-generated for plug and play usage within the admin interface for the plugin the way the bookmarklets are for the IndieWeb plugin’s PressThis bookmarklets, perhaps at /wp-admin/admin.php?page=kind_options
.
A Post Kinds “Bookmarklet” for Mobile
For those who would like something similar to the above for use on mobile platforms (and particularly Android) I’ve written up some instructions below which allow one to use the Android app URL Forwarder to use the ubiquitous mobile “share” functionality from most pages and/or apps in a way similar to this bookmarklet functionality. (This is based in part on some work by Ryan Barrett and some work I’d written up for the Known CMS a while back.)
I’d suspect that there’s also a similar app for iOS, but I haven’t checked. If not available, URL Forwarder is open source on Github and could potentially be ported. There’s also a similar Android app called Bookmarklet Free which could be used instead of URL Forwarder.
Configuring URL Forwarder for Post Kinds
- Open URL Forwarder on your phone
- Click the “+” button to create a filter.
- Give the filter a name, “Bookmark” for the bookmark version. (See photo below.)
- Use the following entry for the “Filter URL” replacing
example.com
with your site’s domain name:http://EXAMPLE.com/wp-admin/post-new.php?kind=bookmark&kindurl=@url
- Leave the “Replaceable text” as “@url”
- Finish by clicking on the checkmark in the top right corner.
- Repeat the above for the other desired post types but replacing “bookmark” with the lower case names of those other types.
Simple right?
Creating a post via mobile
With the configuration above set up, do the following:
- On the mobile page one wants to bookmark, like, favorite, etc., click the ubiquitous “share this” mobile icon (or share via a pull down menu, depending on your mobile browser or other app.)
- Choose to share through URL Forwarder
- Click on the “bookmark” option just created above (or other option as necessary for the desired post type).
- Change/modify any meta data within your website administrative interface or add any additional thoughts and publish. (This part is the same as one would experience using the desktop bookmarklet.)
Happy posting!
Lessons Learned from IndiewebCamp and WordCamp – David Shanske
For a little over two years, I have been involved in Indiewebcamp. This past weekend, for the first time in five years, I was able to attend WordCamp. WordCamp NYC was a massive undertaking, to which I must give credit to the organizers. WordCamp was moved to coincide with OpenCamps week at the United Nations, …