示例#1
0
/**
 * Write the minified Dynamik stylesheet file.
 *
 * @since 1.0
 */
function dynamik_write_minified_styles()
{
    $css_prefix = '/* ' . __('This file is auto-generated from the Dynamik Options settings and custom.css content (if file exists). Any direct edits here will be lost if the settings page is saved', 'dynamik') . ' */' . "\n";
    $css = dynamik_build_design_styles();
    if (file_exists(dynamik_get_custom_stylesheet_path())) {
        $css .= file_get_contents(dynamik_get_custom_stylesheet_path());
    }
    $css = $css_prefix . dynamik_minify_css($css);
    $door = @fopen(dynamik_get_minified_stylesheet_path(), 'w');
    @fwrite($door, $css);
    @fclose($door);
    if (substr(sprintf('%o', fileperms(dynamik_get_minified_stylesheet_path())), -4) != '0644' && substr(sprintf('%o', fileperms(dynamik_get_minified_stylesheet_path())), -4) != '0666') {
        @chmod(dynamik_get_minified_stylesheet_path(), 0644);
    }
}
示例#2
0
/**
 * Hook all Custom Hook Boxes that are set to be hooked into a Hook Location.
 *
 * @since 1.0
 */
function dynamik_build_hook_boxes()
{
    $dynamik_conditionals = get_option('dynamik_gen_custom_conditionals');
    $dynamik_hooks = get_option('dynamik_gen_custom_hook_boxes');
    $dynamik_hook_boxes = '<?php' . "\n" . '/**' . "\n" . ' * Build and Hook-In Custom Hook Boxes.' . "\n" . ' */' . "\n";
    $single_quote = "'";
    if (!empty($dynamik_hooks)) {
        foreach ($dynamik_hooks as $dynamik_hook => $hook_bits) {
            $dynamik_conditional_tags = '';
            $dynamik_hook_conditional = explode('|', $hook_bits['conditionals']);
            foreach ($dynamik_conditionals as $dynamik_conditional => $conditional_bits) {
                if (in_array($conditional_bits['conditional_id'], $dynamik_hook_conditional)) {
                    $dynamik_conditional_tags .= $conditional_bits['conditional_tag'] . ' || ';
                }
            }
            $dynamik_hook_boxes .= '
/* Name: ' . $hook_bits['hook_name'] . ' */
';
            if ($hook_bits['status'] == 'sht' || $hook_bits['status'] == 'bth') {
                $dynamik_hook_boxes .= '
add_shortcode( ' . $single_quote . $hook_bits['hook_name'] . $single_quote . ', ' . $single_quote . 'dynamik_' . $hook_bits['hook_name'] . '_hook_box_shortcode' . $single_quote . ' );
function dynamik_' . $hook_bits['hook_name'] . '_hook_box_shortcode() {';
                $dynamik_hook_boxes .= '
	ob_start();
	dynamik_' . $hook_bits['hook_name'] . '_hook_box_content();
	$output_string = ob_get_contents();
	ob_end_clean();
	return $output_string;
}
';
            }
            if ($hook_bits['status'] == 'hkd' || $hook_bits['status'] == 'bth') {
                $dynamik_hook_boxes .= '
add_action( ' . $single_quote . $hook_bits['hook_location'] . $single_quote . ', ' . $single_quote . 'dynamik_' . $hook_bits['hook_name'] . '_hook_box' . $single_quote . ', ' . $hook_bits['priority'] . ' );
function dynamik_' . $hook_bits['hook_name'] . '_hook_box() {';
                $dynamik_hook_boxes .= '
	dynamik_' . $hook_bits['hook_name'] . '_hook_box_content();
}
';
            }
            if ($hook_bits['status'] == 'css') {
                $dynamik_hook_boxes .= '
add_action( ' . $single_quote . 'wp_head' . $single_quote . ', ' . $single_quote . 'dynamik_' . $hook_bits['hook_name'] . '_hook_box' . $single_quote . ', ' . $hook_bits['priority'] . ' );
function dynamik_' . $hook_bits['hook_name'] . '_hook_box() {';
                $dynamik_hook_boxes .= '
	dynamik_' . $hook_bits['hook_name'] . '_hook_box_content();
}
';
            }
            $dynamik_hook_boxes .= '
function dynamik_' . $hook_bits['hook_name'] . '_hook_box_content() {';
            if (!empty($hook_bits['conditionals'])) {
                $dynamik_hook_boxes .= '
	if ( ' . substr($dynamik_conditional_tags, 0, -4) . ' ) { ?>
';
            } else {
                $dynamik_hook_boxes .= ' ?>
';
            }
            if ($hook_bits['status'] == 'css') {
                $dynamik_hook_boxes .= '<!-- "' . $hook_bits['hook_name'] . '" hook box styles --><style type="text/css">' . dynamik_minify_css($hook_bits['hook_textarea']) . '</style><!-- end "' . $hook_bits['hook_name'] . '" hook box styles -->';
            } else {
                $dynamik_hook_boxes .= $hook_bits['hook_textarea'];
            }
            if (!empty($hook_bits['conditionals'])) {
                $dynamik_hook_boxes .= '
	<?php } else {
		return false;
	}';
            } else {
                $dynamik_hook_boxes .= '
<?php';
            }
            $dynamik_hook_boxes .= '
}
';
        }
    }
    return $dynamik_hook_boxes;
}