• I’m just wondering, is there a way to use this slider into a theme? As in I’d need to insert it into a page.php file as the hero slider (which is my homepage) and not in a post.

    What happened is when I created my homepage (in HTML), I used Owl Carousel (https://owlcarousel2.github.io/OwlCarousel2/) as my slider which is I believe what SA Slider is based on. Everything is fine on the static version. However, now I’d like to make the background image, title, and subtitle to be dynamic.

    I’m not sure how to go about that?

Viewing 1 replies (of 1 total)
  • Hi,
    I was playing with something similar for my homepage, and ended up writing my own custom plugin which offered short codes.
    put something like the following into a php file, and add a folder and that file into the plugins section of your site.

    Then go into the wordpress admin section and enable your plugin.

    <?php
    /*
    * Plugin Name: My Custom ShortCodes
    * Description: Create your WordPress shortcode.
    * Version: 1.0
    * Author: John Porra
    * Author URI: https://www.pum.com.au
    */
    
    // Example 1 : WP Shortcode to display form on any page or post.
    function pp_product_slider( $atts = [] ){
    
        // normalize attribute keys, lowercase
        // this next part allows you to pass arguments to the short code. i.e.
        [product-slider product="pizza"]
    
        $atts = array_change_key_case((array)$atts, CASE_LOWER);
    
        $product_name =  $atts['product'];
       
        global $wpdb;
        
        $postids = $wpdb->get_col($wpdb->prepare("
        SELECT      ID
        FROM        $wpdb->posts
        WHERE       $wpdb->posts.post_title like '" . $product_name . " %'
        ORDER BY    $wpdb->posts.post_title", $product_name)); 
    
        if ($postids) {
            $args = [
                'post_type'      => 'post',
                'posts_per_page' => -1,
                'orderby'        => 'post_title',
                'order'          => 'asc',
                'post__in' => $postids
            ];
    
            $the_query = new WP_Query($args);
        
            // The Loop
            // we put the output into a string, rather than an echo so that it can go where we want it, not where it appears when it executes.
            if ( $the_query->have_posts() ) {
                $o= '';
                if ( $the_query->have_posts() ) {
                    //$the_query->the_post();
                    $id = $the_query->posts[0]->ID;
    
                    // Here's where you'd build your custom HTML                
                    $o = $o .  '<div class="container primacy-slider">';
                    $o = $o .       '<div class="row">';
                    $o = $o .           '<div class="col-md-2"><a href="' . get_permalink($id) . '">' . get_the_post_thumbnail($id, 'fashify-thumb-default') . '</a></div>';
                    $o = $o .           '<div class="col-md-7">';
                    $o = $o .               '<a href="' . get_permalink($id) . '"><h4>' . get_the_title($id) . '</h4></a>';
                    $o = $o .               '<p>' . get_the_excerpt($id) . '</p>';
                    $o = $o .           '</div>';
                    $o = $o .           '<div class="col-md-3">';
    
                    
                    $o = $o .           '</div>';
                    $o = $o .       '</div>';
                    $o = $o .   '</div>';
                }
                
                /* Restore original Post Data */
                wp_reset_postdata();
            } else {
                // no posts found
                $o = 'Nothing here.';
            }
        }
        return $o;
    }
    // change 'product-slider' to the name you want YOUR short code to have...
    add_shortcode('product-slider', 'pp_product_slider');
    ?>

    Then to use it, set up the slider to enable short codes, and add your short code in there.

    i.e. for the one above use
    [product-slider product="pizza"]
    and then your slide will be populated with the “pizza product”

    Hope this helps.

Viewing 1 replies (of 1 total)
  • The topic ‘How to embed plugin into a theme?’ is closed to new replies.