当前位置: 首页>>代码示例>>PHP>>正文


PHP TimberHelper类代码示例

本文整理汇总了PHP中TimberHelper的典型用法代码示例。如果您正苦于以下问题:PHP TimberHelper类的具体用法?PHP TimberHelper怎么用?PHP TimberHelper使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了TimberHelper类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: get_context

 /**
  * Custom implementation for get_context method.
  */
 public function get_context()
 {
     global $content_width;
     if (class_exists('Easy_Digital_Downloads')) {
         global $edd_options;
     }
     $context = Timber::get_context();
     $sidebar_primary = Timber::get_widgets('sidebar_primary');
     $sidebar_footer = Timber::get_widgets('sidebar_footer');
     $context['theme_mods'] = get_theme_mods();
     $context['site_options'] = wp_load_alloptions();
     $context['teaser_mode'] = apply_filters('maera/teaser/mode', 'excerpt');
     $context['thumbnail']['width'] = apply_filters('maera/image/width', 600);
     $context['thumbnail']['height'] = apply_filters('maera/image/height', 371);
     $context['menu']['primary'] = has_nav_menu('primary_navigation') ? new TimberMenu('primary_navigation') : null;
     $context['sidebar']['primary'] = apply_filters('maera/sidebar/primary', $sidebar_primary);
     $context['sidebar']['footer'] = apply_filters('maera/sidebar/footer', $sidebar_footer);
     $context['pagination'] = Timber::get_pagination();
     $context['comment_form'] = TimberHelper::get_comment_form();
     $context['comments_args'] = array('style' => 'ul', 'reply_text' => __('Reply', 'maera'), 'short_ping' => true, 'avatar_size' => 60);
     $context['site_logo'] = get_option('site_logo', false);
     $context['content_width'] = $content_width;
     $context['sidebar_template'] = maera_templates_sidebar();
     if (class_exists('Easy_Digital_Downloads')) {
         $data['edd_options'] = $edd_options;
         $data['download_categories'] = Timber::get_terms('download_category');
         $data['download_tags'] = Timber::get_terms('download_tag');
         $data['default_image'] = new TimberImage(get_template_directory_uri() . '/assets/images/default.png');
     }
     return apply_filters('maera/timber/context', $context);
 }
开发者ID:wpmu,项目名称:maera,代码行数:34,代码来源:class-maera-timber.php

示例2: handle_post_results

 /**
  * @param array $results
  * @param string $PostClass
  * @return array
  */
 static function handle_post_results($results, $PostClass = 'TimberPost')
 {
     $posts = array();
     foreach ($results as $rid) {
         $PostClassUse = $PostClass;
         if (is_array($PostClass)) {
             $post_type = get_post_type($rid);
             $PostClassUse = 'TimberPost';
             if (isset($PostClass[$post_type])) {
                 $PostClassUse = $PostClass[$post_type];
             } else {
                 if (is_array($PostClass)) {
                     TimberHelper::error_log($post_type . ' of ' . $rid . ' not found in ' . print_r($PostClass, true));
                 } else {
                     TimberHelper::error_log($post_type . ' not found in ' . $PostClass);
                 }
             }
         }
         $post = new $PostClassUse($rid);
         if (isset($post->ID)) {
             $posts[] = $post;
         }
     }
     return new TimberPostsCollection($posts, $PostClass);
 }
开发者ID:aauroux,项目名称:timber,代码行数:30,代码来源:timber-post-getter.php

示例3: initializeContext

 public function initializeContext($context)
 {
     $context = parent::initializeContext($context);
     $context['menu'] = new \TimberMenu();
     $context['wp_nonce_field'] = \TimberHelper::function_wrapper('wp_nonce_field');
     return $context;
 }
开发者ID:StoutLogic,项目名称:understory-theme,代码行数:7,代码来源:Site.php

示例4: __construct

 public function __construct($posts = array(), $post_class = 'TimberPost')
 {
     $returned_posts = array();
     if (is_null($posts)) {
         $posts = array();
     }
     foreach ($posts as $post_object) {
         $post_class_use = $post_class;
         if (is_array($post_class)) {
             $post_type = get_post_type($post_object);
             $post_class_use = 'TimberPost';
             if (isset($post_class[$post_type])) {
                 $post_class_use = $post_class[$post_type];
             } else {
                 if (is_array($post_class)) {
                     TimberHelper::error_log($post_type . ' of ' . $post_object->ID . ' not found in ' . print_r($post_class, true));
                 } else {
                     TimberHelper::error_log($post_type . ' not found in ' . $post_class);
                 }
             }
         }
         // Don't create yet another object if $post_object is already of the right type
         if (is_a($post_object, $post_class_use)) {
             $post = $post_object;
         } else {
             $post = new $post_class_use($post_object);
         }
         if (isset($post->ID)) {
             $returned_posts[] = $post;
         }
     }
     $returned_posts = self::maybe_set_preview($returned_posts);
     parent::__construct($returned_posts, $flags = 0, 'TimberPostsIterator');
 }
开发者ID:Butterwell,项目名称:timber,代码行数:34,代码来源:timber-posts-collection.php

示例5: run

 /**
  * Performs the actual image manipulation,
  * including saving the target file.
  *
  * @param  string $load_filename filepath (not URL) to source file
  *                               (ex: /src/var/www/wp-content/uploads/my-pic.jpg)
  * @param  string $save_filename filepath (not URL) where result file should be saved
  *                               (ex: /src/var/www/wp-content/uploads/my-pic@2x.jpg)
  * @return bool                  true if everything went fine, false otherwise
  */
 function run($load_filename, $save_filename)
 {
     $image = wp_get_image_editor($load_filename);
     if (!is_wp_error($image)) {
         $current_size = $image->get_size();
         $src_w = $current_size['width'];
         $src_h = $current_size['height'];
         // Get ratios
         $w = $src_w * $this->factor;
         $h = $src_h * $this->factor;
         $image->crop(0, 0, $src_w, $src_h, $w, $h);
         $result = $image->save($save_filename);
         if (is_wp_error($result)) {
             error_log('Error resizing image');
             error_log(print_r($result, true));
             return false;
         } else {
             return true;
         }
     } else {
         if (isset($image->error_data['error_loading_image'])) {
             TimberHelper::error_log('Error loading ' . $image->error_data['error_loading_image']);
         } else {
             TimberHelper::error_log($image);
         }
     }
     return false;
 }
开发者ID:wpmu,项目名称:maera,代码行数:38,代码来源:timber-image-operation-retina.php

示例6: __construct

 public function __construct($query = false, $posts_class = 'TimberPost')
 {
     add_action('pre_get_posts', array($this, 'fix_number_posts_wp_quirk'));
     if ($posts_class) {
         $this->_posts_class = $posts_class;
     }
     if (is_a($query, 'WP_Query')) {
         // We got a full-fledged WP Query, look no further!
         $the_query = $query;
     } elseif (false === $query) {
         // If query is explicitly set to false, use the main loop
         global $wp_query;
         $the_query =& $wp_query;
     } elseif (TimberHelper::is_array_assoc($query) || is_string($query) && strstr($query, '=')) {
         // We have a regularly formed WP query string or array to use
         $the_query = new WP_Query($query);
     } elseif (is_numeric($query) || is_string($query)) {
         // We have what could be a post name or post ID to pull out
         $the_query = self::get_query_from_string($query);
     } elseif (is_array($query) && count($query) && (is_integer($query[0]) || is_string($query[0]))) {
         // We have a list of pids (post IDs) to extract from
         $the_query = self::get_query_from_array_of_ids($query);
     } else {
         TimberHelper::error_log('I have failed you! in ' . basename(__FILE__) . '::' . __LINE__);
         TimberHelper::error_log($query);
         // We have failed hard, at least let get something.
         $the_query = new WP_Query();
     }
     $this->_query = $the_query;
 }
开发者ID:JimCaignard,项目名称:wordpress-sass-gulp-timber-starter,代码行数:30,代码来源:timber-query-iterator.php

示例7: call

 /**
  *
  *
  * @return string
  */
 public function call()
 {
     $args = $this->_parse_args(func_get_args(), $this->_args);
     if ($this->_use_ob) {
         return TimberHelper::ob_function($this->_function, $args);
     } else {
         return call_user_func_array($this->_function, $args);
     }
 }
开发者ID:Butterwell,项目名称:timber,代码行数:14,代码来源:timber-function-wrapper.php

示例8: add_to_context

 function add_to_context($context)
 {
     $context['current_url'] = TimberHelper::get_current_url();
     $context['pagination'] = Timber::get_pagination();
     $context['bethel_header_menu'] = new TimberMenu('primary');
     $context['bethel_sidebar_menu'] = new TimberMenu('sidebar');
     $context['site'] = $this;
     return $context;
 }
开发者ID:betheluniversity,项目名称:bethel-responsive-wp,代码行数:9,代码来源:functions.php

示例9: init

 function init()
 {
     $this->name = get_bloginfo('name');
     $this->title = $this->name;
     $this->description = get_bloginfo('description');
     $this->url = get_bloginfo('url');
     $this->language = get_bloginfo('language');
     $this->charset = get_bloginfo('charset');
     $this->pingback_url = get_bloginfo('pingback_url');
     $this->language_attributes = TimberHelper::function_wrapper('language_attributes');
 }
开发者ID:pedrokoblitz,项目名称:centro-dialogo-aberto,代码行数:11,代码来源:timber-site.php

示例10: testGetPostsByMeta

 function testGetPostsByMeta()
 {
     $pids = array();
     $lauren = $this->factory->post->create(array('post_title' => 'Lauren Richler'));
     $jared = $this->factory->post->create(array('post_title' => 'Jared Novack'));
     update_post_meta($lauren, 'in', 'love');
     update_post_meta($jared, 'in', 'love');
     $in_love = TimberHelper::get_posts_by_meta('in', 'love');
     $this->assertContains($lauren, $in_love);
     $this->assertContains($jared, $in_love);
     $this->assertEquals(2, count($in_love));
 }
开发者ID:Butterwell,项目名称:timber,代码行数:12,代码来源:test-timber-deprecated.php

示例11: testGetObjectIndexByProperty

 function testGetObjectIndexByProperty()
 {
     $obj1 = new stdClass();
     $obj1->name = 'mark';
     $obj1->skill = 'acro yoga';
     $obj2 = new stdClass();
     $obj2->name = 'austin';
     $obj2->skill = 'cooking';
     $arr = array($obj1, $obj2);
     $index = TimberHelper::get_object_index_by_property($arr, 'skill', 'cooking');
     $this->assertEquals(1, $index);
     $obj = TimberHelper::get_object_by_property($arr, 'skill', 'cooking');
     $this->assertEquals('austin', $obj->name);
 }
开发者ID:aauroux,项目名称:timber,代码行数:14,代码来源:test-timber-helper.php

示例12: init

 protected function init()
 {
     $this->admin_email = get_bloginfo('admin_email');
     $this->name = get_bloginfo('name');
     $this->title = $this->name;
     $this->description = get_bloginfo('description');
     $this->url = get_bloginfo('url');
     $this->language = get_bloginfo('language');
     $this->charset = get_bloginfo('charset');
     $this->pingback_url = get_bloginfo('pingback_url');
     $this->theme = new TimberTheme();
     $this->language_attributes = TimberHelper::function_wrapper('language_attributes');
     $this->multisite = false;
 }
开发者ID:wpmu,项目名称:maera,代码行数:14,代码来源:timber-site.php

示例13: testAgainstFooterFunctionOutput

 function testAgainstFooterFunctionOutput()
 {
     global $wp_scripts;
     $wp_scripts = null;
     wp_enqueue_script('colorpicker', false, array(), false, true);
     wp_enqueue_script('fake-js', 'http://example.org/fake-js.js', array(), false, true);
     $wp_footer = TimberHelper::ob_function('wp_footer');
     global $wp_scripts;
     $wp_scripts = null;
     wp_enqueue_script('colorpicker', false, array(), false, true);
     wp_enqueue_script('fake-js', 'http://example.org/fake-js.js', array(), false, true);
     $str = Timber::compile_string('{{function("wp_footer")}}');
     $this->assertEquals($wp_footer, $str);
     $this->assertGreaterThan(50, strlen($str));
 }
开发者ID:Butterwell,项目名称:timber,代码行数:15,代码来源:test-timber-wp-functions.php

示例14: get_terms

 /**
  * @param string|array $args
  * @param array $maybe_args
  * @param string $TermClass
  * @return mixed
  */
 public static function get_terms($args = null, $maybe_args = array(), $TermClass = 'TimberTerm')
 {
     if (is_string($maybe_args) && !strstr($maybe_args, '=')) {
         //the user is sending the $TermClass in the second argument
         $TermClass = $maybe_args;
     }
     if (is_string($maybe_args) && strstr($maybe_args, '=')) {
         parse_str($maybe_args, $maybe_args);
     }
     if (is_string($args) && strstr($args, '=')) {
         //a string and a query string!
         $parsed = TimberTermGetter::get_term_query_from_query_string($args);
         if (is_array($maybe_args)) {
             $parsed->args = array_merge($parsed->args, $maybe_args);
         }
         return self::handle_term_query($parsed->taxonomies, $parsed->args, $TermClass);
     } else {
         if (is_string($args)) {
             //its just a string with a single taxonomy
             $parsed = TimberTermGetter::get_term_query_from_string($args);
             if (is_array($maybe_args)) {
                 $parsed->args = array_merge($parsed->args, $maybe_args);
             }
             return self::handle_term_query($parsed->taxonomies, $parsed->args, $TermClass);
         } else {
             if (is_array($args) && TimberHelper::is_array_assoc($args)) {
                 //its an associative array, like a good ole query
                 $parsed = TimberTermGetter::get_term_query_from_assoc_array($args);
                 return self::handle_term_query($parsed->taxonomies, $parsed->args, $TermClass);
             } else {
                 if (is_array($args)) {
                     //its just an array of strings or IDs (hopefully)
                     $parsed = TimberTermGetter::get_term_query_from_array($args);
                     if (is_array($maybe_args)) {
                         $parsed->args = array_merge($parsed->args, $maybe_args);
                     }
                     return self::handle_term_query($parsed->taxonomies, $parsed->args, $TermClass);
                 } else {
                     if (is_null($args)) {
                         return self::handle_term_query(get_taxonomies(), array(), $TermClass);
                     }
                 }
             }
         }
     }
     return null;
 }
开发者ID:aauroux,项目名称:timber,代码行数:53,代码来源:timber-term-getter.php

示例15: timber_extras

 /**
  * Timber extras.
  */
 function timber_extras($data)
 {
     // get secondary sidebar
     $sidebar_secondary = Timber::get_widgets('sidebar_secondary');
     $data['sidebar']['secondary'] = apply_filters('maera/sidebar/secondary', $sidebar_secondary);
     $extra_widget_areas = Maera_BS_Widgets::extra_widget_areas_array();
     foreach ($extra_widget_areas as $extra_widget_area => $options) {
         if (0 != get_theme_mod($extra_widget_area . '_toggle', 0)) {
             $data['sidebar'][$extra_widget_area] = Timber::get_widgets($extra_widget_area);
         }
     }
     $comment_form_args = array('comment_field' => '<p class="comment-form-comment"><label for="comment">' . _x('Comment', 'noun', 'maera_bs') . '</label><textarea class="form-control" id="comment" name="comment" cols="45" rows="8" aria-required="true"></textarea></p>', 'id_submit' => 'comment-submit');
     $data['content_width'] = Maera_BS_Structure::content_width_px();
     $data['post_meta'] = Maera_BS_Meta::meta_elements();
     $data['comment_form'] = TimberHelper::get_comment_form(null, $comment_form_args);
     return $data;
 }
开发者ID:sevir,项目名称:maera-bootstrap,代码行数:20,代码来源:class-maera-bs-timber.php


注:本文中的TimberHelper类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。