job-features.php 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <?php
  2. /**
  3. * Single view Job Fetures
  4. *
  5. * Override this template by copying it to yourtheme/simple_job_board/single-jobpost/job-features.php
  6. *
  7. * @author PressTigers
  8. * @package Simple_Job_Board
  9. * @subpackage Simple_Job_Board/Templates
  10. * @version 2.0.0
  11. * @since 2.1.0
  12. * @since 2.2.2 Added "sjb_job_features" filter.
  13. * @since 2.2.3 Modified the @hooks placement.
  14. * @since 2.3.0 Added "sjb_job_features_template" filter.
  15. * @since 2.4.0 Revised whole HTML template
  16. */
  17. ob_start();
  18. global $post;
  19. /**
  20. * Fires before displaying job features on job detail page .
  21. *
  22. * @since 2.1.0
  23. */
  24. do_action("sjb_job_features_before");
  25. ?>
  26. <!-- Start Job Features
  27. ================================================== -->
  28. <div class="job-features">
  29. <?php
  30. $keys = sjb_job_features_count();
  31. $job_category = wp_get_post_terms($post->ID, 'jobpost_category');
  32. $metas = '';
  33. // Show Job Features Title, If Features Exist.
  34. if ( 0 < $keys || NULL != $job_category ):
  35. ?>
  36. <h3><?php echo apply_filters('sjb_job_features_title', esc_html__('Job Features', 'simple-job-board')); ?></h3>
  37. <?php
  38. endif;
  39. ?>
  40. <table class="table">
  41. <tbody>
  42. <?php
  43. /**
  44. * Fires before the job category under the job features section on job detail page.
  45. *
  46. * @since 2.2.3
  47. */
  48. do_action("sjb_job_features_category_before");
  49. // Job Category under Job Features Section
  50. if (sjb_get_the_job_category()):
  51. echo '<tr><td>' . esc_html__('Job Category', 'simple-job-board') . '</td><td>';
  52. sjb_the_job_category();
  53. echo'</td></tr>';
  54. endif;
  55. ?>
  56. <?php
  57. /**
  58. * Fires after the job category under the job features section on job detail page.
  59. *
  60. * @since 2.2.3
  61. */
  62. do_action("sjb_job_features_category_after");
  63. // Display Job Features
  64. $keys = get_post_custom_keys(get_the_ID());
  65. if ( $keys != NULL ):
  66. foreach ($keys as $key):
  67. if (substr($key, 0, 11) == 'jobfeature_') {
  68. $val = get_post_meta($post->ID, $key, TRUE);
  69. if (is_serialized($val)) {
  70. $val = unserialize($val);
  71. }
  72. /**
  73. * New Label Index Insertion:
  74. *
  75. * - Addition of new index "label"
  76. * - Data Legacy Checking
  77. */
  78. $label = isset($val['label']) ? $val['label'] : __(ucwords(str_replace('_', ' ', substr($key, 11))), 'simple-job-board');
  79. $value = isset($val['value']) ? $val['value'] : $val;
  80. if ( $value != NULL ) {
  81. $metas.= '<tr><td>' . $label . '</td><td>' . $value . ' </td></tr>';
  82. }
  83. }
  84. endforeach;
  85. endif;
  86. /**
  87. * Modify the output of job feature section.
  88. *
  89. * @since 2.2.0
  90. *
  91. * @param string $metas job features
  92. */
  93. echo apply_filters('sjb_job_features', $metas);
  94. ?>
  95. </tbody>
  96. </table>
  97. </div>
  98. <!-- ==================================================
  99. End Job Features -->
  100. <div class="clearfix"></div>
  101. <?php
  102. /**
  103. * Fires after displaying job features on job detail page.
  104. *
  105. * @since 2.1.0
  106. */
  107. do_action("sjb_job_features_after");
  108. $html_job_features = ob_get_clean();
  109. /**
  110. * Modify the Job Feature Template.
  111. *
  112. * @since 2.3.0
  113. *
  114. * @param html $html_job_features Job Features HTML.
  115. */
  116. echo apply_filters( 'sjb_job_features_template', $html_job_features );