我正在尝试修改 WordPress 插件以采用自定义类别。因此,当调用 random_post_link 时,我可以使用 random_post_link('Random Link',3) 添加自定义类别。3 是类别名称。
下面的插件如何创建 Random_Post_Link 类的新对象?我以为你通过执行以下操作创建了新对象:
$a = 新的 random_post_link;
但我在插件中没有看到这一点。我认为它通过使用钩子在 init 函数中创建新对象:
add_action('init', array( CLASS , '跳跃'));
如果是这样的话,如何为跳转函数添加参数?
我想我知道 add_action 是如何工作的,第二个参数应该是函数名,“ array( CLASS , 'jump')” 是如何工作的?
这是该插件的完整代码:
function random_post_link($text = 'Random Post',$the_cat = 36) {
printf('<a href="%s">%s</a>', get_random_post_url(), $text);
$the_category = $the_cat;
}
function get_random_post_url() {
return trailingslashit(get_bloginfo('url')) . '?' . Random_Post_Link::query_var;
}
class Random_Post_Link {
const query_var = 'random';
const name = 'wp_random_posts';
public $the_category;
function init() {
add_action('init', array(__CLASS__, 'jump'));
// …
Run Code Online (Sandbox Code Playgroud)