monkcms/meta

一组用于为 MonkCMS API 生成模块元信息的类集合

v0.3.1 2024-02-20 18:48 UTC

This package is auto-updated.

Last update: 2024-09-20 17:47:01 UTC


README

Latest Stable Version Codecov StyleCI

一组用于为 MonkCMS API 生成模块元信息的类集合

概述

安装

  • 将您正在工作的网站下载到本地环境
  • 如果您的机器上未安装 composer,请按照以下链接中的说明全局安装:Composer - https://composer.php.ac.cn/download
  • 在您的终端中进入网站下载的目录
  • 如果目录中没有 composer.json 文件,请按照以下缩进的步骤操作。如果文件存在,请跳到下一步
    • 运行 composer init 并为所有主要问题选择默认值。您可以选择 N 来定义依赖项和开发依赖项
  • composer.json 文件存在后,请在终端中运行以下命令:composer require monkcms/meta
  • 然后上传新创建的 vendor 目录以及 composer.jsoncomposer.lock 文件。
  • 按照以下 如何使用 部分说明,将其应用于您选择的模板。

如何使用

在模板内部,您将初始化您正在处理的模块的类。在此示例中,我们将假设是页面模块。

//Load these in a config.php file
require_once($_SERVER['DOCUMENT_ROOT'] . '/monkcms.php');
require_once($_SERVER['DOCUMENT_ROOT'] . '/vendor/autoload.php');
$currentUrl = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

//This would go in the page template after config.php is included
$meta = new \Meta\Module\PageMeta(
    $_GET['nav'],
    getSiteName(),
    'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']
);

然后,在 head.php(或您希望的位置)您可以执行以下操作

<title><?= $meta->title() ?></title>
<?= $meta->createMetaTag('description', $meta->description()) ?>
<?= $meta->createMetaTag('keywords', $meta->keywords()) ?>
<?= $meta->socialTags() ?>

以下内容将被生成

<title>Example Page Title | Test Site Name</title>
<meta name="description" content="Example Page Description" >
<meta name="keywords" content="Example, Page, Keywords" >
<meta property="og:site_name" content="Test Site Name" >
<meta property="og:type" content="article" >
<meta property="og:title" content="Example Page Title | Test Site Name" >
<meta property="og:url" content="http://example.com" >
<meta property="og:image" content="http://www.placecage.com/1200/630" >
<meta property="og:image:width" content="1200" >
<meta property="og:image:height" content="630" >
<meta name="twitter:card" content="summary_large_image" >

包含的模块

  • 页面
  • 讲道
  • 文章
  • 博客
  • 事件

更详细的文档可以通过查看测试获得。

贡献

感谢您考虑为 MonkCMS Meta 包做出贡献!请提交一个包含您请求的问题或 PR!对于任何新功能,请确保编写测试。

安全漏洞

如果您在此软件包中发现安全漏洞,请发送电子邮件至 Skyler Katz(skylerkatz@hey.com)。所有安全漏洞都将得到及时处理。

许可证

本软件包是开源软件,许可协议为 MIT 协议