作为从零开始创建WordPress主题的相对新手,我还有很多东西需要学习。
我目前在工作中学习'我不断问自己的一个问题是,我是否将add_action置于函数之前是否重要?'
我刚刚通过修改我的代码来集成WooCommerce功能,如下所示:
我看到很多编码如下:
add_action( 'after_setup_theme', 'woocommerce_support' );
function woocommerce_support() {
add_theme_support( 'woocommerce' );
}
那就是说,我看到了很多其他编码,如下所示:
function woocommerce_support() {
add_theme_support( 'woocommerce' );
add_action( 'after_setup_theme', 'woocommerce_support' );
}
这两种方法是否存在任何利弊,或者仅仅是开发人员对他们希望如何组织代码的偏好?
答案 0 :(得分:0)
在使用PHP编码之后,我进一步了解了它的功能以及编码平台的工作原理。
虽然有一些例外,但我可以看到add_action
需要放在函数的大括号之外。我还没有看到在连接函数之前或之后放置add_action
的区别。作为个人偏好,我通常会设置我的代码:
function woocommerce_support() {
add_theme_support( 'woocommerce' );
}
add_action( 'after_setup_theme', 'woocommerce_support' ); //This line should not be placed within the above curly brackets '{}'
我已经评论了上面的例子,以防万一有人是php的新手并且在开始时有相同的查询。
以为我会回答我自己的问题;为了确保没有人花费宝贵的时间来回答我现在已经回答的问题(并且还要“关闭”这个问题)。
如果有人有反对我的答案的信息,我欢迎这样的意见。虽然我现在对php的工作原理有了更深入的了解,但我仍然需要学习很多东西! : - )
答案 1 :(得分:0)
我在同一页面上,但是正如@Craig所说,我们不能将 add_action()放在函数主体内,因为它在那里无法使用。 但是我们可以根据选择在函数之前或之后放置add_action()。 这是我尝试过的(函数之前的add_action),
add_action('after_setup_theme', 'simple_theme_support');
function simple_theme_support(){ //function for featured image
add_theme_support('post-thumbnails');
}
(函数后的add_action)
function simple_theme_support(){ //function for featured image
add_theme_support('post-thumbnails');
}
add_action('after_setup_theme', 'simple_theme_support');
在两种情况下,我都得到相同的输出。