Forum Replies Created

Viewing 2 replies - 1 through 2 (of 2 total)
  • Thread Starter peura

    (@henkkah)

    Thanks Jeremy,

    suspected as much. Will definitely check out MailPoet.

    For future reference, as the domains have separate feeds MailChimps RSS to Email would probably also do the trick.

    Thread Starter peura

    (@henkkah)

    Hello Manny,

    and thanks for a great plugin. Here’s the code.

    metab-hero.php, included in functions.php:

    <?php
    
    add_filter('rwmb_meta_boxes', 'lullebiegga_register_metaboxes');
    
    /**
     * Register meta boxes
     *
     * Remember to change "your_prefix" to actual prefix in your project
     *
     * @param array $meta_boxes List of meta boxes
     *
     * @return array
     */
    function lullebiegga_register_metaboxes($meta_boxes)
    {
    
        /**
         * prefix of meta keys (optional)
         * Use underscore (_) at the beginning to make keys hidden
         * Alt.: You also can make prefix empty to disable it
         */
        // Better has an underscore as last sign
        $prefix = 'lullebiegga_';
    
        $meta_boxes[] = array(
            // Meta box id, UNIQUE per meta box. Optional since 4.1.5
            'id' => 'hero',
    
            // Meta box title - Will appear at the drag and drop handle bar. Required.
            'title' => __('Lullebiegga Hero Images', 'meta-box'),
    
            // Post types, accept custom post types as well - DEFAULT is 'post'. Can be array (multiple post types) or string (1 post type). Optional.
            'post_types' => array('post', 'page'),
    
            // Where the meta box appear: normal (default), advanced, side. Optional.
            'context' => 'normal',
    
            // Order of meta box: high (default), low. Optional.
            'priority' => 'high',
    
            // Auto save: true, false (default). Optional.
            'autosave' => true,
    
            // Show this meta box for posts matched below conditions
            'show' => array(
                // With all conditions below, use this logical operator to combine them. Default is 'OR'. Case insensitive. Optional.
                'relation' => 'OR',
    
                // List of page templates (used for page only). Array. Optional.
                'template' => array('template-homepage.php'),
    
            ),
    
            // List of meta fields
            'fields' => array(
                // MAIN HERO
                array(
                    'type' => 'heading',
                    'name' => __( 'Main Image', 'meta-box' ),
                    'id'   => 'fake_id', // Not used but needed for plugin
                ),
                // Image
                array(
                    'name' => __('Image', 'meta-box'),
                    'id' => "{$prefix}main_image",
                    'type' => 'image_advanced',
                    'max_file_uploads' => 1,
                ),
                // Header
                array(
                    'name' => __('Text on image', 'meta-box'),
                    'id' => "{$prefix}main_text",
                    'type' => 'text',
                    'clone' => false,
                ),
                // Button
                array(
                    'name' => __('Button text', 'meta-box'),
                    'id' => "{$prefix}main_button_text",
                    'type' => 'text',
                    'clone' => false,
                ),
                // Button link
                array(
                    'name' => __( 'Button link', 'meta-box' ),
                    'id'   => "{$prefix}main_button_link",
                    'type' => 'text',
                    'clone' => false,
                ),
                // 1ST SUB
                array(
                    'type' => 'heading',
                    'name' => __( 'Secondary Image 1', 'meta-box' ),
                    'id'   => 'fake_id', // Not used but needed for plugin
                ),
                // Image
                array(
                    'name' => __('Image', 'meta-box'),
                    'id' => "{$prefix}sec1_image",
                    'type' => 'image_advanced',
                    'max_file_uploads' => 1,
                ),
                // Button link
                array(
                    'name' => __( 'Image link', 'meta-box' ),
                    'id'   => "{$prefix}sec1_link",
                    'type' => 'text',
                    'clone' => false,
                ),
                // 2ST SUB
                array(
                    'type' => 'heading',
                    'name' => __( 'Secondary Image 2', 'meta-box' ),
                    'id'   => 'fake_id', // Not used but needed for plugin
                ),
                // Image
                array(
                    'name' => __('Image', 'meta-box'),
                    'id' => "{$prefix}sec2_image",
                    'type' => 'image_advanced',
                    'max_file_uploads' => 1,
                ),
                // Button link
                array(
                    'name' => __( 'Image link', 'meta-box' ),
                    'id'   => "{$prefix}sec2_link",
                    'type' => 'text',
                    'clone' => false,
                ),
            ),
        );
        return $meta_boxes;
    }

    functions.php

    // Home page hero area
    function home_page_hero() {
        if (is_front_page()) {
    
            $main_image = reset(rwmb_meta( 'lullebiegga_main_image', 'type=image_advanced'));
            $main_image_url = $main_image['full_url'];
            $main_text = rwmb_meta( 'lullebiegga_main_text', 'type=text');
            $main_button_text = rwmb_meta( 'lullebiegga_main_button_text', 'type=text');
            $main_button_link = rwmb_meta( 'lullebiegga_main_button_link', 'type=text');
    
            $sec1_image = reset(rwmb_meta( 'lullebiegga_sec1_image', 'type=image_advanced'));
            $sec1_image_url = $sec1_image['full_url'];
            $sec1_link = rwmb_meta( 'lullebiegga_sec1_link', 'type=text');
            $sec2_image = reset(rwmb_meta( 'lullebiegga_sec2_image', 'type=image_advanced'));
            $sec2_image_url = $sec2_image['full_url'];
            $sec2_link = rwmb_meta( 'lullebiegga_sec2_link', 'type=text');
    
            echo '<div class="wrap">';
    
            echo '<img src="' . $main_image_url .'">';
            echo '<h1>' . $main_text . '</h1>';
            echo '<a href="' . $main_button_link .'" class="button">' . $main_button_text .'</a>';
    
            echo '<a href="' . $sec1_link .'"><img src="' . $sec1_image_url .'"></a>';
            echo '<a href="' . $sec2_link .'"><img src="' . $sec2_image_url .'"></a>';
    
            echo '</div>';
        }
    }
    add_action( 'woo_main_before', 'home_page_hero');

    I also posted this as an issue on Gihub, where rilwis also asked me for the code so he is also aware of the issue, but hasn’t written me back yet.

    As I’m on a deadline I went on and removed the Meta Box code and added the functionality I needed using customizer, so might not be able to test it further. However as I’ve used Meta Box in almost every project I’ve done it sure would be beneficial to know if the issue can be solved.

Viewing 2 replies - 1 through 2 (of 2 total)