Yii2.0学习第20课:如何修改TDK
1、我们以前期创建的登陆页面为例:
(1)控制器:controllers\LoginControrller.php
(2)视图:views\login\index.php
访问地址:ip地址/web/index.php?r=login,效果如下:
2、在浏览器页面,右击,点击“查看页面源代码”,并搜索关键字“title”,我们会发现title的内容是空的,如图所示:
3、运行我们的LNMP环境,找到对应的视图文件,添加以下代码:
$this->title = "Hello Chou Chou ,I am Dad,I love you!",
重复访问,查看效果:
4、由此我们联想到,keywords和description应该和title类似,我们继续操作,在视图文件中输入显示keywords的代码:
$this->keywords = "I am keywords";
$this->description = "I am description";
修改Yii的模板文件,views\layouts\main.php,添加以下代码:
<meta name="description" content="<?= Html::encode($this->description);>">
<meta name="keywords" content="<?= Html::encode($this->keywords);>">
5、发现出错了,yii\web\View类只定义了title,没有定义keywords和description,我们找到该类文件:vendor\yiisoft\yii2\web\View.php,搜索关键字“title”并添加以下代码:
public $keywords;
public $description;
重新访问LoginController.php,查看效果:
6、以上关于keywords,description的手法比较粗糙,我们在vendor\yiisoft\yii2\web\View.php是有发现meta关键字的,这个肯定是可以设置关键字和描述信息的。
7、打开@app/views/layouts/main.php,添加以下代码:
<?= $this->registerMetaTag(['name'=>'keywords','content'=>'I am new keywords']) ?>
<?= $this->registerMetaTag(['name'=>'description','content'=>'I am new description']) ?>
效果如下: