/**
  * Gets instance of class.
  *
  * @return WP_Recipe_Ingredients Instance of the class.
  */
 public static function get_instance()
 {
     if (null == self::$instance) {
         self::$instance = new self();
     }
     return self::$instance;
 }
 /**
  * Generates markup for a given ingredient group.
  *
  * @param array $ingredient_group Ingredient group to generate markup for.
  * @return string Recipe ingredient group markup.
  */
 public function generate_markup($ingredient_group)
 {
     $wp_recipe_ingredients = WP_Recipe_Ingredients::get_instance();
     $group_classes = $this->get_classes();
     $html = '';
     $html .= '<li class="' . $group_classes['list'] . '">';
     foreach ($ingredient_group as $key => $ingredient) {
         if ('group' === $key) {
             $html .= $ingredient;
             $html .= '<ul>';
         } else {
             $html .= $wp_recipe_ingredients->generate_markup($ingredient);
         }
     }
     $html .= '</ul>';
     $html .= '</li>';
     return $html;
 }
 /**
  * Enqueues bundled scripts.
  */
 private function enqueue_bundled_scripts()
 {
     $wp_enqueue_util = WP_Enqueue_Util::get_instance();
     $wp_recipe = WP_Recipe::get_instance();
     $wp_recipe_ingredients = WP_Recipe_Ingredients::get_instance();
     $wp_recipe_ingredients_group = WP_Recipe_Ingredients_Group::get_instance();
     $handle = $wp_recipe->get_slug() . '-admin-script';
     $relative_path = __DIR__ . '/../admin/js/';
     $filename = 'bundle.min.js';
     $filename_debug = 'bundle.concat.js';
     $dependencies = array('underscore');
     $group_keys = $wp_recipe_ingredients_group->get_keys();
     $new_group = array($group_keys['group'] => '');
     $data = array('ingredient' => array('classes' => $wp_recipe_ingredients->get_classes(), 'group' => array('classes' => $wp_recipe_ingredients_group->get_classes(), 'keys' => $group_keys, 'markup' => $wp_recipe_ingredients_group->generate_admin_markup($new_group)), 'id' => WP_Recipe_Util::get_instance()->get_id($wp_recipe_ingredients->get_slug()), 'markup' => $wp_recipe_ingredients->generate_admin_markup()));
     $options = new WP_Enqueue_Options($handle, $relative_path, $filename, $filename_debug, $dependencies, $wp_recipe->get_version(), true);
     $localization_name = WP_Recipe_Util::get_instance()->get_id($wp_recipe->get_slug());
     $options->set_localization($localization_name, $data);
     $wp_enqueue_util->enqueue_script($options);
 }
 /**
  * Gets recipe shortcode template.
  *
  * @param array $attributes Shortcode attributes.
  * @return string Shortcode template.
  */
 private function get_template($attributes)
 {
     extract(shortcode_atts(array('id' => ''), $attributes));
     if (empty($id)) {
         return '';
     }
     $post_meta = get_post_meta($id);
     if (empty($post_meta)) {
         return '';
     }
     echo '<div class="recipe">';
     WP_Recipe_Title::get_instance()->render($id);
     WP_Recipe_Controls::get_instance()->render();
     WP_Recipe_Yield::get_instance()->render($post_meta);
     WP_Recipe_Description::get_instance()->render($post_meta);
     WP_Recipe_Ingredients::get_instance()->render($post_meta);
     WP_Recipe_Directions::get_instance()->render($post_meta);
     WP_Recipe_Tips::get_instance()->render($post_meta);
     WP_Recipe_After::get_instance()->render();
     echo '</div>';
 }
示例#5
0
<?php

WP_Recipe_Cross_Reference_Posts::get_instance();
WP_Recipe_Cross_Reference_Recipes::get_instance();
WP_Recipe_Cross_References::get_instance();
WP_Recipe_Description::get_instance();
WP_Recipe_Difficulty::get_instance();
WP_Recipe_Directions::get_instance();
WP_Recipe_Enqueue_Admin_Scripts::get_instance();
WP_Recipe_Enqueue_Admin_Styles::get_instance();
WP_Recipe_Enqueue_Scripts::get_instance();
WP_Recipe_Enqueue_Styles::get_instance();
WP_Recipe_Grunticon::get_instance();
WP_Recipe_Id::get_instance();
WP_Recipe_Ingredients::get_instance();
WP_Recipe_Post_Type::get_instance();
WP_Recipe_Post_Type_Columns::get_instance();
WP_Recipe_Post_Type_Remove_Default_Views::get_instance();
WP_Recipe_Query::get_instance();
WP_Recipe_Search_Results::get_instance();
WP_Recipe_Shortcode::get_instance();
WP_Recipe_Taxonomies::get_instance();
WP_Recipe_Tips::get_instance();
WP_Recipe_Yield::get_instance();