コード例 #1
0
/**
 * 
 * Set the default options in WordPress on activation of the plugin
 * 
 * @since 0.5
 * 
 */
function mdp_plugin_activate()
{
    $type_of_activation = mpd_do_version_log();
    $mdp_default_options = mdp_get_default_options();
    $sites = mpd_wp_get_sites();
    foreach ($sites as $site) {
        $siteid = $site['blog_id'];
        switch_to_blog($siteid);
        if (!($options = get_option('mdp_settings'))) {
            $options = array();
            foreach ($mdp_default_options as $mdp_default_option => $option_value) {
                $options[$mdp_default_option] = $option_value;
            }
            update_option('mdp_settings', $options);
        } else {
            //Add default option for exsisting users with new checkboxes
            $options = get_option('mdp_settings');
            $options['mdp_copy_content_images'] = 'content-image';
            $options['mdp_default_tags_copy'] = 'tags';
            $options['mdp_default_featured_image'] = 'feat';
            $options['restrict_option_setting'] = 'none';
            $options['role_option_setting'] = 'Administrator';
            $options = apply_filters('mpd_activation_options', $options);
            update_option('mdp_settings', $options);
        }
        restore_current_blog();
    }
}
コード例 #2
0
/**
 * @ignore
 */
function mpd_bulk_admin_script()
{
    if (is_multisite()) {
        $defaultoptions = mdp_get_default_options();
        $sites = mpd_wp_get_sites();
        $options = get_option('mdp_settings');
        $post_status = isset($_REQUEST["post_status"]) ? $_REQUEST["post_status"] : null;
        $active_mpd = apply_filters('mpd_is_active', true);
        if (isset($options['add_bulk_settings']) || $defaultoptions['add_bulk_settings'] == 'allow-batch' && !$options) {
            ?>

          <?php 
            if (!$post_status && $active_mpd) {
                ?>

            <script type="text/javascript">

              jQuery(document).ready(function() {

                <?php 
                foreach ($sites as $site) {
                    ?>

                  <?php 
                    $blog_details = get_blog_details($site['blog_id']);
                    ?>
 

                    <?php 
                    if ($site['blog_id'] != get_current_blog_id() && current_user_can_for_blog($site['blog_id'], mpd_get_required_cap())) {
                        ?>
 

                      jQuery('<option>').val("dup-<?php 
                        echo $site['blog_id'];
                        ?>
").text('<?php 
                        _e('Duplicate to ');
                        echo $blog_details->blogname;
                        ?>
').appendTo("select[name='action']");
                      jQuery('<option>').val("dup-<?php 
                        echo $site['blog_id'];
                        ?>
").text('<?php 
                        _e('Duplicate to ');
                        echo $blog_details->blogname;
                        ?>
').appendTo("select[name='action2']");

                    <?php 
                    }
                    ?>
                    
                  <?php 
                }
                ?>

              });
              
            </script>

          <?php 
            }
            ?>

        <?php 
        }
    }
}
コード例 #3
0
/**
 * 
 * This function is used to copy the saved settings to all other sites options table,
 * therefore globalising the MPD settings arcroos all sites.
 * 
 * @since 0.4
 * @return null
 * 
 */
function mpd_globalise_settings()
{
    $options = get_option('mdp_settings');
    $sites = mpd_wp_get_sites();
    foreach ($sites as $site) {
        switch_to_blog($site['blog_id']);
        update_option('mdp_settings', $options);
        restore_current_blog();
    }
}
コード例 #4
0
/**
 *
 * This is the markup to display once the user has selected Question 3 in the Tools admin
 * 
 * @since 0.1
 * 
 */
function mdp_get_site_on_network()
{
    $sites = mpd_wp_get_sites();
    ob_start();
    ?>

	<h3>3. <?php 
    _e('Select the site on this network you want to duplicate to', MPD_DOMAIN);
    ?>
</h3>
	
	<select name="el2" class="el2" style="width:300px;">

	    <option></option>

	    <?php 
    foreach ($sites as $site) {
        ?>

	    	<?php 
        $blog_details = get_blog_details($site['blog_id']);
        ?>

	    		<option value="<?php 
        echo $site['blog_id'];
        ?>
"><?php 
        echo $blog_details->blogname;
        ?>
</option>

	    <?php 
    }
    ?>

	</select> <div class="el2sc spinner-container"><img src="<?php 
    echo plugins_url('../css/select2-spinner.gif', __FILE__);
    ?>
"/></div>

	
	<?php 
    die;
}
コード例 #5
0
/**
 * 
 * This function generates the markup for the MPD Metabox
 * 
 * @since 0.4
 * @return null
 * 
 */
function mpd_publish_top_right()
{
    $post_statuses = get_post_statuses();
    $sites = mpd_wp_get_sites();
    ?>


    <div id="clone_multisite_box">

        <div class="metabox">

            <?php 
    do_action('mpd_before_metabox_content');
    ?>

            <p><?php 
    _e('Duplicated post status', MPD_DOMAIN);
    ?>
:

            <select id="mpd-new-status" name="mpd-new-status">
             <?php 
    foreach ($post_statuses as $post_status_key => $post_status_value) {
        ?>
                      <option value="<?php 
        echo $post_status_key;
        ?>
" <?php 
        echo $post_status_key == 'draft' ? 'selected' : '';
        ?>
><?php 
        echo $post_status_value;
        ?>
</option>
               <?php 
    }
    ?>
            </select>
               
            </p>

            <p><?php 
    _e('Title prefix for new post', MPD_DOMAIN);
    ?>
:
            
                <input type="text" name="mpd-prefix" value="<?php 
    echo mpd_get_prefix();
    ?>
"/>
                
            </p>

            <p><?php 
    _e('Site(s) you want duplicate to', MPD_DOMAIN);
    ?>
:

                <ul id="mpd_blogschecklist" data-wp-lists="list:category" class="mpd_blogschecklist" style="padding-left: 5px;margin-top: -8px;">
                    
                    <?php 
    foreach ($sites as $site) {
        ?>

                        <?php 
        if (current_user_can_for_blog($site['blog_id'], mpd_get_required_cap())) {
            ?>

                            <?php 
            $blog_details = get_blog_details($site['blog_id']);
            ?>
                            
                                <li id="mpd_blog_<?php 
            echo $site['blog_id'];
            ?>
" class="mpd-site-checkbox">

                                    <label class="selectit">
                                        <input value="<?php 
            echo $site['blog_id'];
            ?>
" type="checkbox" name="mpd_blogs[]" id="in_blog_<?php 
            echo $site['blog_id'];
            ?>
"> <?php 
            echo $blog_details->blogname;
            ?>

                                    </label>

                                </li>
                            
                        <?php 
        }
        ?>

                    <?php 
    }
    ?>

                </ul>
            </p>

            <p>
                <em>
                    <?php 
    _e('If you have checked any of the checkboxes above then this post will be duplicated on save.', MPD_DOMAIN);
    ?>
                </em>
            </p>

            <p style="font-size: 80%; text-align:right; font-style:italic">

                <a target="_blank" href="<?php 
    echo esc_url(get_admin_url(null, 'options-general.php?page=multisite_post_duplicator'));
    ?>
"><?php 
    _e('Settings', MPD_DOMAIN);
    ?>
</a>
                
            </p>

            <?php 
    do_action('mpd_after_metabox_content');
    ?>
            
        </div>

    </div>

<?php 
}
コード例 #6
0
/**
 * @ignore
 */
function master_site_settings_render()
{
    $options = get_option('mdp_settings');
    $sites = mpd_wp_get_sites();
    if ($options = get_option('mdp_settings')) {
        $mdp_restrict_master_label_value = $options['master_site_setting'];
    }
    ?>
  
  <select name="mdp_settings[master_site_setting]" class="mpd-master-site" style="width:300px;">

		<option></option>
		<?php 
    foreach ($sites as $site) {
        ?>
			<?php 
        $blog_details = get_blog_details($site['blog_id']);
        ?>

			<option value="<?php 
        echo $site['blog_id'];
        ?>
" <?php 
        selected($mdp_restrict_master_label_value, $site['blog_id']);
        ?>
>

			    <?php 
        echo $blog_details->blogname;
        ?>

			</option>

		<?php 
    }
    ?>
  		
  </select>

  <p class="mpdtip"><?php 
    _e('If you want to only allow duplication to take place from one site then select it here.', MPD_DOMAIN);
    ?>
</p>
  <?php 
}