A website without a blog feels somehow incomplete. Here is mine.
Johannes schrieb zu seinem 15ten Blog-Geburtstag über das Sterben der Blogosphäre. Die wurde ja immer wieder totgesagt, aber nun sieht es wirklich nicht gut aus.
In den Nischen werden Blogs wieder etwas populärer, aber oftmals sind sie nicht mehr das, was sie mal waren™️. Oftmals fehlt eine Kommentarfunktion, eine Vernetzung untereinander findet im Grunde gar nicht mehr statt. Aber zumindest scheint sich ein wenig was zu bewegen.
Read full postMaybe you know one or another Kirby plugin of mine. The most used once are my comment and podcast plugin. I want to sum up what's going to happen with those plugins.
Read full postAfter working on my comment plugin most of the time in the last year, I started updating the Kirby Podcast plugin some time ago. Today version 2.0 is released.
Important things first: Tracking of downloads using the file
method is deprecated and cannot be used anymore. This method nevers was the best choice but I wanted to offer an alternative to MySQL.
This alternative is now SQLite. Since version 2.0 of the plugin SQLite is the default method for tracking downloads. Setting it up is easy, you don't need any database server and most hosters support it.
While working on SQLite, I also optimized the tracking. Now useragets, systems and devices will be tracked, too. So you can now see where your listeners come from, Apple, Spotify etc. While tracking this data this is all done without storing any personal data of your listeners. You get the numbers, your listeners keep their privacy.
I also worked on the panel view for the statistics. A new library for showing graphs is included, the old one was to buggy and not so easy to handle. Next to the new information like useragents, there is now a monthly view. There you can look into the details of the given month. You'll get a beautiful graph and a list of downloaded episodes. You can cycle through the months and instead of that long ugly list of downloaded episodes, those can be paginated, too.
There is still the overview over the whole year for episodes and feeds, splitted into months. And the overall top 10.
I cleaned up a lot of code, sorted it new, shrunk it. And there are some new smaller features, like the possibility to disable the styling of the rss feed.
I would like to offer some blocks for the new Editor. For example a block for the podcast player. I would also like to make it possible, to embed the new apple player or the spotify player.
More information about the update, detailed step by step instructions for the installation and update can be found on Github. I am curious about your podcast, let me know!
Read full postI was about to get crazy because my Kirby Komment plugin wasn't working when installed via zip file. The solution? One line…
Sometimes I don't trust my own mind. My Kirby Plugin "Komments" is working smoothly on my site. I installed it using composer. Everything was fine.
But then I got an e-mail. Somebody installed my plugin and comments couldn't be saved. Even worse: even pages couldn't be saved!
The error message: A file within one of the dependencies wasn't found. I saw the relative path in the error message and thought that might cause the error. It wasn't.
I have a local install of the Kirby Starterkit to test things beside unit tests and to reproduce errors like this one. So I copied the local dev version of my plugin over to the starterkit and everything worked.
I updated the files on github. I downloaded the zip file. Installed it. It didn't work.
I played around with the composer setup and the autoloads. But nothing seems to work. So something must be happening during the creation of that zip file.
So I opened the terminal and ran a diff on my developer version and the zip file version:
diff -rq kirby/komments kirby-test/starterkit-master/site/plugins/komments
And there it was:
Only in kirby/komments/vendor/indieweb/mention-client: src
The mentionclient used for sending webmentions has its php files located in the its own src folder. That folder existed locally in my dev version and it could also be found in the github repo. I thought about that for a while and then…
I the tutorial for a Monolithic Plugin Setup there is this one file: .gitattributes
. Which causes to exclude certain folders and files from being part of the final package of the plugin. You need those files for development but not for production. And there was this one line:
src export-ignore
I just used the template for the tutorial without thinking much about it. I thought this would cause that my src directory in the root of the plugin (containing all javascript files which are compiled during build) would be ignores in the package. It was. But all other src directories are ignored, too! Which is fatal because you never know if one of your dependencies uses a src directory for production! And that was the case for me.
So I could have skipped all that playing around with autoload. The solution was to remove that one line. After that all the files were included in the zip folder and everything worked. Phew…
Read full postFor some time now, you can leave comments on my site. After some development time I recently published my solution for that as a Kirby plugin.
I was missing the possibility for adding plugins to my site without using an external service, for some years now. So I started writing my own plugin. There already is a Plugin by Sebastian Greger where I shamelessly stole some ideas and code snippets 🙈 (I hope Sebastian isn't angry with me). But I had some ideas and problems I couldn't solve with that plugin.
Komments is the name of my new plugin. And I want to write a short post on some of my thoughts and how this plugin is related to my other kirby plugins.
Well, obviously I wanted to have comments on my site. This is now possible using this new plugin. There is a simple comment function with a also very simple spam detection. So, you can now write comments.
I also wanted to be able to send and receive webmentions. This currently only works with webmention.io. My plugin is able to do so. Thanks to some services I am now able to post a link to this page on twitter or mastodon and to get the feedback from those platforms back to my page (as comments). So if you answer on my tweet related to this post, your answer will end here as a comment.
Before creating an official plugin, I used an internal version of this plugins for some time on my site. During that time I added some more functionality which normally aren't part of such a plugin. So for example, when you publish a page, the plugin can send a toot with a link to mastodon. Also I inform archive.org. I also wanted to be able to disable comments per page.
I had some ideas for my site and I wasn't able to solve them with existing plugins. Next to "normal" comments, I wanted to show ratings. You can give positive or negative feedback on this page below. I wanted to handle those ratings with a separate plugin. But I also wanted those ratings to react to webmentions. So if a like is being received via webmention, I wanted the rating plugin to increase the numbers.
The problem is, that there can be only one webmention endpoint. But with the ratings AND the komments, if have two different plugins needing an endpoint.
My solution was a third plugin wich I published some time ago: Tratschtante. The plugins listens to the webmention endpoint and then distributes the data via a hook. Other plugins can listen to that hook, grab the data and do whatever they want with it. So if you use Tratschtante you can receive webmentions and any plugin could listen to Tratschtante and will get the data (in a normalized format) and can react according to its function.
The result: A twitter like will create a thumb up at the rating plugin and also a new comment with the komment plugin.
I have some more - more or less visible - functions on this site, which I want to publish as a plugin. Those will use Tratschtante and other interfaces to work together.
For the komment plugin there will probably be some more fixes and customizations in the future. It's in beta currently, but I am using it for quite some time now on this page, so I think it runs pretty stable.
I also want to extend panel support and clean up the panel view a bit. And I bet spam detection will be an ongoing topic.
Read full post