The installation guide (SEO - Installation & Setup | Love & Kindness) says to use composer, but I have no idea what that is and how to use it, so I went with the alternative and copied the repo to to /site/plugins/kirby-seo.
I then edited the site.yml blueprint as described in the doc – added two tabs, one for content with all the original fields, and then one for the plugin. That seemed to work, my panel is now indeed showing two tabs called content and seo. However, the seo tab just gives me this error: “The site has no blueprint yet. You can define the setup in /site/blueprints/site.yml”
Not sure if this is the right place to ask my question, but maybe one of you can help me with this very newbie thing. Haven’t worked with Kirby since two years, so everything is a bit confusing to me.
The things is, if you don’t post what you did, nobody can know if you really did what is decribed in the docs? More often than not, this is not true and therefore, it doesn’t work.
That seems to work, as I get two tabs (“Content” and “SEO”) in the panel.
But when I click on the “SEO” tab, I get the error mentioned above (“The site has no blueprint yet. You can define the setup in /site/blueprints/site.yml”).
So maybe the plugin was not installed correctly in the first place? All I did was to copy the plugin folder to /site/plugins/kirby-seo. Maybe that was not enough?
Hard to tell from what you posted above, but if I just copy & paste it, the indentation of that site.yml blueprint seems to be wrong. Please double-check. Always use spaces, not tabs, two spaces per indentation level.
I’m also not sure as to which version of the plugin works with Kirby 3
Version 0.3.4 seems to be the last version that is still compatible with K3. But is it recommended using an outdated version in an SEO world that is subject to constant change?
@tobimori is best placed to tell us about version compatibility.
for Kirby SEO, you can use max. version 0.3.4 with Kirby 3. The plugin should still work perfectly with it, I’m also using this version on a few sites. However, since this is a free plugin, and I have limited time, there won’t be any more updates to the Kirby 3 version. If necessary for your project, I’m willing to provide paid support for additional development of SEO for Kirby 3.
I looked at your blueprint @Nihil and couldn’t find anything wrong. The error message must clearly be related to the plugin not being able to be loaded. Manual installation should work without any issue, however composer is highly recommended. If you can zip me a folder of the whole project folder, I can take a look to see what’s wrong.
PS: regarding the K3 icon on the site, I’ve already mentioned my feedback to the Kirby team when the plugin site was in Beta
@texnixe: I’ve converted the indentation to spaces, two per level.
@GB_DESIGN: Thanks, I was not aware of this and was trying to install the most recent version of the plugin. Only looked at the plug-in page and thought that Kirby v3 would be supported.
@tobimori: I have replaced site/plugins/kirby-seo with the contents of the 0.3.4 zip file. However, now I get a catastrophic “This page is currently offline due to an unexpected error.” message from Kirby Will send you my project folder — thanks very much in advance for looking into this!
Kirby 3.6 and 3.7 are running out of security support in June, anyway. 3.8 will have security support until December this year, so these versions shouldn’t be used after that date, anyway.
Thanks guys. Just wanted to install a plugin, but it seems I’m getting down the admin rabbit hole
So I downloaded v3.10 and set up Apache and PHP 8.3 on my local machine to test drive the update. Copied the “live” folder from the web server, deleted the media folder, and replaced the kirby folder with the contents of the 3.10 zip file. According to Install & update via download | Kirby CMS, this should do the trick …
Now, Kirby seems to run — however, it didn’t rebuild the media folder so the local test site doesn’t display any images. Also, when I try to access the Panel, I’m getting a 404 error.
What could I’ve done wrong? I appreciate your support!
According to Installation issues | Kirby CMS I have to make sure that the .htaccess file that ships with Kirby is present in my Kirby folder … But I couldn’t find it in the contents of the 3.10 zip.
This is what my root looks like:
-rw-r--r--@ 1 _www _www 1794 4 Jun 15:33 .htaccess
-rw-r--r--@ 1 _www _www 2484 4 Jun 11:05 README.md
-rw-r--r--@ 1 _www _www 897 4 Jun 11:05 android-chrome-192x192.png
-rw-r--r--@ 1 _www _www 2032 4 Jun 11:05 android-chrome-512x512.png
-rw-r--r--@ 1 _www _www 615 4 Jun 11:05 apple-touch-icon.png
drwxr-xr-x@ 7 _www _www 224 4 Jun 11:05 assets
-rw-r--r--@ 1 _www _www 246 4 Jun 11:05 browserconfig.xml
-rw-r--r--@ 1 _www _www 823 4 Jun 11:05 composer.json
drwxr-xr-x@ 13 _www _www 416 4 Jun 11:05 content
-rw-r--r--@ 1 _www _www 465 4 Jun 11:05 favicon-16x16.png
-rw-r--r--@ 1 _www _www 478 4 Jun 11:05 favicon-32x32.png
-rw-r--r--@ 1 _www _www 15086 4 Jun 11:05 favicon.ico
-rw-r--r--@ 1 _www _www 53 4 Jun 11:05 google41e6a45d7ddd6848.html
-rw-r--r--@ 1 _www _www 78 4 Jun 11:05 index.php
drwxr-xr-x@ 22 _www _www 704 4 Jun 16:13 kirby
drwxr-xr-x 2 _www _www 64 4 Jun 15:20 media
-rw-r--r--@ 1 _www _www 687 4 Jun 11:05 mstile-144x144.png
-rw-r--r--@ 1 _www _www 818 4 Jun 11:05 mstile-150x150.png
-rw-r--r--@ 1 _www _www 1007 4 Jun 11:05 mstile-310x150.png
-rw-r--r--@ 1 _www _www 1582 4 Jun 11:05 mstile-310x310.png
-rw-r--r--@ 1 _www _www 640 4 Jun 11:05 mstile-70x70.png
-rw-r--r--@ 1 _www _www 811 4 Jun 11:05 safari-pinned-tab.svg
drwxr-xr-x@ 14 _www _www 448 4 Jun 11:05 site
-rw-r--r--@ 1 _www _www 426 4 Jun 11:05 site.webmanifest
It’s not in the 3.10 ZIP as that’s just the content of the kirby folder. The .htaccess sits one level higher. You can find it in the Plaint or Starterkit: Quickstart | Kirby CMS
Regarding the issues, make sure that your server and PHP version meets the relevant requirements, in particular gd library for the thumbs.
.htaccess should look like this
# Kirby .htaccess
# revision 2023-07-22
# rewrite rules
<IfModule mod_rewrite.c>
# enable awesome urls. i.e.:
# http://yourdomain.com/about-us/team
RewriteEngine on
# make sure to set the RewriteBase correctly
# if you are running the site in a subfolder;
# otherwise links or the entire site will break.
#
# If your homepage is http://yourdomain.com/mysite,
# set the RewriteBase to:
#
# RewriteBase /mysite
# In some environments it's necessary to
# set the RewriteBase to:
#
# RewriteBase /
# block files and folders beginning with a dot, such as .git
# except for the .well-known folder, which is used for Let's Encrypt and security.txt
RewriteRule (^|/)\.(?!well-known\/) index.php [L]
# block all files in the content folder from being accessed directly
RewriteRule ^content/(.*) index.php [L]
# block all files in the site folder from being accessed directly
RewriteRule ^site/(.*) index.php [L]
# block direct access to Kirby and the Panel sources
RewriteRule ^kirby/(.*) index.php [L]
# make site links work
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php [L]
</IfModule>
# pass the Authorization header to PHP
SetEnvIf Authorization "(.+)" HTTP_AUTHORIZATION=$1
# compress text file responses
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
</IfModule>
# set security headers in all responses
<IfModule mod_headers.c>
# serve files as plain text if the actual content type is not known
# (hardens against attacks from malicious file uploads)
Header set Content-Type "text/plain" "expr=-z %{CONTENT_TYPE}"
Header set X-Content-Type-Options "nosniff"
</IfModule>
Thanks Sonja, looks like there was some hiccup with the .htaccess from the live web server and my local httpd. With the .htaccess you provided, it worked! However, when I edited the file and saved it, everything went inaccessible again. Here’s what I added:
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Also, I uncommented the RewriteBase / line.
I went and reverted the edits back to your original code, saved again, but no luck, even after restarting Apache. Is this some known behaviour? Seems kind of erratically.