分页: 1 / 1

在插件中如何获取当前的页面是否允许评论

发表于 : 2016年 5月 30日 14:52
yovisun
在一个插件里面,怎么判断这个页面是否允不允许评论?

我想在,某个page或者post允许评论的时候,插入一些js,怎么判断?

在Plugin.php中写

Re: 在插件中如何获取当前的页面是否允许评论

发表于 : 2016年 5月 30日 17:00
DT27
首先在插件激活方法里给文章显示页注入脚本

代码: 全选

Typecho_Plugin::factory('Widget_Archive')->footer = array('EditorMD_Plugin','footerJS');
footerJS方法:

代码: 全选

public static function footerJS($conent)
{

    if($conent->allowComment){
        //允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("允许评论");
</script>
<?php
    }else{
        //不允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("不允许评论");
</script>
<?php
    }
}
哪里不理解可以提出来。

Re: 在插件中如何获取当前的页面是否允许评论

发表于 : 2016年 5月 30日 18:51
yovisun
谢谢,请问这个$content怎么获得?
DT27 写了:首先在插件激活方法里给文章显示页注入脚本

代码: 全选

Typecho_Plugin::factory('Widget_Archive')->footer = array('EditorMD_Plugin','footerJS');
footerJS方法:

代码: 全选

public static function footerJS($conent)
{

    if($conent->allowComment){
        //允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("允许评论");
</script>
<?php
    }else{
        //不允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("不允许评论");
</script>
<?php
    }
}
哪里不理解可以提出来。

Re: 在插件中如何获取当前的页面是否允许评论

发表于 : 2016年 5月 30日 19:10
DT27
Typecho为插件开发提供了很多接口,这里列出了所有接口,你的目的是判断文章是否允许评论,所以是处理文章,对应的就是

代码: 全选

Widget_Archive
类,接口列表里的接口现在都得靠自己猜自己测是用来干什么的,里面有个footer接口,字面意思就是文章底部,接口参数是个Widget_Archive对象,也就是文章本身。当前文章所有属性都可以通过这个参数获取。

你在插件里写

代码: 全选

Typecho_Plugin::factory('Widget_Archive')->footer = array('EditorMD_Plugin','footerJS');
,就会把Widget_Archive中的footer里的参数自动传给footerJS方法。

也就是说,$content就是一个Widget_Archive对象,保存了当前文章的所有信息。这个$content你可以随便改名字,只是用来接收Widget_Archive>footer给的参数。
yovisun 写了:谢谢,请问这个$content怎么获得?
DT27 写了:首先在插件激活方法里给文章显示页注入脚本

代码: 全选

Typecho_Plugin::factory('Widget_Archive')->footer = array('EditorMD_Plugin','footerJS');
footerJS方法:

代码: 全选

public static function footerJS($conent)
{

    if($conent->allowComment){
        //允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("允许评论");
</script>
<?php
    }else{
        //不允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("不允许评论");
</script>
<?php
    }
}
哪里不理解可以提出来。

Re: 在插件中如何获取当前的页面是否允许评论

发表于 : 2016年 5月 31日 10:41
yovisun
非常感谢你的热情,已经实现了。谢谢。
DT27 写了:Typecho为插件开发提供了很多接口,这里列出了所有接口,你的目的是判断文章是否允许评论,所以是处理文章,对应的就是

代码: 全选

Widget_Archive
类,接口列表里的接口现在都得靠自己猜自己测是用来干什么的,里面有个footer接口,字面意思就是文章底部,接口参数是个Widget_Archive对象,也就是文章本身。当前文章所有属性都可以通过这个参数获取。

你在插件里写

代码: 全选

Typecho_Plugin::factory('Widget_Archive')->footer = array('EditorMD_Plugin','footerJS');
,就会把Widget_Archive中的footer里的参数自动传给footerJS方法。

也就是说,$content就是一个Widget_Archive对象,保存了当前文章的所有信息。这个$content你可以随便改名字,只是用来接收Widget_Archive>footer给的参数。
yovisun 写了:谢谢,请问这个$content怎么获得?
DT27 写了:首先在插件激活方法里给文章显示页注入脚本

代码: 全选

Typecho_Plugin::factory('Widget_Archive')->footer = array('EditorMD_Plugin','footerJS');
footerJS方法:

代码: 全选

public static function footerJS($conent)
{

    if($conent->allowComment){
        //允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("允许评论");
</script>
<?php
    }else{
        //不允许评论
        //插入JavaScript代码
        ?>
<script type="text/javascript">
alert("不允许评论");
</script>
<?php
    }
}
哪里不理解可以提出来。

Re: 在插件中如何获取当前的页面是否允许评论

发表于 : 2016年 5月 31日 13:31
DT27
不客气~ :D
yovisun 写了:非常感谢你的热情,已经实现了。谢谢。
DT27 写了:Typecho为插件开发提供了很多接口,这里列出了所有接口,你的目的是判断文章是否允许评论,所以是处理文章,对应的就是

代码: 全选

Widget_Archive
类,接口列表里的接口现在都得靠自己猜自己测是用来干什么的,里面有个footer接口,字面意思就是文章底部,接口参数是个Widget_Archive对象,也就是文章本身。当前文章所有属性都可以通过这个参数获取。

你在插件里写

代码: 全选

Typecho_Plugin::factory('Widget_Archive')->footer = array('EditorMD_Plugin','footerJS');
,就会把Widget_Archive中的footer里的参数自动传给footerJS方法。

也就是说,$content就是一个Widget_Archive对象,保存了当前文章的所有信息。这个$content你可以随便改名字,只是用来接收Widget_Archive>footer给的参数。
yovisun 写了:谢谢,请问这个$content怎么获得?