gourmet / social-meta
为 CakePHP 3.x 添加 Facebook Open Graph 和 Twitter Cards 支持
v1.0.2
2016-07-05 04:09 UTC
Requires
- cakephp/cakephp: ~3.0
This package is auto-updated.
Last update: 2024-08-28 00:58:30 UTC
README
为Facebook Open Graph和Twitter Cards添加支持到CakePHP 3。
包含内容?
- CardHelper
- OpenGraphHelper
安装
使用Composer
composer require gourmet/social-meta:~1.0
然后需要加载插件。在 boostrap.php
中,例如
\Cake\Core\Plugin::load('Gourmet/SocialMeta');
使用方法
在您的 AppView
中包含助手函数
public function initialize(array $config) { $this->loadHelper('Gourmet/SocialMeta.Card'); $this->loadHelper('Gourmet/SocialMeta.OpenGraph'); }
请注意,某些配置选项现在可供您使用。例如
public function initialize(array $config) { $this->loadHelper('Gourmet/SocialMeta.Card', [ 'card' => 'photo', 'tags' => ['twitter' => [ 'description' => 'Some default description' ]] ]); $this->loadHelper('Gourmet/SocialMeta.OpenGraph', [ 'app_id' => 'xxx' ]); }
您现在可以在视图/布局中使用这些助手函数了。
对于Facebook OpenGraph,您需要使用助手函数的 html()
方法,因为它将包括定义的命名空间
echo $this->OpenGraph->html();
或通过传递额外的选项和命名空间
echo $this->OpenGraph->html(['lang' => 'en'], ['foo' => 'http://foo']);
然后可以渲染 OpenGraph 元数据标签
echo $this->OpenGraph->render();
它将使用一些黑魔法渲染最基本的内容,或者您可以更详细地做
echo $this->OpenGraph ->setTitle('My Page') ->setDescription('One of my awesome pages') ->setImage('http://link.to/image', ['width' => '200', 'height' => '300']) ->render();
其他方法:setType
,setUri
,setLocale
,setName
,setImage
,setVideo
对于Twitter Cards,与上面的代码示例类似
echo $this->Card ->setTitle('My Page') ->setDescription('One of my awesome pages') ->setImage('http://link.to/image', ['width' => '200', 'height' => '300']) ->render();
其他方法:setCard
,setUrl
,setData1
,setLabel1
,setData2
,setLabel2
,setCreator
,setSite
,setPlayer
补丁和功能
- 分支
- 修改,修复
- 测试 - 这很重要,所以不要无意中将其破坏
- 提交 - 不要修改许可、todo、版本等。(如果更改了任何内容,请将其提升到自己的提交中,这样我在拉取时可以忽略它们)
- 拉取请求 - 主题分支的额外加分项
错误和反馈
http://github.com/gourmet/social-meta/issues
许可证
版权(c)2015,Jad Bitar,并许可在MIT 许可证下。