Tag Info

Hot answers tagged

3

Wordpress use an option to store the current active child theme. This option is named 'stylesheet'. Using the filter 'pre_option_{$option_name}' you can change every option getted by WP. So, in your case you should hook the 'pre_option_stylesheet' filter, use some logic to retrieve current season and return the child theme you want. This workflow should be ...


3

I want to suggest you another approach. You can set a meta when you saving a post if its content is less than 140 chars, so then you can simply runs a simple meta query. add_action( 'save_post_post', function( $id, $post ) { if ( $post->post_status !== 'publish' ) return; if ( strlen( $post->post_content <= 140 ) ) { update_post_meta( $id, ...


3

You have a lot of PHP tag spam, e.g.: ?><?php This is bad, confusing, makes your code difficult to read, and a waste of your time to type. It's the difficulty reading your code that has lead to your problem, including the lack of indentation. These are important, and any good editor will do them for you effortlessly. If we remove the PHP tag spam, ...


2

Yes, you could try this - foreach( $create_pages as $new_page ){ $content = "Default ". strtolower($new_page) ." page content"; $add_pages = array( 'post_title' => $new_page, 'post_content' => $content, 'post_status' => 'publish', 'post_type' => 'page' ); $page_id = wp_insert_post($add_pages); } ...


1

I can't help but think I am missing something but what seems like the obvious answer is to alter your $create_pages array: $create_pages = array( 'one' => 'content for one', 'two' => 'content for two', 'three' => 'content for three' ); foreach ($create_pages as $title => $content) { $add_pages = array( 'post_title' => ...


1

The dynamic sidebar code you are using uses the page title of the topmost page to name the sidebar. get_the_title finds the title of the page you are on, not the topmost page title. You need a function that tells you the title of the topmost page in a page hierarchy. /** * Get the topmost page title. * * @link ...


1

Since you have specific sidebar on parent pages and default sidebar for subpages, your condition may be ( i am assuming your are in wordpress loop ) check for page, parent page or sub page. check sidebar widget area exist for page if current page is parent page dynamic_sidebar return True, if widget sidebar was found and called. False if not found or ...


1

You can do it like this: <?php $blog_id = get_current_blog_id(); if ( 1 == $blog_id ) { ?> <!-- Your FIRST code block here --> <?php } else { ?> <!-- Your SECOND code block here --> <?php } ?> Here's the whole prettified version of the code you can use (totally UNTESTED, but should work unless there are any silly ...


1

If you're trying to distinguish between your network's "main" site and any others, you can use the conditional tag is_main_site(): if( is_main_site() ) { do_something(); } else { do_something_else(); }


1

try this <?php if ( is_tag( 'Premium' ) ) : ?> <a href="<?php the_permalink(); ?>" class="info">Subscribe</a> <?php else : ?> <a href="<?php the_permalink(); ?>" class="info">Read More</a> <?php endif; ?>


1

This really helped me, I combined this with other code I had - I needed to give image links their own class for Magnific Popup, BUT only for my Blog/news section and not custom posts. Hope this helps others: add_filter('the_content', 'my_addlightboxrel'); function my_addlightboxrel($content) { if ( 'craft' == get_post_type() ) return $content; ...


1

Since WP 3.3 you can use wp_enqueue_*() after wp_head, and enqueued scripts and styles (if not already added to the head of the page) would be loaded in the footer. In short just call wp_enqueue_script() / wp_enqueue_style() in your shortcode callback: add_shortcode( 'my_shortcode', 'my_shortcode_callback' ); function my_shortcode_callback(){ ...


1

You need to add your function in the template_redirect hook. You need to first wait for wordpress to finish loading pages before you can add your hook to remove wpautop, otherwise your hook will simply get run over. So your funtion will look like this function pietergoosen_remove_wpautop() { if ( is_page ( 'services' ) ) { remove_filter( 'the_content', ...


1

The appropriately named get_children() should be what you want. if ( have_posts() ) { while ( $loop->have_posts() ) { $loop->the_post(); $args = array( 'post_parent' => get_the_ID(), // the ID from your loop 'post_type' => 'page', 'posts_per_page' => 1, // you only need to know if you have children so one is ...



Only top voted, non community-wiki answers of a minimum length are eligible