如何使用do_action()从add_action()中提取变量输出,还是有另一种方法?

时间:2018-03-06 08:17:20

标签: php html wordpress variables

对于大多数人来说,这看起来很基本但是我被卡住了。 这是我的WP函数文件(functions.php)中的PHP代码:

add_action( 'AHEE_event_details_after_the_content', 'my_event_registration_count' );
function my_event_registration_count( $post ) {
  $event_obj = $post->EE_Event;
  $html = '';
  if ( $event_obj instanceof EE_Event ){
    $reg_count = EEM_Event::instance()->count_related(
      $event_obj, 
      'Registration',
      array( 
        array(
          'STS_ID' => array(
            'NOT_IN',
            array(
              EEM_Registration::status_id_cancelled
            )
          )
        )
      )
    );
    $html .= '<strong>';
    $html .= $reg_count;
    $html .= ' of ';
    $html .= $event_obj->total_available_spaces();
    $html .= ' attendees total</strong>';
  }
  echo $html;
}

我正在尝试使用以下内容获取$ html输出:

<?php do_action( 'my_event_registration_count', $html ); ?>

假设给我一些注册的活动参加者。我需要将这个号码输入我的WP首页。没什么..还试过$ reg_count。这个ting应该是全球性的吗?我很感谢能得到的所有帮助。

1 个答案:

答案 0 :(得分:0)

在WordPress中使用输出编写函数的正确方法是使用add_filter / apply_filters。它与add_action / do_action相同。

参考: