Only execute jQuery function(on document ready) on the page has shortcode from plugin [duplicate]

You can wp_enqueue_script in your shourtcode. Here are the code I fixed. Register your JS file function wh_enqueue() { wp_register_script( ‘wh-ajax-app’, WH_PATH . ‘/js/write-here-ajax.js’, array(‘jquery’), ‘1.0.0’, true ); } add_action( ‘wp_enqueue_scripts’, ‘wh_enqueue’ ); and enqueue in your shortcode function function ajax_write_here(){ wp_enqueue_script( ‘wh-ajax-app’ ); // Enqueue your script here $output=”<div id=”write_here_ajax_wrap”></div>”; return $output; } add_shortcode(‘write-here-ajax’, … Read more

Wrap each shortcode in array to div

You need to recurse into the shortcode content ($m[5] as returned by get_shortcode_regex()), the standard way being to use preg_replace_callback(): public function wrapShortcode( $content ) { $content = preg_replace_callback( “https://wordpress.stackexchange.com/” . get_shortcode_regex() . ‘/s’, array( $this, ‘wrapShortcodeCallback’ ), $content ); remove_filter( ‘the_content’, array( $this, ‘wrapShortcode’ ), -9999999 ); // Stray spaces can create lost paragraph … Read more

Remove and restore one shortcode

Another old unanswered question. Hopefully useful to someone in the future. WordPress stores shortcode tags and callbacks in the $shortcode_tags. This is how I’d do it. function my_the_content( $content ) { global $shortcode_tags; $tag= ‘some_shortcode’; //* Make sure it’s actually a valid shortcode if( ! isset( $shortcode_tags[ $tag ] ) ) { return $content; } … Read more

Editing built in Gallery shortcode to filter by categories

There are various ways to run another WP_Query with a tax query and collect the ID’s into the include attribute of the gallery shortcode. Let’s try another approach, without running a secondary WP_Query. Native gallery: Support taxonomy and term attributes We introduce the following custom gallery shortcode attributes: Here’s a demo plugin that supports that … Read more

How to exclude shortcode from specific page IDs if it’s set to global

Please try this and let me know the result function my_shortcode_to_a_post( $content ) { global $post; $disabled_post_ids = array(’20’, ’31’, ’35’); $disabled_tag_ids = array(‘5′, ’19’, ’25’); $current_post_id = get_the_ID(); // try setting it to $post->ID; if it doesn’t work for some reason if(in_array($current_post_id, $disabled_post_ids)) { return $content; } $current_post_tags = get_the_tags($current_post_id); if($current_post_tags){ $tags_arr = array(); … Read more

Shortcode does not work, changes html order

the_post_thumbnail_url() will echo the URL. You should use functions that have get_the_… in the beginning of their names, since functions starting with the_… will generally echo the content. So, your sprintf should use get_the_post_thumbnail_url() like this: $html .= sprintf( ‘<div class=”grid-item”><a href=”https://wordpress.stackexchange.com/questions/278102/%s” title=””>%s</a></div>’, get_the_post_thumbnail_url( get_the_ID(), ‘full’ ), the_title_attribute( ‘echo=0’ ), //get_the_title() //the_post_thumbnail() ); However, in … Read more

Custom Shortcodes Giving error on development site

Initialize the variables first. See code below: function mbiz_tabbed_box( $atts, $content = null ) { extract( shortcode_atts( array( ‘tab1’ => ”, ‘tab2’ => ”, ‘tab3’ => ”, ‘tab4’ => ”, ‘tab5’ => ”, ), $atts ) ); $tab1_button = $tab2_button = $tab3_button = $tab4_button = $tab5_button = ”; if ($tab1) $tab1_button = ‘<li><a href=”#” title=”tab1″>’ … Read more