2014-05-12 4 views
1

나는 bp_activity_action에서 반환 된 문자열을 분리하려고 시도했지만 서클에 들어갔다. 기본적으로BuddyPress에서 bp_activity_action() 반환 문자열 사용자 정의

그것은 "," "사용자"사용자 "내가 값을 얻을 수있는 방법

"사이트 "사이트 제목", "타임 스탬프에 새 게시물,"포스트 제목을 "쓴 포스트 제목을 반환 "및"사이트 제목 "을 사용하여 원하는 곳에 배치 할 수 있습니다.

현재 내 코드는 다음과 같습니다 : 나는 문서를 통해 확인하고 해결책을 찾을 수 없어

<?php if (bp_has_activities(bp_ajax_querystring('activity') . '&action=new_blog_post')) : ?> 
    <?php while (bp_activities()) : bp_the_activity(); ?> 
    <div class="activity-header">   
     <?php bp_activity_action(); ?> 
    </div> 
    <?php endwhile; ?> 
<?php endif;?> 

. 포럼에서 필자는 필터 사용에 대한 몇 가지 제안을 발견했지만 사용법에 익숙하지 않아 작동하지 못했습니다.

도움을 주시면 감사하겠습니다.

답변

3

나는 완벽한 해결책이 없지만 적어도 타임 스탬프를 깨는 데 성공했습니다.

<div class="activity-header"> 

    <div class="activity-title"> 

     <?php 
      $args = array(
       'no_timestamp' => true, 
      ); 
      bp_activity_action($args); 
     ?> 

     <?php if ('activity_comment' == bp_get_activity_type()) : ?> 

      <div class="activity-inreplyto"> 
       <strong><?php _e('In reply to: ', 'buddypress'); ?></strong><?php bp_activity_parent_content(); ?> <a href="<?php bp_activity_thread_permalink(); ?>" class="view" title="<?php esc_attr_e('View Thread/Permalink', 'buddypress'); ?>"><?php _e('View', 'buddypress'); ?></a> 
      </div> 

     <?php endif; ?> 

    </div> 

    <div class="activity-time"> 

     <?php echo bp_core_time_since(bp_get_activity_date_recorded()); ?> 

    </div> 

</div> 

bp_activity_action() 함수는 타임 스탬프를 숨길 인수를 할 수 있습니다 : 여기에 내가 Buddypress 레거시 템플릿에 entry.php에서 수정 한 코드입니다. 인수가 function 코드에서 어떻게 작동하는지에 대한 설명이 있습니다.이 함수 코드는 buddypress \ bp-activity \ bp-activity-template.php에서 찾을 수 있습니다.

위의 코드에서 나는 bp_activity_action() 출력에서 ​​타임 스탬프를 숨기기 위해 인수를 사용했습니다. 그런 다음 bp_core_time_since() 함수를 사용하여 내 사이트의 다른 행에서 별도로 서식이 지정된 타임 스탬프를 출력했습니다. 당신이 언급 요소의 별도의 출력을 제공하기 Buddypress을 향상 논의가있다 http://imgur.com/QbgamPa

:

당신은 여기에 형식화 된 출력을 볼 수 있습니다. https://buddypress.trac.wordpress.org/ticket/5261을 참조하십시오. 이 토론에 따르면 변경 사항은 Buddypress 2.0에서 구현되었지만 찾을 수는 없습니다.

희망이 도움이됩니다. :-)

+0

나는 이것이이 질문에 대한 훌륭한 해결책이라고 생각한다. 필터를 작성하거나 자신의 bp_activity_action을 롤하는 조치를 대체하는 대신, 표시하지 않으려는 인수를 부정 할 수 있습니다. 나는 bp_activity_action 함수를 조금 보지 않았기 때문에 받아 들일 수있는 인수에 익숙하지 않았지만, 아마도 no_timestamp보다 조금 더 많을 것입니다. 나는 그걸로 어지럽 힐 것이다. 어쩌면 인덱스를 통해 액션 인수를 얻는 것으로 시작하고 내가 무엇을 생각해 낼 수 있는지 알아볼 수 있습니다. 솔루션을 제공해 주셔서 감사합니다. –

+0

다행히도 도움이 될 수 있습니다 :-) 맞춤 설정을위한 추가 가능성을 발견하면 후속 조치를 취하십시오. – lflier