Advertisement
rdusnr

Untitled

Aug 14th, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.63 KB | None | 0 0
  1.  
  2. if ( ! function_exists( 'kleo_entry_meta' ) ) :
  3. /**
  4. * Prints HTML with meta information for current post: categories, tags, permalink, author, and date.
  5. * Create your own kleo_entry_meta() to override in a child theme.
  6. * @since 1.0
  7. */
  8. function kleo_entry_meta( $echo = true, $att = array() ) {
  9.  
  10. global $kleo_config;
  11. $meta_list = array();
  12. $author_links = '';
  13. $meta_elements = sq_option( 'blog_meta_elements', $kleo_config['blog_meta_defaults'] );
  14.  
  15. // Translators: used between list items, there is a space after the comma.
  16. if ( in_array( 'categories', $meta_elements ) ) {
  17. $categories_list = get_the_category_list( __( ', ', 'kleo_framework' ) );
  18. }
  19.  
  20. // Translators: used between list items, there is a space after the comma.
  21. if ( in_array( 'tags', $meta_elements ) ) {
  22. $tag_list = get_the_tag_list( '', __( ', ', 'kleo_framework' ) );
  23. }
  24.  
  25. $date = sprintf( '<a href="%1$s" rel="bookmark" class="post-time">' .
  26. '<time class="entry-date" datetime="%2$s">%3$s</time>' .
  27. '<time class="modify-date hide hidden updated" datetime="%4$s">%5$s</time>' .
  28. '</a>',
  29. esc_url( get_permalink() ),
  30. esc_attr( get_the_date( 'c' ) ),
  31. esc_html( get_the_date() ),
  32. esc_html( get_the_modified_date( 'c' ) ),
  33. esc_html( get_the_modified_date() )
  34. );
  35.  
  36.  
  37. if ( is_array( $meta_elements ) && ! empty( $meta_elements ) ) {
  38.  
  39.  
  40. if ( in_array( 'author_link', $meta_elements ) || in_array( 'avatar', $meta_elements ) ) {
  41.  
  42. /* If buddypress is active then create a link to Buddypress profile instead */
  43. if ( function_exists( 'bp_is_active' ) ) {
  44. $author_link = esc_url( bp_core_get_userlink( get_the_author_meta( 'ID' ), $no_anchor = false, $just_link = true ) );
  45. $author_title = esc_attr( sprintf( __( 'View %s\'s profile', 'kleo_framework' ), get_the_author() ) );
  46. } else {
  47. $author_link = esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) );
  48. $author_title = '';
  49. }
  50.  
  51. $author = sprintf( '<a class="url fn n" href="%1$s" title="%2$s" rel="author">%3$s %4$s</a>',
  52. $author_link,
  53. $author_title,
  54. in_array( 'avatar', $meta_elements ) ? get_avatar( get_the_author_meta( 'ID' ), 50 ) : '',
  55. in_array( 'author_link', $meta_elements ) ? '<span class="author-name">' . get_the_author() . '</span>' : ''
  56. );
  57.  
  58. $meta_list[] = '<small class="meta-author author vcard">' . $author . '</small>';
  59. }
  60.  
  61. if ( function_exists( 'bp_is_active' ) ) {
  62. if ( in_array( 'profile', $meta_elements ) ) {
  63. $author_links .= '<a href="' . bp_core_get_userlink( get_the_author_meta( 'ID' ), $no_anchor = false, $just_link = true ) . '">' .
  64. '<i class="icon-user-1 hover-tip" ' .
  65. 'data-original-title="' . esc_attr( sprintf( __( 'View profile', 'kleo_framework' ), get_the_author() ) ) . '"' .
  66. 'data-toggle="tooltip"' .
  67. 'data-placement="top"></i>' .
  68. '</a>';
  69. }
  70.  
  71. if ( bp_is_active( 'messages' ) && is_user_logged_in() ) {
  72. if ( in_array( 'message', $meta_elements ) ) {
  73. $author_links .= '<a href="' . wp_nonce_url( bp_loggedin_user_domain() . bp_get_messages_slug() . '/compose/?r=' . bp_core_get_username( get_the_author_meta( 'ID' ) ) ) . '">' .
  74. '<i class="icon-mail hover-tip" ' .
  75. 'data-original-title="' . esc_attr( sprintf( __( 'Contact %s', 'kleo_framework' ), get_the_author() ) ) . '" ' .
  76. 'data-toggle="tooltip" ' .
  77. 'data-placement="top"></i>' .
  78. '</a>';
  79. }
  80. }
  81. }
  82.  
  83. if ( in_array( 'archive', $meta_elements ) ) {
  84. $author_links .= '<a href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' .
  85. '<i class="icon-docs hover-tip" ' .
  86. 'data-original-title="' . esc_attr( sprintf( __( 'View all posts by %s', 'kleo_framework' ), get_the_author() ) ) . '" ' .
  87. 'data-toggle="tooltip" ' .
  88. 'data-placement="top"></i>' .
  89. '</a>';
  90. }
  91. }
  92.  
  93. if ( '' != $author_links ) {
  94. $meta_list[] = '<small class="meta-links">' . $author_links . '</small>';
  95. }
  96.  
  97. if ( in_array( 'date', $meta_elements ) ) {
  98. $meta_list[] = '<small>' . $date . '</small>';
  99. }
  100.  
  101. $cat_tag = array();
  102.  
  103. if ( isset( $categories_list ) && $categories_list ) {
  104. $cat_tag[] = $categories_list;
  105. }
  106.  
  107. if ( isset( $tag_list ) && $tag_list ) {
  108. $cat_tag[] = $tag_list;
  109. }
  110. if ( ! empty( $cat_tag ) ) {
  111. $meta_list[] = '<small class="meta-category">' . implode( ', ', $cat_tag ) . '</small>';
  112. }
  113.  
  114. //comments
  115. if ( ( ! isset( $att['comments'] ) || ( isset( $att['comments'] ) && false != $att['comments'] ) ) && in_array( 'comments', $meta_elements ) ) {
  116. $meta_list[] = '<small class="meta-comment-count"><a href="' . get_permalink() . '#comments">' . get_comments_number() .
  117. ' <i class="icon-chat-1 hover-tip" ' .
  118. 'data-original-title="' . sprintf( _n( 'This article has one comment', 'This article has %1$s comments', get_comments_number(), 'kleo_framework' ), number_format_i18n( get_comments_number() ) ) . '" ' .
  119. 'data-toggle="tooltip" ' .
  120. 'data-placement="top"></i>' .
  121. '</a></small>';
  122. }
  123.  
  124. $meta_separator = isset( $att['separator'] ) ? $att['separator'] : sq_option( 'blog_meta_sep', ', ' );
  125.  
  126. if ( $echo ) {
  127. echo implode( $meta_separator, $meta_list );
  128. } else {
  129. return implode( $meta_separator, $meta_list );
  130. }
  131.  
  132.  
  133. }
  134. endif;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement