type-sharetwitter-text-before']); } else { $twitter_share_text_before = ""; } if(!empty($layer['settings']['link-type-sharetwitter-text-after'])){ $twitter_share_text_after = str_replace(array("%title%","%excerpt%"), array($title,$excerpt), $layer['settings']['link-type-sharetwitter-text-after']); } else { $twitter_share_text_after = ""; } $twitter_share_text = $twitter_share_text_before.$twitter_share_url.$twitter_share_text_after; $text = ''.$text.''; break; case 'likepost': if(!empty($this->post['ID'])) $text = ''.$text.''; //javascript-link else $text = ''; break; } if($link_to !== 'none') $do_display = true; //set back to true if a link is set on layer $text = trim($text); //check for special styling coming from post option and set css to the queue if(isset($layer['id'])) $this->set_meta_element_changes($layer['id'], $unique_class); $post_class = (!isset($post['ID'])) ? '' : ' eg-post-'.$post['ID']; if($base->text_has_certain_tag($text, 'a') && !$do_ignore_styles){ //check if a tag exists, if yes, class will be set to a tags and not the wrapping div, also the div will receive the position and other stylings // && @$layer['settings']['source'] !== 'text' if($is_woo_cats && strpos($text, 'class="') !== false || $is_woo_button || $is_filter_cat && strpos($text, 'class="') !== false){ //add to the classes instead of creating own class attribute if it is woocommerce cats AND a class can be found $text = str_replace('class="', 'class="'.$unique_class.$post_class.$lb_class.' ', $text); }elseif($is_html_source && strpos($text, 'class="') !== false){ $text = str_replace('', '', $text); //moved to more global css generation process @version: 2.0 //$this->add_css_wrap[$unique_class]['a']['display'] = $do_display; //do_display defines if we should write display: block; //$this->add_css_wrap[$unique_class]['a']['full'] = $do_full; //do full styles (for categories and tags separator) $unique_class .= '-a'; } if($do_ignore_styles) $unique_class = 'eg-'.esc_attr($this->handle).'-nostyle-element-'.$layer['id']; //replace all the normal shortcodes if(function_exists('qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate $text = qtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text); }elseif(function_exists('ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate plus $text = ppqtrans_useCurrentLanguageIfNotFoundUseDefaultLanguage($text); }elseif(function_exists('qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage')){ //use qTranslate X $text = qtranxf_useCurrentLanguageIfNotFoundUseDefaultLanguage($text); } $text = do_shortcode($text); if($special_item == 'true' && $special_item_type == 'line-break'){ //line break element echo ' '."\n"; }elseif(trim($text) !== ''){ //}elseif(!empty($text)){ $use_tag = $base->getVar($layer['settings'], 'tag-type', 'div'); echo ' <'.$use_tag.' class="esg-'.$class.$post_class.$video_play.$ajax_class.' '.$hideunderClass.$unique_class.$transition.'"'.$ajax_attr.$transition_split.$delay.$hideunderHTML; echo ($demo == 'custom') ? $demo_element_type : ''; echo $data_transition_transition . '>'; echo $text; echo ''."\n"; } } /** * Retrieve the value of post elements */ public function get_post_value($handle, $separator, $function, $meta, $catmax = '-1', $taxonomy = ""){ $base = new Essential_Grid_Base(); $text = ''; /* 2.1.5 category max option */ $adjustMax = false; if( in_array( $handle, array( 'cat_list','tag_list','taxonomy') ) ) { if(!empty($catmax) && $catmax !== '-1' && is_numeric($catmax) && intval($catmax) > 0) { $catmax = intval($catmax); $adjustMax = true; } } switch($handle){ //Post elements case 'post_id': $text = $base->getVar($this->post, 'ID', ''); break; case 'post_url': $post_id = $base->getVar($this->post, 'ID', ''); $text = get_permalink($post_id); break; case 'title': $text = $base->getVar($this->post, 'post_title', ''); break; case 'caption': case 'excerpt': $text = trim($base->getVar($this->post, 'post_excerpt')); if(empty($text)){ //strip essential grid shortcode here $text = do_shortcode($base->strip_essential_shortcode($base->getVar($this->post, 'post_content'))); $text = preg_replace("/]*>(.*?)<\\/style>/s", "", $text); $text = preg_replace("/]*>(.*?)<\\/script>/s", "", $text); } $text = strip_tags($text); //,"

" break; case 'meta': $m = new Essential_Grid_Meta(); $text = $m->get_meta_value_by_handle($base->getVar($this->post, 'ID', ''),$meta); break; case 'likespost': $post_id = $base->getVar($this->post, 'ID', ''); if(!empty($post_id)){ $count = get_post_meta($post_id, "eg_votes_count", 0); if(!$count) $count[0] = 0; if(is_array($count)){ $text = ''.$count[0].''; } } else{ $text = ''; } break; case 'alias': $text = $base->getVar($this->post, 'post_name'); break; case 'content': $text = apply_filters('the_content', $base->getVar($this->post, 'post_content')); break; case 'link': $text = get_permalink($base->getVar($this->post, 'ID', '')); break; case 'date': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = $base->convert_post_date($postDate); break; case 'date_day': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('dd',strtotime($postDate)); break; case 'date_month': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('m',strtotime($postDate)); break; case 'date_month_abbr': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('M',strtotime($postDate)); break; case 'date_year': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('Y',strtotime($postDate)); break; case 'date_year_abbr': $postDate = $base->getVar($this->post, "post_date_gmt"); $text = date('y',strtotime($postDate)); break; case 'date_modified': $dateModified = $base->getVar($this->post, "post_modified"); $text = $base->convert_post_date($dateModified); break; case 'author_name': $authorID = $base->getVar($this->post, 'post_author'); $text = get_the_author_meta('display_name', $authorID); break; case 'author_posts': $authorID = $base->getVar($this->post, 'post_author'); $text = get_author_posts_url($authorID ); break; case 'author_profile': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_the_author_meta('url', $authorID); break; case 'author_avatar_32': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 32); break; case 'author_avatar_64': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 64); break; case 'author_avatar_96': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 96); break; case 'author_avatar_512': $authorID = $base->getVar($this->post, 'post_author'); $meta_value = get_avatar( $authorID, 512); break; case 'num_comments': $text = $base->getVar($this->post, 'comment_count'); break; case 'cat_list': $use_taxonomies = false; $postCatsIDs = $base->getVar($this->post, 'post_category'); if(empty($postCatsIDs) && isset($this->post['post_type'])){ $postCatsIDs = array(); $obj = get_object_taxonomies($this->post['post_type']); if(!empty($obj) && is_array($obj)){ foreach($obj as $tax){ if($tax == 'post_tag') continue; $use_taxonomies[] = $tax; $new_terms = get_the_terms($base->getVar($this->post, 'ID', ''), $tax); if(is_array($new_terms) && !empty($new_terms)){ foreach($new_terms as $term){ $postCatsIDs[$term->term_id] = $term->term_id; } } } } } /* 2.1.5 category max option */ if($adjustMax && is_array($postCatsIDs)) $postCatsIDs = array_slice($postCatsIDs, 0, $catmax, true); $text = $base->get_categories_html_list($postCatsIDs, $function, $separator, $use_taxonomies); break; case 'tag_list': if(!$adjustMax) { $text = $base->get_tags_html_list($base->getVar($this->post, 'ID', ''), $separator, $function); } else { $text = $base->get_tags_html_list($base->getVar($this->post, 'ID', ''), $separator, $function, $catmax); } break; case 'taxonomy': if(!$adjustMax) { $text = $base->get_tax_html_list($base->getVar($this->post, 'ID', ''), $taxonomy, $separator, $function); } else { $text = $base->get_tax_html_list($base->getVar($this->post, 'ID', ''), $taxonomy, $separator, $function, $catmax); } break; /* case 'iframe': print '


'; die(); break; */ default: $text = apply_filters('essgrid_post_meta_content', $text, $handle, $base->getVar($this->post, 'ID', ''), $this->post); break; } return $text; } /** * Retrieve the value of post elements */ public function get_custom_element_value($handle, $separator, $meta = ''){ $base = new Essential_Grid_Base(); $m = new Essential_Grid_Meta(); $text = ''; $text = $base->getVar($this->layer_values, $handle, ''); if($text == '' && $meta != '') $text = $base->getVar($this->layer_values, $meta, ''); if(intval($text) > 0){ //we may be an image from the metas $custom_meta = $m->get_all_meta(false); if(!empty($custom_meta)){ foreach($custom_meta as $cmeta){ if($cmeta['handle'] == $handle){ if($cmeta['type'] == 'image'){ $img = wp_get_attachment_image_src($text, $this->media_sources_type); if($img !== false){ $text = $img[0]; //replace with URL } } break; } } } } return $text; } /** * Retrieve the value of event elements */ public function get_event_manager_value($handle){ $base = new Essential_Grid_Base(); $text = ''; switch($handle){ //check for event manager case 'event_start_date': break; case 'event_end_date': break; case 'event_start_time': break; case 'event_end_time': break; case 'event_event_id': break; case 'event_location_name': break; case 'event_location_slug': break; case 'event_location_address': break; case 'event_location_town': break; case 'event_location_state': break; case 'event_location_postcode': break; case 'event_location_region': break; case 'event_location_country': break; } return $text; } /** * Retrieve the value of woocommerce elements */ public function get_woocommerce_value($meta, $separator, $catmax = false){ $text = ''; if(isset($this->post['ID'])){ if(Essential_Grid_Woocommerce::is_woo_exists()){ $base = new Essential_Grid_Base(); $m = new Essential_Grid_Meta(); /* 2.1.5 category max option */ $adjustMax = false; if($meta === 'wc_categories') { if(!empty($catmax) && $catmax !== '-1' && is_numeric($catmax) && intval($catmax) > 0) { $catmax = intval($catmax); $adjustMax = true; } } if($adjustMax) { $text = Essential_Grid_Woocommerce::get_value_by_meta($this->post['ID'], $meta, $separator, $catmax); } else { $text = Essential_Grid_Woocommerce::get_value_by_meta($this->post['ID'], $meta, $separator); } } } return $text; } } My Gear - Dear Alyne




    1. Camera: Panasonic Lumix GH5
    2. Microphone: RODE VideoMic Pro+
    3. Tripod: Joby GorillaPod

Okay so here are my three NEED TO HAVE camera equipment!

I love my Panasonic Lumix GH5 because it’s got a flip screen, takes great slow-mo shots, and has great overall quality. And then there’s my RODE mic, which is AWESOME cause not only is it great at capturing clear audio, it turns on automatically, and I NEVER have to worry about missing out on audio when I’m on the go.

And finally, there’s my Joby GorillaPod. It’s so useful, I have literally never taken it off my camera. It makes it easier for me to hold my camera and I can get stable shots even when I’m outside, as long as there’s a fence or pole nearby.



    1. Comb: Tangle Teezer
    2. Conditioner: Aussie 3 Minute Miracle Moist Treatment
    3. Shampoo: Lush Shampoo Bars (You have to buy them in-store)
    4. Hair oil: OUAI Hair Oil
    5. Hair Straightener: GHD Hair straightener

I love all the things I’ve listed here. They’ve all been so useful and reaaally good at keeping my hair soft and tangle free. And that’s a big deal because my hair becomes freakishly curly and makes dreads on its own if I don’t take care of it.

I’ll be linking a blog post to how I do my hair real soon, check this page again for it!


  1. Cleanser, toner, moisturiser, EVERYTHING: Arbonne
  2. Face mask: Himalayan charcoal purifying glow mask by The Body Shop.

I use Arbonne for all my basic facial things from facial cleanser to toner and moisturiser. I love it because vegan and cruelty-free. It’s all hassle free and works well on my skin!

And when it comes to stuff like face masks, I LOVE mud masks. If you can, get some dead sea mud from Israel, if not, the Himalayan charcoal mask from The Body Shop works well too. Mud masks are great because they suck all the impurities out of my skin and it’s a great reset for my skin after a long flight!


  1. Toothbrush: Oral-B automatic toothbrush
  2. Teeth whitening: Crest whitening strips

Okay, I love my teeth and I’m super into dental hygiene. These two things are what I use all the time to keep them so white. The Oral-B automatic toothbrush is perfect for cleaning my teeth cause it’s SO FAST and cleans way better than I could with a normal brush. And I’ve used it ever since high school when my mom got it for me. 

And then I’ve always been using Crest whitening strips to keep my teeth are so white. (Also, I don’t really drink wine, coffee, or tea!) You’re supposed to use the strips every day for two weeks, but I feel that it works fine when I use it once in a while, when I see my teeth getting a little yellow.



For health insurance, I use Safety Wing! But I didn’t always use it, and I traveled for two years without ANY HEALTH INSURANCE. Because health insurance in general sooo freakishly expensive. So when I found Safety Wing, which costs less than $50 a month, I was so happy. It covers a solid amount after a $250 deductible.

The main purpose of my having travel insurance is if I get in a MAJOR accident, so this insurance has got me covered, and for an amazing price. The best part is how the team is so responsive and quick to reply when I have questions.

Go sign up for yours here!


Join our newsletter and we’ll keep you updated.