我正在使用https://github.com/artesaos/seotools包进行 seo。我试图覆盖位于https://github.com/artesaos/seotools/blob/master/src/SEOTools/SEOMeta.php的 getCanonical 函数,并使其输出为小写。您能指导我该怎么做吗?
您可以尝试以下操作:
步骤1:
创建一个扩展 SEOMeta 类的子类并覆盖该getCanonical函数。
Class XyzSEOMeta extends SEOMeta {
public function getCanonical () {
// Write your logic here
}
}
Run Code Online (Sandbox Code Playgroud)
第2步:
为重写的类创建服务提供者。函数的第一个参数bind必须与 Facade 的 Facade 访问器相同SEOMeta(检查此处)。在seotoolsconfig/app.php包的服务提供者之后注册这个门面。:
Class XyzSEOMetaServiceProvider extends ServiceProvider {
public function register(){
$this->app->bind('seotools.metatags', function(){
return new XyzSEOMeta($this->app['config']);
})
}
}
Run Code Online (Sandbox Code Playgroud)
你已经准备好了。希望这会有所帮助。
编辑:
上面提到的方法只会覆盖单个类。如果你想改变多个类的逻辑。最好的方法是分叉该项目。更改代码并将其推送到您的分支。使用分叉项目作为您的作曲家依赖项。点击链接了解如何使用私有存储库作为 Composer 依赖项:https://getcomposer.org/doc/05-repositories.md#using-private-repositories
| 归档时间: |
|
| 查看次数: |
6226 次 |
| 最近记录: |