Download the PHP package leobard/kirby-linkeddata without Composer

On this page you can find all versions of the php package leobard/kirby-linkeddata. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package kirby-linkeddata

Kirby LinkedData for SEO

Do you want to give search engines and AIs the data they need with minimal effort?

Kirby LinkedData for SEO is a plugin that maps fields from your pages (blueprints) to schema.org or any other RDF-based markup.

[!CAUTION] This plugin is in an alpha state. It has not been used productively. It misses some useful features, see issues.

Example

Here is the JSON-LD rendered by the starterkit example for Mægazine Inc.

Getting started

1. Install the plugin

2. Annotate your blueprints

Add these annotations to your blueprint:

For the starterkit about.yml blueprint, it works like this:

Hint: Use the AI skill "schemaorg-that-blueprint" to get AI support when annotating blueprints.

3. Call the snippet from your page template

Open your page template and call snippet('linkeddata/forpage');.

For the starterkit about.php template, it works like this:

4. Validate it

Questions and Answers

Will using this increase my ranking in results generated by AIs and Search engines? SEO/GEO...

Yes.

This plugin generates JSON-LD which is a serialization of RDF.

The W3C, where all major search engines are agreeing on standards, calls these standards "Linked Data".

All major search engines read linked data and use it in their search results. Most contemporary LLM based AI systems also use it.

This plugin creates data that is good for Search Engine Optimization (SEO) and AI Optimization.

When should I use "Kirby-SEO" and when "Kirby LinkedData"?

Kirby SEO by Tobias Möritz is an all-in-one toolkit for implementing SEO & Meta best practices in your Kirby site. Use it to get a customizable, turnkey SEO solution in seconds.

Kirby LinkedData for SEO to maps fields from your pages (blueprints) to schema.org or any other RDF-based markup. As the mappings are part of the definitions in the blueprints, they add semantic meaning to your fields for interoperability with other systems. Like the help property of a field suggested by Kirby for documentation, the rdfproperty points to a documentation of the field based on W3C Standards. This plugin adds a mapping. Once defined, this mapping can be reused for importing data, instructing AI systems to write code for importing from external sources and do all kinds of useful things we can think of. It opens the door to hacking more features on top.

[!TIP] You can use both plugins in parallel. Just know what you are doing: the OpenGraph data, Title-Data, sitemap are great from "Kirby SEO". The JSON-LD for schema.org may be nicer for you with "Kirby LinkedData for SEO".

Why is this called "LinkedData" and "SEO"?

"LinkedData" is a term that in itself describes what this is about: there is data published on websites, it links to more data on this or other websites. It is used by many as a more human readable synonym for what first had been published as the Resource Description Framework (RDF) and grown large by the Semantic Web initiative and community.

"SEO" is in the description because webmasters currently know the term "SEO" more and want to do it. They usually don't know that they need to publish "Linked Data" to achieve it.

Do I need blueprints?

Yes, to use this plugin, you need to define blueprints for your pages in site/blueprints/pages.

The concept of this plugin is to express mappings declaratively in the YAML text.

If you use pages without blueprints, this plugin is not for you, see this discussion on discord on 2026-09-27.

What is "RDF" and why do I need to for SEO with Schema.org and artificial intelligence (AI)?

The Resource Description Framework is the W3C standard to publish data on the web so that both humans and machines can read it and use it. It is open to be used by anyone ... and golly, both humans and machines love it.

You need RDF for SEO.

You are already using RDF in so many ways.

But there is more.

If you are working in any of above fields and are interested to get all these great things running in your Kirby site, get in touch with the RDF/ LinkedData/ SemanticWeb community. Leobard is having fun there since 2003 and may be able to connect you to others.

What is the URI / ID used in the RDF statements? By what do we identify the real world thing in comparison to the web page?

kirby-linkeddata uses by default the $page->url() for identifying the resource. This is simple and in practice it "just works (tm)".

The RDF resource id from the starterkit example is https://www.example.com/about.

Formally this is "not cool".

Yeah, "not cool" or "uncool" are W3C terms used by multiple people there (TimBl started the tradition). Who would have thought. The author of this plugin, Leobard, was the initiator and one of the authors of the W3C Interest Group Note "Cool URIs for the Semantic Web".

The URLs of this plugin are currently in a state defined as uncool according to W3C. The URI for the web document and the URI identifying the resource should be different.

In the starterkit example, the example.org/about page describing Mægazine Inc in HTML should have a different URL that the identifier used in the RDF Resource representation, in the @id of the JSON-LD. Then it would qualify as cool based on the IG note I have published in 2008. But I don't know yet how I should mint the resource URIs yet. Add a suffix? Add a parameter like activitypub does? I need to think this through. Then I would need to implement a redirect pointing from the resource-URI to the document-URI. This probably needs some feedback from others.

If you want to help this plugin to reach the level of coolness I defined as W3C, you are highly welcome. Demand coolness and start a ticket. Suggest a cool URL scheme. Together, we can make this cool.

See issue#4: Make the URLs cool, implement content-negotiation

Development

Representation of RDF in PHP: JSON-LD as array

This plugin intentionally currently uses a minimalistic RDF representation: the RDF graph is represented using a PHP array object that is later converted to JSON-LD using json_encode().

It does currently intentionally does not use external libraries such as EasyRdf to keep the required dependencies minimal.

Authors and License

Developed by Leo "Leobard" Sauermann.

Licensed using MIT.


All versions of kirby-linkeddata with dependencies

PHP Build Version
Package Version
No informations.
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package leobard/kirby-linkeddata contains the following files

Loading the files please wait ...